Use newly-sharded ECDH tests. Also remove some transition step for a recent format change. Together, this removes the curve hacks in the converter, which can now be purely syntactic. The RSA ones are still a bit all over the place in terms of sharded vs combined, so leaving that alone for now. Change-Id: I721d6b0de388a53a39543725e366dc5b52e83561 Reviewed-on: https://boringssl-review.googlesource.com/30845 Reviewed-by: Adam Langley <agl@google.com>
diff --git a/crypto/ecdh_extra/ecdh_test.cc b/crypto/ecdh_extra/ecdh_test.cc index bd4586f..52e49f1 100644 --- a/crypto/ecdh_extra/ecdh_test.cc +++ b/crypto/ecdh_extra/ecdh_test.cc
@@ -126,60 +126,76 @@ }); } -TEST(ECDHTest, Wycheproof) { - FileTestGTest("third_party/wycheproof_testvectors/ecdh_test.txt", - [](FileTest *t) { - t->IgnoreInstruction("curve"); // This is redundant with the per-test one. - t->IgnoreInstruction("encoding"); - bssl::UniquePtr<EC_GROUP> group = GetWycheproofCurve(t, "curve", false); - ASSERT_TRUE(group); - bssl::UniquePtr<BIGNUM> priv_key = GetWycheproofBIGNUM(t, "private", false); - ASSERT_TRUE(priv_key); - std::vector<uint8_t> peer_spki; - ASSERT_TRUE(t->GetBytes(&peer_spki, "public")); - WycheproofResult result; - ASSERT_TRUE(GetWycheproofResult(t, &result)); - std::vector<uint8_t> shared; - ASSERT_TRUE(t->GetBytes(&shared, "shared")); +static void RunWycheproofTest(FileTest *t) { + t->IgnoreInstruction("encoding"); - // Wycheproof stores the peer key in an SPKI to mimic a Java API mistake. - // This is non-standard and error-prone. - CBS cbs; - CBS_init(&cbs, peer_spki.data(), peer_spki.size()); - bssl::UniquePtr<EVP_PKEY> peer_evp(EVP_parse_public_key(&cbs)); - if (!peer_evp) { - // Note some of Wycheproof's "acceptable" entries are unsupported by - // BoringSSL because they test named curves (explicitly forbidden by RFC - // 5480), while others are supported because they used compressed - // coordinates. If the peer key fails to parse, we consider it to match - // "acceptable", but if the resulting shared secret matches below, it too - // matches "acceptable". - // - // TODO(davidben): Use the flags field to disambiguate these. Possibly - // first get the Wycheproof folks to use flags more consistently. - EXPECT_NE(WycheproofResult::kValid, result); - return; - } - EC_KEY *peer_ec = EVP_PKEY_get0_EC_KEY(peer_evp.get()); - ASSERT_TRUE(peer_ec); + bssl::UniquePtr<EC_GROUP> group = GetWycheproofCurve(t, "curve", true); + ASSERT_TRUE(group); + bssl::UniquePtr<BIGNUM> priv_key = GetWycheproofBIGNUM(t, "private", false); + ASSERT_TRUE(priv_key); + std::vector<uint8_t> peer_spki; + ASSERT_TRUE(t->GetBytes(&peer_spki, "public")); + WycheproofResult result; + ASSERT_TRUE(GetWycheproofResult(t, &result)); + std::vector<uint8_t> shared; + ASSERT_TRUE(t->GetBytes(&shared, "shared")); - bssl::UniquePtr<EC_KEY> key(EC_KEY_new()); - ASSERT_TRUE(key); - ASSERT_TRUE(EC_KEY_set_group(key.get(), group.get())); - ASSERT_TRUE(EC_KEY_set_private_key(key.get(), priv_key.get())); + // Wycheproof stores the peer key in an SPKI to mimic a Java API mistake. + // This is non-standard and error-prone. + CBS cbs; + CBS_init(&cbs, peer_spki.data(), peer_spki.size()); + bssl::UniquePtr<EVP_PKEY> peer_evp(EVP_parse_public_key(&cbs)); + if (!peer_evp) { + // Note some of Wycheproof's "acceptable" entries are unsupported by + // BoringSSL because they test explicit curves (forbidden by RFC 5480), + // while others are supported because they used compressed coordinates. If + // the peer key fails to parse, we consider it to match "acceptable", but if + // the resulting shared secret matches below, it too matches "acceptable". + // + // TODO(davidben): Use the flags field to disambiguate these. Possibly + // first get the Wycheproof folks to use flags more consistently. + EXPECT_NE(WycheproofResult::kValid, result); + return; + } + EC_KEY *peer_ec = EVP_PKEY_get0_EC_KEY(peer_evp.get()); + ASSERT_TRUE(peer_ec); - std::vector<uint8_t> actual((EC_GROUP_get_degree(group.get()) + 7) / 8); - int ret = - ECDH_compute_key(actual.data(), actual.size(), - EC_KEY_get0_public_key(peer_ec), key.get(), nullptr); - if (result == WycheproofResult::kInvalid) { - EXPECT_EQ(-1, ret); - } else { - EXPECT_EQ(static_cast<int>(actual.size()), ret); - EXPECT_EQ(Bytes(shared), Bytes(actual.data(), static_cast<size_t>(ret))); - } - }); + bssl::UniquePtr<EC_KEY> key(EC_KEY_new()); + ASSERT_TRUE(key); + ASSERT_TRUE(EC_KEY_set_group(key.get(), group.get())); + ASSERT_TRUE(EC_KEY_set_private_key(key.get(), priv_key.get())); + + std::vector<uint8_t> actual((EC_GROUP_get_degree(group.get()) + 7) / 8); + int ret = + ECDH_compute_key(actual.data(), actual.size(), + EC_KEY_get0_public_key(peer_ec), key.get(), nullptr); + if (result == WycheproofResult::kInvalid) { + EXPECT_EQ(-1, ret); + } else { + EXPECT_EQ(static_cast<int>(actual.size()), ret); + EXPECT_EQ(Bytes(shared), Bytes(actual.data(), static_cast<size_t>(ret))); + } +} + +TEST(ECDHTest, WycheproofP224) { + FileTestGTest("third_party/wycheproof_testvectors/ecdh_secp224r1_test.txt", + RunWycheproofTest); +} + +TEST(ECDHTest, WycheproofP256) { + FileTestGTest("third_party/wycheproof_testvectors/ecdh_secp256r1_test.txt", + RunWycheproofTest); +} + +TEST(ECDHTest, WycheproofP384) { + FileTestGTest("third_party/wycheproof_testvectors/ecdh_secp384r1_test.txt", + RunWycheproofTest); +} + +TEST(ECDHTest, WycheproofP512) { + FileTestGTest("third_party/wycheproof_testvectors/ecdh_secp521r1_test.txt", + RunWycheproofTest); } // MakeCustomGroup returns an |EC_GROUP| containing a non-standard group. (P-256
diff --git a/sources.cmake b/sources.cmake index 94edcb3..9c757ec 100644 --- a/sources.cmake +++ b/sources.cmake
@@ -67,7 +67,10 @@ third_party/wycheproof_testvectors/aes_gcm_test.txt third_party/wycheproof_testvectors/chacha20_poly1305_test.txt third_party/wycheproof_testvectors/dsa_test.txt - third_party/wycheproof_testvectors/ecdh_test.txt + third_party/wycheproof_testvectors/ecdh_secp224r1_test.txt + third_party/wycheproof_testvectors/ecdh_secp256r1_test.txt + third_party/wycheproof_testvectors/ecdh_secp384r1_test.txt + third_party/wycheproof_testvectors/ecdh_secp521r1_test.txt third_party/wycheproof_testvectors/ecdsa_secp224r1_sha224_test.txt third_party/wycheproof_testvectors/ecdsa_secp224r1_sha256_test.txt third_party/wycheproof_testvectors/ecdsa_secp256r1_sha256_test.txt
diff --git a/third_party/wycheproof_testvectors/ecdh_secp224r1_test.txt b/third_party/wycheproof_testvectors/ecdh_secp224r1_test.txt new file mode 100644 index 0000000..e4e9857 --- /dev/null +++ b/third_party/wycheproof_testvectors/ecdh_secp224r1_test.txt
@@ -0,0 +1,2988 @@ +# Imported from Wycheproof's ecdh_secp224r1_test.json. +# This file is generated by convert_wycheproof.go. Do not edit by hand. +# +# Algorithm: ECDH +# Generator version: 0.4.12 + +[curve = secp224r1] +[encoding = asn] + +# tcId = 1 +# normal case +private = 565577a49415ca761a0322ad54e4ad0ae7625174baf372c2816f5328 +public = 304e301006072a8648ce3d020106052b81040021033a00047d8ac211e1228eb094e285a957d9912e93deee433ed777440ae9fc719b01d050dfbe653e72f39491be87fb1a2742daa6e0a2aada98bb1aca +result = valid +shared = b8ecdb552d39228ee332bafe4886dbff272f7109edf933bc7542bd4f + +# tcId = 2 +# compressed public key +private = 565577a49415ca761a0322ad54e4ad0ae7625174baf372c2816f5328 +public = 3032301006072a8648ce3d020106052b81040021031e00027d8ac211e1228eb094e285a957d9912e93deee433ed777440ae9fc71 +result = acceptable +shared = b8ecdb552d39228ee332bafe4886dbff272f7109edf933bc7542bd4f +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 3 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004e73a6ca72f3a2fae6e0a01a0ed03bfa3058b04576942eaf063095e62ca16fd31fa0f38eeb592cbeea1147751fdd2a5b6cc0ead404467a5b6 +result = valid +shared = 00000000000000000000000000000000000000000000000000000003 + +# tcId = 4 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a00045763fa2ae16367ad23d471cc9a52466f0d81d864e5640cefe384114594d9fecfbed4f254505ac8b41d2532055a07f0241c4818b552cbb636 +result = valid +shared = 00000000000000000000000100000000000000000000000000000001 + +# tcId = 5 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004142c1fd80fa2121a59aa898144084ec033f7a56a34eee0b499e29ae51c6d8c1bbb1ef2a76d565899fe44ffc1207d530d7f598fb77f4bb76b +result = valid +shared = 00000000000000ffffffffffffff0000000000000100000000000000 + +# tcId = 6 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004ed6f793e10c80d12d871cf8988399c4898a9bf9ffd8f27399f63de25f0051cdf4eec7f368f922cfcd948893ceca0c92e540cc4367a99a66a +result = valid +shared = 00000000ffffffffffffffff00000000000000010000000000000000 + +# tcId = 7 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a000408fcfc1a63c82860be12e4137433dfc40be9acdd245f9a8c4e56be61a385fc09f808383383f4b1d0d5365b6e5dcfacdc19bc7bcfed221274 +result = valid +shared = 0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff + +# tcId = 8 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004d883ed77f1861e8712800d31df67888fe39f150c79a27aa88caeda6b180f3f623e2ff3ab5370cf8179165b085af3dd4502850c0104caed9a +result = valid +shared = 0003fffffff00000003fffffff00000003fffffff000000040000000 + +# tcId = 9 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a00042b8b279b85ee3f3d2c0abeb36fdfc5aad6157d652d26489381a32cd73224bd757ef794acc92b0b3b9e7990618bb343a9a09bdb9d3616eff6 +result = valid +shared = 01fffffffc00000007fffffff00000001fffffffc000000080000001 + +# tcId = 10 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a00048bd5f03391eeeae1744e8fc53d314efffafa4d3fa4f1b95c3388a9cd7c86358b273119c537133eb55e79c6ac510b10980b379b919ccf2e2f +result = valid +shared = 0a15c112ff784b1445e889f955be7e3ffdf451a2c0e76ab5cb32cf41 + +# tcId = 11 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004ce9631b6a16227778625c8e5421ae083cdd913abefde01dbe69f6c2b95386aff2b483b2c47151cfaabfd000614c683ce2e1778221ae42c1b +result = valid +shared = 62989eaaa26a16f07330c3c51e0a4631fd016bfcede26552816aee39 + +# tcId = 12 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a00041f441c98eda956a6a7fdbfd8d21910860ab59d16c3e52f8e7fad6ca5df61a55fc508fc0499c55492f1e87bb2faa0cb4170b79f3a85ec2f3d +result = valid +shared = 661ac958c0febbc718ccf39cefc6b66c4231fbb9a76f35228a3bf5c3 + +# tcId = 13 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004be74583cb9d3a05ae54923624e478a329a697d842dfae33141c844d7d9ba4fc96e0fe716ac0542e87368662fc2f0cb9b0ae57936ddec7190 +result = valid +shared = 6d7e41821abe1094d430237923d2a50de31768ab51b12dce8a09e34c + +# tcId = 14 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004a281ad992b363597ac93ff0de8ab1f7e51a6672dcbb58f9d739ba430ce0192874038daefc3130eec65811c7255da70fea65c1003f6892faa +result = valid +shared = 7fffffffffffffffffffffffffffffffffffffffffffffffffffffff + +# tcId = 15 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004be3e22133f51203f631b81dde8c020cdea5daa1f99cfc05c88fad2dc0f243798d6e72d1de9e3cdca4144e0a6c0f2a584d07589006972c197 +result = valid +shared = fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0008001 + +# tcId = 16 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004af14547c20afbd91bfe64ea03d45a76a71241f23520ef897ff91eff1b54ca6ca8c25fd73852ec6654617434eff7f0225684d4dea7a4f8a97 +result = valid +shared = ffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff + +# tcId = 17 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004b1e484925018729926acda56ff3e2f6c1e7e8f162b178d8e8afb45564fceaa6da5d998fe26b6b26a055169063a5ab6908852ca8b54e2de6c +result = valid +shared = fffff0000007fffffe000000ffffffc000001ffffff8000003ffffff + +# tcId = 18 +# edge case for shared secret +private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 +public = 304e301006072a8648ce3d020106052b81040021033a0004937eb09fb145c8829cb7df20a4cbeed396791373de277871d6c5f9cc3b5b4fd56464a71fc4a2a6af3bd251952bffa829489e68a8d06f96b6 +result = valid +shared = ffffffff00000000ffffffff00000000ffffffff00000000ffffffff + +# tcId = 19 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a0004000000000000000000000000000000000000000000000000000000037cac269c67bd55ea14efff4eadefe5e74978514af14c88fab46ec046 +result = valid +shared = 3fa0b9ff70b884f9f57bb84f7a9532d93f6ba803f89dd8ff008177d7 + +# tcId = 20 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a0004000000000000000000000001000000000000000000000000000000012ea2f4917bdfdb008306cc10a18e2557633ba861001829dcbfb96fba +result = valid +shared = be1ded8cb7ff8a585181f96d681e31b332fe27dcae922dca2310300d + +# tcId = 21 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a000400000000000000ffffffffffffff000000000000010000000000000073ca5f8f104997a2399e0c7f25e72a75ec29fc4542533d3fea89a33a +result = valid +shared = a2e86a260e13515918a0cafdd87855f231b5624c560f976159e06a75 + +# tcId = 22 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a000400000000ffffffffffffffff000000000000000100000000000000006fe6805f59b19b0dd389452a1d4a420bfeb6c369cf6fed5b12e6e654 +result = valid +shared = 31ef7c8d10404a0046994f313a70574b027e87f9028eca242c1b5bf5 + +# tcId = 23 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a00040000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff77c5cfa4e2c384938d48bd8dd98f54c86b279f1df8c0a1f6692439c9 +result = valid +shared = d1976a8ef5f54f24f5a269ad504fdca849fc9c28587ba294ef267396 + +# tcId = 24 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a00040003fffffff00000003fffffff00000003fffffff00000004000000001f0828136016bb97445461bc59f2175d8d23557d6b9381f26136e3d +result = valid +shared = ce7890d108ddb2e5474e6417fcf7a9f2b3bd018816062f4835260dc8 + +# tcId = 25 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a000401fffffffc00000007fffffff00000001fffffffc0000000800000012d8acca6f199d4a94b933ba1aa713a7debde8ac57b928f596ae66a66 +result = valid +shared = 30b6ff6e8051dae51e4fe34b2d9a0b1879153e007eb0b5bdf1791a9c + +# tcId = 26 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a00040a15c112ff784b1445e889f955be7e3ffdf451a2c0e76ab5cb32cf413d4df973c563c6decdd435e4f864557e4c273096d9941ca4260a266e +result = valid +shared = 77ec668a00f72d85aa527624abb16c039fe490d17dd6c455a1ed7fd8 + +# tcId = 27 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a000462989eaaa26a16f07330c3c51e0a4631fd016bfcede26552816aee39389ee9436d616cab90032931aa7fbbfcfc13309f61e2423cc8dab93c +result = valid +shared = a3f432f6aba9a92f49a5ea64ffe7059a9d9b487a0b5223ddc988208b + +# tcId = 28 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a0004661ac958c0febbc718ccf39cefc6b66c4231fbb9a76f35228a3bf5c3103b8040e3cb41966fc64a68cacb0c14053f87d27e8ed7bf2d7fe51b +result = valid +shared = 1530fd9caf03737af34a4ba716b558cbecbc35d18402535a0a142313 + +# tcId = 29 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a00046d7e41821abe1094d430237923d2a50de31768ab51b12dce8a09e34c276cf273d75d367820dd556182def0957af0a314f48fed227c298dc0 +result = valid +shared = cfc39ccacb94ad0e0552b2e47112f60fbbe7ae0dc32230b9273dd210 + +# tcId = 30 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a00047fffffffffffffffffffffffffffffffffffffffffffffffffffffff7d8dbca36c56bcaae92e3475f799294f30768038e816a7d5f7f07d77 +result = valid +shared = 73bd63bd384a0faafb75cfed3e95d3892cbacf0db10f282c3b644771 + +# tcId = 31 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a0004fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc000800174f1ff5ea7fbc72b92f61e06556c26bab84c0b082dd6400ca1c1eb6d +result = valid +shared = 85b079c62e1f5b0fd6841dfa16026e15b641f65e13a14042567166bb + +# tcId = 32 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a0004ffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0126fdd5fccd0b5aa7fd5bb5b1308584b30556248cec80208a2fe962 +result = valid +shared = 8a834ff40e3fc9f9d412a481e18537ea799536c5520c6c7baaf12166 + +# tcId = 33 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a0004fffff0000007fffffe000000ffffffc000001ffffff8000003ffffff20cfa23077acc9fbcb71339c65880cd0b966b8a9497e65abed17f0b5 +result = valid +shared = a0887269766e6efcbc81d2b38f2d4638663f12377468a23421044188 + +# tcId = 34 +# edge cases for ephemeral key +private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 +public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffff00000000ffffffff00000000ffffffff00000000ffffffff1c05ac2d4f10b69877c3243d51f887277b7bf735c326ab2f0d70da8c +result = valid +shared = c65d1911bc076a74588d8793ce7a0dcabf5793460cd2ebb02754a1be + +# tcId = 35 +# edge case private key +private = 3 +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = e71f2157bfe37697ea5193d4732dcc6e5412fa9d38387eacd391c1c6 + +# tcId = 36 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffff +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = fa2664717c7fa0161ec2c669b2c0986cdc20456a6e5406302bb53c77 + +# tcId = 37 +# edge case private key +private = 1000000000000000000000000000000000000000000000000000000 +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = af6e5ad34497bae0745f53ad78ce8b285d79f400d5c6e6a071f8e6bd + +# tcId = 38 +# edge case private key +private = 7fffffffffffffffffffffffffffffffffffffffffffffffffffffff +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = 12fd302ff8c13c55a9c111f8bb6b0a13ecf88299c0ae3032ce2bcaff + +# tcId = 39 +# edge case private key +private = 080000000000000000000000000000000000000000000000000000000 +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = 73f1a395b842f1a6752ae417e2c3dc90cafc4476d1d861b7e68ad030 + +# tcId = 40 +# edge case private key +private = 0ffffffffffffffffffffffffffff16a2e0b8f03d13dd29455c5c2a3d +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = b329c20ddb7c78ee4e622bb23a984c0d273ba34b6269f3d9e8f89f8e + +# tcId = 41 +# edge case private key +private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13cd29455c5c2a3d +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = 6f48345209b290ffc5abbe754a201479e5d667a209468080d06197b4 + +# tcId = 42 +# edge case private key +private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13d529455c5c2a3d +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = 9f6e30c1c9dad42a153aacd4b49a8e5c721d085cd07b5d5aec244fc1 + +# tcId = 43 +# edge case private key +private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29445c5c2a3d +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = 8cadfb19a80949e61bd5b829ad0e76d18a5bb2eeb9ed7fe2b901cecd + +# tcId = 44 +# edge case private key +private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c29b7 +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = 475fd96e0eb8cb8f100a5d7fe043a7a6851d1d611da2643a3c6ae708 +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 45 +# edge case private key +private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a37 +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = 41ef931d669d1f57d8bb95a01a92321da74be8c6cbc3bbe0b2e73ebd +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 46 +# edge case private key +private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3a +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = e71f2157bfe37697ea5193d4732dcc6e5412fa9d38387eacd391c1c6 + +# tcId = 47 +# edge case private key +private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3b +public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 +result = valid +shared = 11ff15126411299cbd49e2b7542e69e91ef132e2551a16ecfebb23a3 +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 48 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a00040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 49 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a00040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 50 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a000400000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000000 +result = invalid +shared = + +# tcId = 51 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a000400000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000001 +result = invalid +shared = + +# tcId = 52 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a00040000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 53 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a00040000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 54 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a000400000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffff000000000000000000000000 +result = invalid +shared = + +# tcId = 55 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a000400000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffff000000000000000000000001 +result = invalid +shared = + +# tcId = 56 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 57 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 58 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000000 +result = invalid +shared = + +# tcId = 59 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000001 +result = invalid +shared = + +# tcId = 60 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff00000000000000000000000100000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 61 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff00000000000000000000000100000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 62 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff000000000000000000000001ffffffffffffffffffffffffffffffff000000000000000000000000 +result = invalid +shared = + +# tcId = 63 +# point is not on curve +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff000000000000000000000001ffffffffffffffffffffffffffffffff000000000000000000000001 +result = invalid +shared = + +# tcId = 64 +private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 +public = 3015301006072a8648ce3d020106052b81040021030100 +result = invalid +shared = + +# tcId = 65 +# public point not on curve +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 304e301006072a8648ce3d020106052b81040021033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5d +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 66 +# public point = (0,0) +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 304e301006072a8648ce3d020106052b81040021033a00040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 67 +# order = -26959946667150639794667015087019625940457807714424391721682722368061 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021dff0000000000000000000000000000e95d1f470fc1ec22d6baa3a3d5c3020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = invalid +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 68 +# order = 0 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 3081f73081b806072a8648ce3d02013081ac020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34020100020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = invalid +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 69 +# order = 1 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 3081f73081b806072a8648ce3d02013081ac020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34020101020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = acceptable +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 70 +# order = 6277101735386680763835789423207665314073163949517624387909 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 3082010f3081d006072a8648ce3d02013081c4020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021900ffffffffffffffffffffffffffff16a2e0b8f03e13dd2945020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = acceptable +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 71 +# generator = (0,0) +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb40439040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = acceptable +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 72 +# generator not on curve +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e36021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = acceptable +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 73 +# cofactor = -1 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d0201ff033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = invalid +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 74 +# cofactor = 0 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020100033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = invalid +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 75 +# cofactor = 2 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020102033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = acceptable +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 76 +# cofactor = +# 26959946667150639794667015087019625940457807714424391721682722368061 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 3082012f3081f006072a8648ce3d02013081e4020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = invalid +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 77 +# cofactor = None +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 308201103081d106072a8648ce3d02013081c5020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = acceptable +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 78 +# modified prime +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00c123da0a46a971da9468161e61a5c71a02e6c9bdb3392f4016fb457b303c041c3edc25f5b9568e256b97e9e19e5a38e4fd1936424cc6d0bfe904ba83041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904000000000000000000285145f31ae4d40000000000000000000003387edad63d1a600740ce66b6f04d67ed06ea1a75c16294336ed05b3fa3021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020101033a0004000000000000000000285145f31ae4d40000000000000000000003387edad63d1a600740ce66b6f04d67ed06ea1a75c16294336ed05b3fa3 +result = invalid +shared = 3de0a5036fcde544c72cbe33cedb8709549bc3b6a4d750ee0de4c80d +# The modulus of the public key has been modified. The public point of the +# public key has been chosen so that it is both a point on both the curve of the +# modified public key and the private key. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 79 +# using secp256r1 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004cbf6606595a3ee50f9fceaa2798c2740c82540516b4e5a7d361ff24e9dd15364e5408b2e679f9d5310d1f6893b36ce16b4a507509175fcb52aea53b781556b39 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 80 +# using secp256k1 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 3056301006072a8648ce3d020106052b8104000a03420004a1263e75b87ae0937060ff1472f330ee55cdf8f4329d6284a9ebfbcc856c11684225e72cbebff41e54fb6f00e11afe53a17937bedbf2df787f8ef9584f775838 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 81 +# a = 0 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 3081f83081b906072a8648ce3d02013081ad020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff0000000000000000000000013021040100041cd0d5e347a38ce5b6e1f47edddd8a223bca45d2015de76ec835a4df57043904a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b +result = acceptable +shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 82 +# public key of order 3 +private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 +public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041ce8f32429d997935dc5e2e6621cc0c130464d38c8cdf26454bb36080d041cdcc54f9c4dfd9b10d8c2cc735751d55b0ab7a7765cf9d49483bf6d8804390481020a9259fe8552f4aa794669b24033bc9283bc57715cc013e8ddc612cd1b9eb05e696610a5e8cae07a522a74eff150eb553adf98c01478021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020101033a000481020a9259fe8552f4aa794669b24033bc9283bc57715cc013e8ddc6ed32e4614fa19699ef5a17351f85add48b100eaf14aac520673feb89 +result = invalid +shared = 19845b25666b143d3f0f070781c1c595c66b9e854106a56b7db774cb +# The vector contains a weak public key. The curve is not a named curve, the +# public key point has order 3 and has been chosen to be on the same curve as +# the private key. This test vector is used to check ECC implementations for +# missing steps in the verification of the public key. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 83 +# Public key uses wrong curve: secp256r1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ea36cf70fab75684eabe6569ce623db0deaa8c95f61c8be50b8b9f3eb7d4b9ec48d9e4814f4cb1c286589eaaa990d3f3238b2d6d6be964abfad964824b653376 +result = invalid +shared = + +# tcId = 84 +# Public key uses wrong curve: secp384r1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 3076301006072a8648ce3d020106052b81040022036200044b2470ad3d13269c10a17d222ebdffbd61fb04488db1b1d7caef8d4988b7bb8ba6d81857a05b255232b9e37a30e328bb9d9c42d86096f2bcee3d258cfe208d2fd03cbd5ccc6a3bb8ce4b0efa5b059b4afbd0377aa6e274721a57efe8ee85d86a +result = invalid +shared = + +# tcId = 85 +# Public key uses wrong curve: secp521r1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 30819b301006072a8648ce3d020106052b810400230381860004012841a2260f0f1f424865fef275374779bf0355720223f8ec6a9ba767b1603b492f58a6bba1705d882257bc6be1935de4411c5f1fdad44ec65ba8b97ce0e73e1ac90006937832a602147e37c1a42ca2a63629ffc9a35b31bfacb38c6242b42916125f7446b45c718f797259bc3011cb71e868560b331cf7d01139a0643443f9fd7306c1 +result = invalid +shared = + +# tcId = 86 +# Public key uses wrong curve: secp256k1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 3056301006072a8648ce3d020106052b8104000a03420004c2199fecf75648c0e952dff143821fa4012b28f90435ce6ee54653687f969a76092a3844e17d478a594f43b28cc10a5c553b4f64906121031c3a79299c70dbd6 +result = invalid +shared = + +# tcId = 87 +# Public key uses wrong curve: brainpoolP224r1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 3052301406072a8648ce3d020106092b2403030208010105033a00046caa3d6d86f792df7b29e41eb4203150f60f4fca10f57d0b2454abfb201f9f7e6dcbb92bdcfb9240dc86bcaeaf157c77bca22b2ec86ee8d6 +result = invalid +shared = + +# tcId = 88 +# Public key uses wrong curve: brainpoolP256r1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 305a301406072a8648ce3d020106092b2403030208010107034200042750180012c3ba7489517d428e4826784e50b50ac42ef7991c61a396c03a52da5e74908ae8a89627a7c15e554b105b0ebaeebcfed10e3ea60223d0a8bc3b36ab +result = invalid +shared = + +# tcId = 89 +# Public key uses wrong curve: brainpoolP320r1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 306a301406072a8648ce3d020106092b2403030208010109035200045b523d3a8f20f6a569c6951e0b8de48d89e7549a184e8506820421c3e404473692cd248d7480843b911d87a87e401112fce0d3d2c36978cf6dd7f1d93bfaebe0827d4bf4006006d3202e842126fe1b68 +result = invalid +shared = + +# tcId = 90 +# Public key uses wrong curve: brainpoolP384r1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 307a301406072a8648ce3d020106092b240303020801010b03620004449607c76c6dc7334c269a0ebab5beec83b6c263377ce06ef5c276f45a9916eff85f50438f5f32ced0210a6c414fe5e242c7c1070823f5395b35965bda6758acf84725f11ea836dda7d391fee91342026645241853224a437a6fb74e4cdc871f +result = invalid +shared = + +# tcId = 91 +# Public key uses wrong curve: brainpoolP512r1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 30819b301406072a8648ce3d020106092b240303020801010d038182000463e7a491240848e4f53ea5fb857d428c493053193e4b0b4f995ac8bf4c56276a507870131a384aa7e236c64cd7a049a1b37e40ad00c3b8a920dcbad6531616356ce1b6e6d96a7d1b693e25e5abd83ab560a3d764bcd49ec98a1b49421163bd5fc5a625f44c91eb4c2984d5a2e51e816ebdee8fbe08364bb14b7ac876990e64d9 +result = invalid +shared = + +# tcId = 92 +# Public key uses wrong curve: brainpoolP224t1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 3052301406072a8648ce3d020106092b2403030208010106033a00047c592ecb8908355d1ebf8d59b3619275dbe3666209b72ced6a3c88740456ce61d6a84e0542d7cd10dd8804afb8c784d5dffd9480d8cfdc95 +result = invalid +shared = + +# tcId = 93 +# Public key uses wrong curve: brainpoolP256t1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 305a301406072a8648ce3d020106092b240303020801010803420004746226a3e005c37ede51828d3375ef91ebd0ff719a380af69d7dfd131b42a3e8917d4a4d573872935a74d1040f1c47d25d6b26f4156cccdcdc11833b9cde433a +result = invalid +shared = + +# tcId = 94 +# Public key uses wrong curve: brainpoolP320t1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 306a301406072a8648ce3d020106092b240303020801010a035200043298b36825c7bd90ab5157b913d40bbfd732a0de0557e02a2c65a0c223e9a65d62c32462040dd6fe578103023c831caff122c1ed4b8ff7373fa2f08d11c9f4c7f85f81802262ffed9bb82cb6d92eed2d +result = invalid +shared = + +# tcId = 95 +# Public key uses wrong curve: brainpoolP384t1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 307a301406072a8648ce3d020106092b240303020801010c036200043af2849b981f7e5e6ab936e6abb4f206c1fd5561998df8008bfe98d84173c9f2301cdbd5bffc569c0b5a57ce2a8f4d640f1816475fc6043baa8e5a3453bf327b54cb29c7e54a5f31348969aa94615094dbcd1a8e5c2d630465e45fc556c02194 +result = invalid +shared = + +# tcId = 96 +# Public key uses wrong curve: brainpoolP512t1 +private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc +public = 30819b301406072a8648ce3d020106092b240303020801010e038182000453d2506047e72af6d98558e1633ecb7e6a05c37861cd3289455cf41bfbf1703f2e9a83052b8eca7d84cba2f001abd8b978f68b69ed6bd874755c44d347fe302c5760b2078c56b24ebd0dcd99f26b8f8a23044b3767a3d2a306587687a7b00668974674edbf18c3db2f3473a97ee77065fdcdd1a9aa053716a4c504f3d18b9170 +result = invalid +shared = + +# tcId = 97 +# invalid public key +private = 0fc28a0ca0f8e36b0d4f71421845135a22aef543b9fddf8c775b2d18f +public = 3032301006072a8648ce3d020106052b81040021031e00020ca753db5ddeca474241f8d2dafc0844343fd0e37eded2f0192d51b2 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 98 +# long form encoding of length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30814e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 99 +# long form encoding of length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304f30811006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 100 +# long form encoding of length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304f30110681072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 101 +# long form encoding of length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304f301106072a8648ce3d02010681052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 102 +# long form encoding of length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304f301006072a8648ce3d020106052b8104002103813a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 103 +# length contains leading 0 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3082004e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 104 +# length contains leading 0 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30503082001006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 105 +# length contains leading 0 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30503012068200072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 106 +# length contains leading 0 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301206072a8648ce3d0201068200052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 107 +# length contains leading 0 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301006072a8648ce3d020106052b810400210382003a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 108 +# wrong length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304f301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 109 +# wrong length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 110 +# wrong length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301106072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 111 +# wrong length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e300f06072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 112 +# wrong length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006082a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 113 +# wrong length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006062a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 114 +# wrong length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106062b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 115 +# wrong length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106042b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 116 +# wrong length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021033b000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 117 +# wrong length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b810400210339000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 118 +# uint32 overflow in length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3085010000004e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 119 +# uint32 overflow in length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30533085010000001006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 120 +# uint32 overflow in length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30533015068501000000072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 121 +# uint32 overflow in length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3053301506072a8648ce3d0201068501000000052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 122 +# uint32 overflow in length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3053301006072a8648ce3d020106052b810400210385010000003a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 123 +# uint64 overflow in length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 308901000000000000004e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 124 +# uint64 overflow in length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3057308901000000000000001006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 125 +# uint64 overflow in length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3057301906890100000000000000072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 126 +# uint64 overflow in length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3057301906072a8648ce3d020106890100000000000000052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 127 +# uint64 overflow in length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3057301006072a8648ce3d020106052b81040021038901000000000000003a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 128 +# length = 2**31 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30847fffffff301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 129 +# length = 2**31 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 305230847fffffff06072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 130 +# length = 2**31 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3052301406847fffffff2a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 131 +# length = 2**31 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3052301406072a8648ce3d020106847fffffff2b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 132 +# length = 2**31 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3052301006072a8648ce3d020106052b8104002103847fffffff000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 133 +# length = 2**32 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3084ffffffff301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 134 +# length = 2**32 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30523084ffffffff06072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 135 +# length = 2**32 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 305230140684ffffffff2a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 136 +# length = 2**32 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3052301406072a8648ce3d02010684ffffffff2b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 137 +# length = 2**32 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3052301006072a8648ce3d020106052b810400210384ffffffff000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 138 +# length = 2**40 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3085ffffffffff301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 139 +# length = 2**40 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30533085ffffffffff06072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 140 +# length = 2**40 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 305330150685ffffffffff2a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 141 +# length = 2**40 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3053301506072a8648ce3d02010685ffffffffff2b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 142 +# length = 2**40 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3053301006072a8648ce3d020106052b810400210385ffffffffff000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 143 +# length = 2**64 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3088ffffffffffffffff301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 144 +# length = 2**64 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30563088ffffffffffffffff06072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 145 +# length = 2**64 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 305630180688ffffffffffffffff2a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 146 +# length = 2**64 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3056301806072a8648ce3d02010688ffffffffffffffff2b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 147 +# length = 2**64 - 1 +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3056301006072a8648ce3d020106052b810400210388ffffffffffffffff000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 148 +# incorrect length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30ff301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 149 +# incorrect length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e30ff06072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 150 +# incorrect length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006ff2a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 151 +# incorrect length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106ff2b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 152 +# incorrect length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b8104002103ff000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 153 +# indefinite length without termination +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3080301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 154 +# indefinite length without termination +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e308006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 155 +# indefinite length without termination +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006802a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 156 +# indefinite length without termination +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106802b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 157 +# indefinite length without termination +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b810400210380000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 158 +# removing sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 159 +# removing sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 303c033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 160 +# lonely sequence tag +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 161 +# lonely sequence tag +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 303d30033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 162 +# appending 0's to sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da620000 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 163 +# appending 0's to sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301206072a8648ce3d020106052b810400210000033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 164 +# prepending 0's to sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30500000301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 165 +# prepending 0's to sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30503012000006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 166 +# appending unused 0's to sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da620000 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 167 +# appending unused 0's to sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301006072a8648ce3d020106052b810400210000033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 168 +# appending null value to sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da620500 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 169 +# appending null value to sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301206072a8648ce3d020106052b810400210500033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 170 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3053498177304e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 171 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30522500304e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 172 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050304e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da620004deadbeef +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 173 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30533015498177301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 174 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 305230142500301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 175 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30563012301006072a8648ce3d020106052b810400210004deadbeef033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 176 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30533015260c49817706072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 177 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30523014260b250006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 178 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30563018260906072a8648ce3d02010004deadbeef06052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 179 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3053301506072a8648ce3d0201260a49817706052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 180 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3052301406072a8648ce3d02012609250006052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 181 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3056301806072a8648ce3d0201260706052b810400210004deadbeef033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 182 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3053301006072a8648ce3d020106052b81040021233f498177033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 183 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3052301006072a8648ce3d020106052b81040021233e2500033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 184 +# including garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3056301006072a8648ce3d020106052b81040021233c033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da620004deadbeef +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 185 +# including undefined tags +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3056aa00bb00cd00304e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 186 +# including undefined tags +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3054aa02aabb304e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 187 +# including undefined tags +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30563018aa00bb00cd00301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 188 +# including undefined tags +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30543016aa02aabb301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 189 +# including undefined tags +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30563018260faa00bb00cd0006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 190 +# including undefined tags +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30543016260daa02aabb06072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 191 +# including undefined tags +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3056301806072a8648ce3d0201260daa00bb00cd0006052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 192 +# including undefined tags +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3054301606072a8648ce3d0201260baa02aabb06052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 193 +# including undefined tags +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3056301006072a8648ce3d020106052b810400212342aa00bb00cd00033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 194 +# including undefined tags +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3054301006072a8648ce3d020106052b810400212340aa02aabb033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 195 +# truncated length of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3081 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 196 +# truncated length of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 303e3081033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 197 +# Replacing sequence with NULL +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 0500 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 198 +# Replacing sequence with NULL +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 303e0500033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 199 +# changing tag value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 2e4e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 200 +# changing tag value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 2f4e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 201 +# changing tag value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 314e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 202 +# changing tag value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 324e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 203 +# changing tag value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = ff4e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 204 +# changing tag value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e2e1006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 205 +# changing tag value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e2f1006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 206 +# changing tag value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e311006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 207 +# changing tag value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e321006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 208 +# changing tag value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304eff1006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 209 +# dropping value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3000 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 210 +# dropping value of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 303e3000033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 211 +# truncate sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 212 +# truncate sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d1006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 213 +# truncate sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d300f06072a8648ce3d020106052b810400033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 214 +# truncate sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d300f072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 215 +# indefinite length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3080301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da620000 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 216 +# indefinite length +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050308006072a8648ce3d020106052b810400210000033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 217 +# indefinite length with truncated delimiter +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3080301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da6200 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 218 +# indefinite length with truncated delimiter +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304f308006072a8648ce3d020106052b8104002100033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 219 +# indefinite length with additional element +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3080301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da6205000000 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 220 +# indefinite length with additional element +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3052308006072a8648ce3d020106052b8104002105000000033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 221 +# indefinite length with truncated element +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3080301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62060811220000 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 222 +# indefinite length with truncated element +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3054308006072a8648ce3d020106052b81040021060811220000033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 223 +# indefinite length with garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3080301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da620000fe02beef +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 224 +# indefinite length with garbage +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3054308006072a8648ce3d020106052b810400210000fe02beef033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 225 +# indefinite length with nonempty EOC +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3080301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da620002beef +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 226 +# indefinite length with nonempty EOC +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3052308006072a8648ce3d020106052b810400210002beef033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 227 +# prepend empty sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30503000301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 228 +# prepend empty sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30503012300006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 229 +# append empty sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da623000 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 230 +# append empty sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301206072a8648ce3d020106052b810400213000033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 231 +# sequence of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050304e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 232 +# sequence of sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30503012301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 233 +# truncated sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3012301006072a8648ce3d020106052b81040021 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 234 +# truncated sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3047300906072a8648ce3d0201033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 235 +# repeat element in sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30818a301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 236 +# repeat element in sequence +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3055301706072a8648ce3d020106052b8104002106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 237 +# removing oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3045300706052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 238 +# lonely oid tag +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304630080606052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 239 +# lonely oid tag +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3048300a06072a8648ce3d020106033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 240 +# appending 0's to oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301206092a8648ce3d0201000006052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 241 +# appending 0's to oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301206072a8648ce3d020106072b810400210000033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 242 +# prepending 0's to oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30503012060900002a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 243 +# prepending 0's to oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301206072a8648ce3d0201060700002b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 244 +# appending unused 0's to oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301206072a8648ce3d0201000006052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 245 +# appending null value to oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301206092a8648ce3d0201050006052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 246 +# appending null value to oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301206072a8648ce3d020106072b810400210500033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 247 +# truncated length of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30473009068106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 248 +# truncated length of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3049300b06072a8648ce3d02010681033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 249 +# Replacing oid with NULL +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30473009050006052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 250 +# Replacing oid with NULL +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3049300b06072a8648ce3d02010500033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 251 +# changing tag value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301004072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 252 +# changing tag value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301005072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 253 +# changing tag value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301007072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 254 +# changing tag value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301008072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 255 +# changing tag value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e3010ff072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 256 +# changing tag value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020104052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 257 +# changing tag value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020105052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 258 +# changing tag value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020107052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 259 +# changing tag value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020108052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 260 +# changing tag value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d0201ff052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 261 +# dropping value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30473009060006052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 262 +# dropping value of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3049300b06072a8648ce3d02010600033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 263 +# modify first byte of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e30100607288648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 264 +# modify first byte of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052981040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 265 +# modify last byte of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d028106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 266 +# modify last byte of oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b810400a1033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 267 +# truncate oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d300f06062a8648ce3d0206052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 268 +# truncate oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d300f06068648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 269 +# truncate oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d300f06072a8648ce3d020106042b810400033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 270 +# truncate oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d300f06072a8648ce3d0201060481040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 271 +# wrong oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30513013060a3262306530333032316106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 272 +# wrong oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3059301b061236303836343830313635303330343032303106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 273 +# wrong oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3053301506072a8648ce3d0201060a32623065303330323161033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 274 +# wrong oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 305b301d06072a8648ce3d02010612363038363438303136353033303430323031033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 275 +# longer oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3057301906103261383634386365336430323031303106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 276 +# longer oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3055301706072a8648ce3d0201060c326238313034303032313031033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 277 +# oid with modified node +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 30553017060e326138363438636533643032313106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 278 +# oid with modified node +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 305d301f06163261383634386365336430323838383038303830303106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 279 +# oid with modified node +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3053301506072a8648ce3d0201060a32623831303430303331033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 280 +# oid with modified node +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 305b301d06072a8648ce3d02010612326238313034303038383830383038303231033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 281 +# large integer in oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 306730290620326138363438636533643032383238303830383038303830383038303830303106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 282 +# large integer in oid +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3065302706072a8648ce3d0201061c32623831303430303832383038303830383038303830383038303231033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 283 +# oid with invalid node +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3058301a0611326138363438636533643032303165303306052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 284 +# oid with invalid node +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304f301106082a808648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 285 +# oid with invalid node +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3056301806072a8648ce3d0201060d32623831303430303231653033033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 286 +# oid with invalid node +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304f301106072a8648ce3d020106062b8081040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 287 +# lonely bit string tag +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3013301006072a8648ce3d020106052b8104002103 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 288 +# appending 0's to bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301006072a8648ce3d020106052b81040021033c000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da620000 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 289 +# prepending 0's to bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301006072a8648ce3d020106052b81040021033c0000000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 290 +# appending null value to bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3050301006072a8648ce3d020106052b81040021033c000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da620500 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 291 +# truncated length of bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3014301006072a8648ce3d020106052b810400210381 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 292 +# Replacing bit string with NULL +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3014301006072a8648ce3d020106052b810400210500 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 293 +# changing tag value of bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021013a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 294 +# changing tag value of bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021023a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 295 +# changing tag value of bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021043a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 296 +# changing tag value of bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021053a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 297 +# changing tag value of bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021ff3a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 298 +# dropping value of bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3014301006072a8648ce3d020106052b810400210300 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 299 +# modify first byte of bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021033a020486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 300 +# modify last byte of bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021033a000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3dae2 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 301 +# truncate bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d301006072a8648ce3d020106052b810400210339000486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 302 +# truncate bit string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304d301006072a8648ce3d020106052b8104002103390486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 303 +# declaring bits as unused in a bit-string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021033a010486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 304 +# unused bits in a bit-string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3052301006072a8648ce3d020106052b81040021033e200486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da6201020304 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 305 +# unused bits in empty bit-string +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 3015301006072a8648ce3d020106052b81040021030103 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 306 +# 128 unused bits +private = 0a1b9444f59642d428e2f299055004165a34c3b8796c5057ae8a1a572 +public = 304e301006072a8648ce3d020106052b81040021033a800486e2f72bccd974a3f1a4fc2cdcf22043eaf8be047de6be726b62001fda6f50f6df0b51bee99195d8a1a1c97e59e72fa4fcf8c1d21cb3da62 +result = acceptable +shared = 85a70fc4dfc8509fb9ba1cfcf1879443e2ce176d794228029b10da63 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. +
diff --git a/third_party/wycheproof_testvectors/ecdh_secp256r1_test.txt b/third_party/wycheproof_testvectors/ecdh_secp256r1_test.txt new file mode 100644 index 0000000..feb13fb --- /dev/null +++ b/third_party/wycheproof_testvectors/ecdh_secp256r1_test.txt
@@ -0,0 +1,3245 @@ +# Imported from Wycheproof's ecdh_secp256r1_test.json. +# This file is generated by convert_wycheproof.go. Do not edit by hand. +# +# Algorithm: ECDH +# Generator version: 0.4.12 + +[curve = secp256r1] +[encoding = asn] + +# tcId = 1 +# normal case +private = 612465c89a023ab17855b0a6bcebfd3febb53aef84138647b5352e02c10c346 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000462d5bd3372af75fe85a040715d0f502428e07046868b0bfdfa61d731afe44f26ac333a93a9e70a81cd5a95b5bf8d13990eb741c8c38872b4a07d275a014e30cf +result = valid +shared = 53020d908b0219328b658b525f26780e3ae12bcd952bb25a93bc0895e1714285 + +# tcId = 2 +# compressed public key +private = 612465c89a023ab17855b0a6bcebfd3febb53aef84138647b5352e02c10c346 +public = 3039301306072a8648ce3d020106082a8648ce3d0301070322000362d5bd3372af75fe85a040715d0f502428e07046868b0bfdfa61d731afe44f26 +result = acceptable +shared = 53020d908b0219328b658b525f26780e3ae12bcd952bb25a93bc0895e1714285 +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 3 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000458fd4168a87795603e2b04390285bdca6e57de6027fe211dd9d25e2212d29e62080d36bd224d7405509295eed02a17150e03b314f96da37445b0d1d29377d12c +result = valid +shared = 0000000000000000000000000000000000000000000000000000000000000000 + +# tcId = 4 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040f6d20c04261ecc3e92846acad48dc8ec5ee35ae0883f0d2ea71216906ee1c47c042689a996dd12830ae459382e94aac56b717af2e2080215f9e41949b1f52be +result = valid +shared = 00000000000000000000000000000000ffffffffffffffffffffffffffffffff + +# tcId = 5 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400c7defeb1a16236738e9a1123ba621bc8e9a3f2485b3f8ffde7f9ce98f5a8a1cb338c3912b1792f60c2b06ec5231e2d84b0e596e9b76d419ce105ece3791dbc +result = valid +shared = 0000000000000000ffffffffffffffff00000000000000010000000000000001 + +# tcId = 6 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004e9b98fb2c0ac045f8c76125ffd99eb8a5157be1d7db3e85d655ec1d8210288cf218df24fd2c2746be59df41262ef3a97d986744b2836748a7486230a319ffec0 +result = valid +shared = 00000000ffffffff00000000ffffffff00000000ffffffff0000000100000000 + +# tcId = 7 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004e9484e58f3331b66ffed6d90cb1c78065fa28cfba5c7dd4352013d3252ee4277bd7503b045a38b4b247b32c59593580f39e6abfa376c3dca20cf7f9cfb659e13 +result = valid +shared = 000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff + +# tcId = 8 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004767d7fbb84aa6a4db1079372644e42ecb2fec200c178822392cb8b950ffdd0c91c86853cafd09b52ba2f287f0ebaa26415a3cfabaf92c6a617a19988563d9dea +result = valid +shared = 0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff00010001 + +# tcId = 9 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004c74d546f2fcc6dd392f85e5be167e358de908756b0c0bb01cb69d864ca083e1c93f959eece6e10ee11bd3934207d65ae28af68b092585a1509260eceb39b92ef +result = valid +shared = 085ec5a4af40176b63189069aeffcb229c96d3e046e0283ed2f9dac21b15ad3c + +# tcId = 10 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000434fc9f1e7a094cd29598d1841fa9613dbe82313d633a51d63fb6eff074cc9b9a4ecfd9f258c5c4d4210b49751213a24c596982bd1d54e0445443f21ef15492a5 +result = valid +shared = 190c25f88ad9ae3a098e6cffe6fd0b1bea42114eb0cedd5868a45c5fe277dff3 + +# tcId = 11 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004d5c96efd1907fd48de2ad715acf82eae5c6690fe3efe16a78d61c68d3bfd10df03eac816b9e7b776192a3f5075887c0e225617505833ca997cda32fd0f673c5e +result = valid +shared = 507442007322aa895340cba4abc2d730bfd0b16c2c79a46815f8780d2c55a2dd + +# tcId = 12 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004f475f503a770df72c45aedfe42c008f59aa57e72b232f26600bdd0353957cb20bdb8f6405b4918050a3549f44c07a8eba820cdce4ece699888c638df66f54f7c +result = valid +shared = 5f177bfe19baaaee597e68b6a87a519e805e9d28a70cb72fd40f0fe5a754ba45 + +# tcId = 13 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004f3cb6754b7e2a86d064dfb9f903185aaa4c92b481c2c1a1ff276303bbc4183e49c318599b0984c3563df339311fe143a7d921ee75b755a52c6f804f897b809f7 +result = valid +shared = 7fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff + +# tcId = 14 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004cce13fbdc96a946dfb8c6d9ed762dbd1731630455689f57a437fee124dd54cecaef78026c653030cf2f314a67064236b0a354defebc5e90c94124e9bf5c4fc24 +result = valid +shared = 8000000000000000000000000000000000000000000000000000000000000004 + +# tcId = 15 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047633dfd0ad06765097bc11bd5022b200df31f28c4ff0625421221ac7eeb6e6f4cb9c67693609ddd6f92343a5a1c635408240f4f8e27120c12554c7ff8c76e2fe +result = valid +shared = 8000003ffffff0000007fffffe000000ffffffc000001ffffff8000004000000 + +# tcId = 16 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004a386ace573f87558a68ead2a20088e3fe928bdae9e109446f93a078c15741f0421261e6db2bf12106e4c6bf85b9581b4c0302a526222f90abc5a549206b11011 +result = valid +shared = ff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff + +# tcId = 17 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200048e7b50f7d8c44d5d3496c43141a502f4a43f153d03ad43eda8e39597f1d477b8647f3da67969b7f989ff4addc393515af40c82085ce1f2ee195412c6f583774f +result = valid +shared = ffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff + +# tcId = 18 +# edge case for shared secret +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004c827fb930fd51d926086191b502af83abb5f717debc8de29897a3934b2571ca05990c0597b0b7a2e42febd56b13235d1d408d76ed2c93b3facf514d902f6910a +result = valid +shared = ffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff + +# tcId = 19 +# y-coordinate of the public key is small +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200043cbc1b31b43f17dc200dd70c2944c04c6cb1b082820c234a300b05b7763844c74fde0a4ef93887469793270eb2ff148287da9265b0334f9e2609aac16e8ad503 +result = valid +shared = 7fffffffffffffffffffffffeecf2230ffffffffffffffffffffffffffffffff + +# tcId = 20 +# y-coordinate of the public key is small +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200042830d96489ae24b79cad425056e82746f9e3f419ab9aa21ca1fbb11c7325e7d318abe66f575ee8a2f1c4a80e35260ae82ad7d6f661d15f06967930a585097ef7 +result = valid +shared = 000000000000000000000000111124f400000000000000000000000000000000 + +# tcId = 21 +# y-coordinate of the public key is small +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004450b6b6e2097178e9d2850109518d28eb3b6ded2922a5452003bc2e4a4ec775c894e90f0df1b0e6cadb03b9de24f6a22d1bd0a4a58cd645c273cae1c619bfd61 +result = valid +shared = 000000000000000000000001ea77d449ffffffffffffffffffffffffffffffff + +# tcId = 22 +# y-coordinate of the public key is large +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200043cbc1b31b43f17dc200dd70c2944c04c6cb1b082820c234a300b05b7763844c7b021f5b006c778ba686cd8f14d00eb7d78256d9b4fccb061d9f6553e91752afc +result = valid +shared = 7fffffffffffffffffffffffeecf2230ffffffffffffffffffffffffffffffff + +# tcId = 23 +# y-coordinate of the public key is large +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200042830d96489ae24b79cad425056e82746f9e3f419ab9aa21ca1fbb11c7325e7d3e754198fa8a1175e0e3b57f1cad9f517d528290a9e2ea0f96986cf5a7af68108 +result = valid +shared = 000000000000000000000000111124f400000000000000000000000000000000 + +# tcId = 24 +# y-coordinate of the public key is large +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004450b6b6e2097178e9d2850109518d28eb3b6ded2922a5452003bc2e4a4ec775c76b16f0e20e4f194524fc4621db095dd2e42f5b6a7329ba3d8c351e39e64029e +result = valid +shared = 000000000000000000000001ea77d449ffffffffffffffffffffffffffffffff + +# tcId = 25 +# y-coordinate of the public key has many trailing 1's +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200049a0f0e3dd31417bbd9e298bc068ab6d5c36733af26ed67676f410c804b8b2ca1b02c82f3a61a376db795626e9400557112273a36cddb08caaa43953965454730 +result = valid +shared = 7fffffffffffffffffffffffca089011ffffffffffffffffffffffffffffffff + +# tcId = 26 +# y-coordinate of the public key has many trailing 1's +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200048e5d22d5e53ec797c55ecd68a08a7c3361cd99ca7fad1a68ea802a6a4cb58a918ea7a07023ef67677024bd3841e187c64b30a30a3750eb2ee873fbe58fa1357b +result = valid +shared = 0000000000000000000000001f6bd1e500000000000000000000000000000000 + +# tcId = 27 +# y-coordinate of the public key has many trailing 1's +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004293aa349b934ab2c839cf54b8a737df2304ef9b20fa494e31ad62b315dd6a53c118182b85ef466eb9a8e87f9661f7d017984c15ea82043f536d1ee6a6d95b509 +result = valid +shared = 000000000000000000000002099f55d5ffffffffffffffffffffffffffffffff + +# tcId = 28 +# y-coordinate of the public key has many trailing 0's +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200049a0f0e3dd31417bbd9e298bc068ab6d5c36733af26ed67676f410c804b8b2ca14fd37d0b59e5c893486a9d916bffaa8eedd8c5ca3224f73555bc6ac69abab8cf +result = valid +shared = 7fffffffffffffffffffffffca089011ffffffffffffffffffffffffffffffff + +# tcId = 29 +# y-coordinate of the public key has many trailing 0's +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200048e5d22d5e53ec797c55ecd68a08a7c3361cd99ca7fad1a68ea802a6a4cb58a9171585f8edc1098998fdb42c7be1e7839b4cf5cf6c8af14d1178c041a705eca84 +result = valid +shared = 0000000000000000000000001f6bd1e500000000000000000000000000000000 + +# tcId = 30 +# y-coordinate of the public key has many trailing 0's +private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004293aa349b934ab2c839cf54b8a737df2304ef9b20fa494e31ad62b315dd6a53cee7e7d46a10b99156571780699e082fe867b3ea257dfbc0ac92e1195926a4af6 +result = valid +shared = 000000000000000000000002099f55d5ffffffffffffffffffffffffffffffff + +# tcId = 31 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000000000000000000000000000000000000000000000066485c780e2f83d72433bd5d84a06bb6541c2af31dae871728bf856a174f93f4 +result = valid +shared = cfe4077c8730b1c9384581d36bff5542bc417c9eff5c2afcb98cc8829b2ce848 + +# tcId = 32 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000ffffffffffffffffffffffffffffffff4f2b92b4c596a5a47f8b041d2dea6043021ac77b9a80b1343ac9d778f4f8f733 +result = valid +shared = 49ae50fe096a6cd26698b78356b2c8adf1f6a3490f14e364629f7a0639442509 + +# tcId = 33 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000ffffffffffffffff0000000000000001000000000000000138120be6ab31edfa34768c4387d2f84fb4b0be8a9a985864a1575f4436bb37b0 +result = valid +shared = 5a1334572b2a711ead8b4653eb310cd8d9fd114399379a8f6b872e3b8fdda2d9 + +# tcId = 34 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000ffffffff00000000ffffffff00000000ffffffff0000000100000000462c0466e41802238d6c925ecbefc747cfe505ea196af9a2d11b62850fce946e +result = valid +shared = c73755133b6b9b4b2a00631cbc7940ecbe6ec08f20448071422e3362f2556888 + +# tcId = 35 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff1582fa32e2d4a89dfcfb3d0b149f667dba3329490f4d64ee2ad586c0c9e8c508 +result = valid +shared = 06fa1059935e47a9fd667e13f469614eb257cc9a7e3fc599bfb92780d59b146d + +# tcId = 36 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff00010001684c8a9586ed6f9cbe447058a7da2108bab1e5e0a60d1f73e4e2e713f0a3dfe0 +result = valid +shared = f237df4c10bd3e357971bb2b16b293566b7e355bdc8141d6c92cabc682983c45 + +# tcId = 37 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004085ec5a4af40176b63189069aeffcb229c96d3e046e0283ed2f9dac21b15ad3c7859f97cb6e203f46bf3438f61282325e94e681b60b5669788aeb0655bf19d38 +result = valid +shared = d874b55678d0a04d216c31b02f3ad1f30c92caaf168f34e3a743356d9276e993 + +# tcId = 38 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004190c25f88ad9ae3a098e6cffe6fd0b1bea42114eb0cedd5868a45c5fe277dff321b8342ef077bc6724112403eaee5a15b4c31a71589f02ded09cd99cc5db9c83 +result = valid +shared = 11a8582057463fc76fda3ab8087eb0a420b0d601bb3134165a369646931e52a6 + +# tcId = 39 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004507442007322aa895340cba4abc2d730bfd0b16c2c79a46815f8780d2c55a2dd4619d69f9940f51663aa12381bc7cf678bd1a72a49fbc11b0b69cb22d1af9f2d +result = valid +shared = 4e173a80907f361fe5a5d335ba7685d5eba93e9dfc8d8fcdb1dcd2d2bde27507 + +# tcId = 40 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200045f177bfe19baaaee597e68b6a87a519e805e9d28a70cb72fd40f0fe5a754ba4562ca1103f70a2006cd1f67f5f6a3580b29dc446abc90e0e910c1e05a9aa788cd +result = valid +shared = 73220471ec8bad99a297db488a34a259f9bc891ffaf09922e6b5001f5df67018 + +# tcId = 41 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff2e2213caf03033e0fd0f7951154f6e6c3a9244a72faca65e9ce9eeb5c8e1cea9 +result = valid +shared = 55d0a203e22ffb523c8d2705060cee9d28308b51f184beefc518cff690bad346 + +# tcId = 42 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000480000000000000000000000000000000000000000000000000000000000000042be8789db81bb4870a9e60c5c18c80c83de464277281f1af1e640843a1a3148e +result = valid +shared = 2518d846e577d95e9e7bc766cde7997cb887fb266d3a6cb598a839fd54aa2f4f + +# tcId = 43 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200048000003ffffff0000007fffffe000000ffffffc000001ffffff8000004000000722540f8a471c379083c600b58fde4d95c7dcad5095f4219fc5e9bdde3c5cd39 +result = valid +shared = bdb49f4bdf42ac64504e9ce677b3ec5c0a03828c5b3efad726005692d35c0f26 + +# tcId = 44 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff5df80fc6cae26b6c1952fbd00ed174ee1209d069335f5b48588e29e80b9191ad +result = valid +shared = f503ac65637e0f17cb4408961cb882c875e4c6ef7a548d2d52d8c2f681838c55 + +# tcId = 45 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff2c63650e6a5d332e2987dd09a79008e8faabbd37e49cb016bfb92c8cd0f5da77 +result = valid +shared = e3c18e7d7377dc540bc45c08d389bdbe255fa80ca8faf1ef6b94d52049987d21 + +# tcId = 46 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff7a116c964a4cd60668bf89cffe157714a3ce21b93b3ca607c8a5b93ac54ffc0a +result = valid +shared = 516d6d329b095a7c7e93b4023d4d05020c1445ef1ddcb3347b3a27d7d7f57265 + +# tcId = 47 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047fffffffffffffffffffffffeecf2230ffffffffffffffffffffffffffffffff00000001c7c30643abed0af0a49fe352cb483ff9b97dccdf427c658e8793240d +result = valid +shared = 6fd26661851a8de3c6d06f834ef3acb8f2a5f9c136a985ffe10d5eeb51edcfa3 + +# tcId = 48 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047fffffffffffffffffffffffeecf2230fffffffffffffffffffffffffffffffffffffffd383cf9bd5412f50f5b601cad34b7c00746823320bd839a71786cdbf2 +result = valid +shared = 6fd26661851a8de3c6d06f834ef3acb8f2a5f9c136a985ffe10d5eeb51edcfa3 + +# tcId = 49 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047fffffffffffffffffffffffca089011ffffffffffffffffffffffffffffffff267bfdf8a61148decd80283732dd4c1095e4bb40b9658408208dc1147fffffff +result = valid +shared = 44236c8b9505a19d48774a3903c0292759b0f826e6ac092ff898d87e53d353fc + +# tcId = 50 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047fffffffffffffffffffffffca089011ffffffffffffffffffffffffffffffffd984020659eeb722327fd7c8cd22b3ef6a1b44c0469a7bf7df723eeb80000000 +result = valid +shared = 44236c8b9505a19d48774a3903c0292759b0f826e6ac092ff898d87e53d353fc + +# tcId = 51 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000000111124f4000000000000000000000000000000000000000d12d381b0760b1c50be8acf859385052c7f53cde67ce13759de3123a0 +result = valid +shared = f1f0e43b374feb7e7f96d4ffe7519fa8bb6c3cfd25f6f87dab2623d2a2d33851 + +# tcId = 52 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000000111124f400000000000000000000000000000000fffffff1ed2c7e5089f4e3af4175307a6c7afad480ac3219831ec8a621cedc5f +result = valid +shared = f1f0e43b374feb7e7f96d4ffe7519fa8bb6c3cfd25f6f87dab2623d2a2d33851 + +# tcId = 53 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000001f6bd1e5000000000000000000000000000000004096edd6871c320cb8a9f4531751105c97b4c257811bbc32963eaf39ffffffff +result = valid +shared = 3ebbace1098a81949d5605dd94a7aa88dc396c2c23e01a9c8cca5bb07bfbb6a1 + +# tcId = 54 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000001f6bd1e500000000000000000000000000000000bf69122878e3cdf447560bace8aeefa3684b3da97ee443cd69c150c600000000 +result = valid +shared = 3ebbace1098a81949d5605dd94a7aa88dc396c2c23e01a9c8cca5bb07bfbb6a1 + +# tcId = 55 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000001ea77d449ffffffffffffffffffffffffffffffff000000007afbc0b325e820646dec622fb558a51c342aa257f4b6a8ec5ddf144f +result = valid +shared = 1b085213a9c89d353e1111af078c38c502b7b4771efba51f589b5be243417bdc + +# tcId = 56 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000001ea77d449fffffffffffffffffffffffffffffffffffffffe85043f4dda17df9b92139dd04aa75ae4cbd55da80b495713a220ebb0 +result = valid +shared = 1b085213a9c89d353e1111af078c38c502b7b4771efba51f589b5be243417bdc + +# tcId = 57 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000002099f55d5ffffffffffffffffffffffffffffffff152c1a22d823a27855ed03f8e2ab5038bb1df4d87e43865f2daf6948ffffffff +result = valid +shared = 67cb63566c7ceb12fdd85ce9d2f77c359242bbaa0ea1bf3cf510a4a26591d1f1 + +# tcId = 58 +# edge cases for ephemeral key +private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000002099f55d5ffffffffffffffffffffffffffffffffead3e5dc27dc5d88aa12fc071d54afc744e20b2881bc79a0d25096b700000000 +result = valid +shared = 67cb63566c7ceb12fdd85ce9d2f77c359242bbaa0ea1bf3cf510a4a26591d1f1 + +# tcId = 59 +# edge case private key +private = 3 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = 85a0b58519b28e70a694ec5198f72c4bfdabaa30a70f7143b5b1cd7536f716ca + +# tcId = 60 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffffffffff +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = a329a7d80424ea2d6c904393808e510dfbb28155092f1bac284dceda1f13afe5 + +# tcId = 61 +# edge case private key +private = 100000000000000000000000000000000000000000000000000000000000000 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = bd26d0293e8851c51ebe0d426345683ae94026aca545282a4759faa85fde6687 + +# tcId = 62 +# edge case private key +private = 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = ea9350b2490a2010c7abf43fb1a38be729a2de375ea7a6ac34ff58cc87e51b6c + +# tcId = 63 +# edge case private key +private = 08000000000000000000000000000000000000000000000000000000000000000 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = 34eed3f6673d340b6f716913f6dfa36b5ac85fa667791e2d6a217b0c0b7ba807 + +# tcId = 64 +# edge case private key +private = 0ffffffff00000000ffffffffffffffffbce6faada7179e83f3b9cac2fc632551 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = 1354ce6692c9df7b6fc3119d47c56338afbedccb62faa546c0fe6ed4959e41c3 + +# tcId = 65 +# edge case private key +private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3a9cac2fc632551 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = fe7496c30d534995f0bf428b5471c21585aaafc81733916f0165597a55d12cb4 + +# tcId = 66 +# edge case private key +private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b1cac2fc632551 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = 348bf8042e4edf1d03c8b36ab815156e77c201b764ed4562cfe2ee90638ffef5 + +# tcId = 67 +# edge case private key +private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac1fc632551 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = 6e4ec5479a7c20a537501700484f6f433a8a8fe53c288f7a25c8e8c92d39e8dc + +# tcId = 68 +# edge case private key +private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6324f3 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = f7407d61fdf581be4f564621d590ca9b7ba37f31396150f9922f1501da8c83ef +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 69 +# edge case private key +private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632533 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = 82236fd272208693e0574555ca465c6cc512163486084fa57f5e1bd2e2ccc0b3 +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 70 +# edge case private key +private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632543 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = 06537149664dba1a9924654cb7f787ed224851b0df25ef53fcf54f8f26cd5f3f +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 71 +# edge case private key +private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254b +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = f2b38539bce995d443c7bfeeefadc9e42cc2c89c60bf4e86eac95d51987bd112 +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 72 +# edge case private key +private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = 85a0b58519b28e70a694ec5198f72c4bfdabaa30a70f7143b5b1cd7536f716ca + +# tcId = 73 +# edge case private key +private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b +result = valid +shared = 027b013a6f166db655d69d643c127ef8ace175311e667dff2520f5b5c75b7659 +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 74 +# CVE-2017-8932 +private = 2a265f8bcbdcaf94d58519141e578124cb40d64a501fba9c11847b28965bc737 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004023819813ac969847059028ea88a1f30dfbcde03fc791d3a252c6b41211882eaf93e4ae433cc12cf2a43fc0ef26400c0e125508224cdb649380f25479148a4ad +result = valid +shared = 4d4de80f1534850d261075997e3049321a0864082d24a917863366c0724f5ae3 + +# tcId = 75 +# CVE-2017-8932 +private = 313f72ff9fe811bf573176231b286a3bdb6f1b14e05c40146590727a71c3bccd +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004cc11887b2d66cbae8f4d306627192522932146b42f01d3c6f92bd5c8ba739b06a2f08a029cd06b46183085bae9248b0ed15b70280c7ef13a457f5af382426031 +result = valid +shared = 831c3f6b5f762d2f461901577af41354ac5f228c2591f84f8a6e51e2e3f17991 + +# tcId = 76 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 77 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 78 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000000000000000000000000000000000000000000000ffffffff00000001000000000000000000000000fffffffffffffffffffffffe +result = invalid +shared = + +# tcId = 79 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000000000000000000000000000000000000000000000ffffffff00000001000000000000000000000000ffffffffffffffffffffffff +result = invalid +shared = + +# tcId = 80 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 81 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 82 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000000000000000000000000000000000000000000001ffffffff00000001000000000000000000000000fffffffffffffffffffffffe +result = invalid +shared = + +# tcId = 83 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000000000000000000000000000000000000000000001ffffffff00000001000000000000000000000000ffffffffffffffffffffffff +result = invalid +shared = + +# tcId = 84 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000fffffffffffffffffffffffe0000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 85 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000fffffffffffffffffffffffe0000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 86 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000fffffffffffffffffffffffeffffffff00000001000000000000000000000000fffffffffffffffffffffffe +result = invalid +shared = + +# tcId = 87 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000fffffffffffffffffffffffeffffffff00000001000000000000000000000000ffffffffffffffffffffffff +result = invalid +shared = + +# tcId = 88 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 89 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 90 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000ffffffffffffffffffffffffffffffff00000001000000000000000000000000fffffffffffffffffffffffe +result = invalid +shared = + +# tcId = 91 +# point is not on curve +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000ffffffffffffffffffffffffffffffff00000001000000000000000000000000ffffffffffffffffffffffff +result = invalid +shared = + +# tcId = 92 +private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d +public = 3018301306072a8648ce3d020106082a8648ce3d030107030100 +result = invalid +shared = + +# tcId = 93 +# public point not on curve +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764c +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 94 +# public point = (0,0) +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 95 +# order = +# -115792089210356248762697446949407573529996955224135760342422259061068512044369 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f50221ff00000000ffffffff00000000000000004319055258e8617b0c46353d039cdaaf020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = invalid +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 96 +# order = 0 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201133081cc06072a8648ce3d02013081c0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5020100020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = invalid +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 97 +# order = 1 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201133081cc06072a8648ce3d02013081c0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5020101020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = acceptable +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 98 +# order = 26959946660873538060741835960514744168612397095220107664918121663170 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 3082012f3081e806072a8648ce3d02013081dc020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5021d00ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = acceptable +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 99 +# generator = (0,0) +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b04410400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = acceptable +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 100 +# generator not on curve +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f7022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = acceptable +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 101 +# cofactor = -1 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510201ff034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = invalid +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 102 +# cofactor = 0 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020100034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = invalid +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 103 +# cofactor = 2 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020102034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = acceptable +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 104 +# cofactor = +# 115792089210356248762697446949407573529996955224135760342422259061068512044369 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201553082010d06072a8648ce3d020130820100020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = invalid +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 105 +# cofactor = None +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201303081e906072a8648ce3d02013081dd020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = acceptable +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 106 +# modified prime +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100fd091059a6893635f900e9449d63f572b2aebc4cff7b4e5e33f1b200e8bbc1453044042002f6efa55976c9cb06ff16bb629c0a8d4d5143b40084b1a1cc0e4dff17443eb704205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441040000000000000000000006597fa94b1fd90000000000000000000000000000021b8c7dd77f9a95627922eceefea73f028f1ec95ba9b8fa95a3ad24bdf9fff414022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101034200040000000000000000000006597fa94b1fd90000000000000000000000000000021b8c7dd77f9a95627922eceefea73f028f1ec95ba9b8fa95a3ad24bdf9fff414 +result = invalid +shared = cea0fbd8f20abc8cf8127c132e29756d25ff1530a88bf5c9e22dc1c137c36be9 +# The modulus of the public key has been modified. The public point of the +# public key has been chosen so that it is both a point on both the curve of the +# modified public key and the private key. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 107 +# using secp224r1 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 304e301006072a8648ce3d020106052b81040021033a0004074f56dc2ea648ef89c3b72e23bbd2da36f60243e4d2067b70604af1c2165cec2f86603d60c8a611d5b84ba3d91dfe1a480825bcc4af3bcf +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 108 +# using secp256k1 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 3056301006072a8648ce3d020106052b8104000a03420004a1263e75b87ae0937060ff1472f330ee55cdf8f4329d6284a9ebfbcc856c11684225e72cbebff41e54fb6f00e11afe53a17937bedbf2df787f8ef9584f775838 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 109 +# a = 0 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201143081cd06072a8648ce3d02013081c1020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff302504010004201b95c2f46065dbf0f3ff09153e4748ed71595e0774ba8e25c364ff1e6be039b70441041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a +result = acceptable +shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 110 +# public key of order 3 +private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c +public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff304404205a715b6a9ef865f5058e21e20b575d9d585533bd588a9d5fb61cd69534b4e581042036a1a972d367abf9054cce4d54424592882c345283dc9cf0ec47231711f56b22044104d68a3dfbaeb2d277742e833c51625c2ded89b13ea1ec5d33b9cbca77334d79ec89c97eb4143dc3c88d1925fc4f30baba454bb201e5c0d3158ec98bb1fd045e12022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63255102010103420004d68a3dfbaeb2d277742e833c51625c2ded89b13ea1ec5d33b9cbca77334d79ec7636814aebc23c3872e6da03b0cf4545bab44dff1a3f2cea7136744e02fba1ed +result = invalid +shared = f0652d1cc135c763cd51e429d320a6101634d13b59790c3b1db0063f9f00dc99 +# The vector contains a weak public key. The curve is not a named curve, the +# public key point has order 3 and has been chosen to be on the same curve as +# the private key. This test vector is used to check ECC implementations for +# missing steps in the verification of the public key. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 111 +# Public key uses wrong curve: secp224r1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 304e301006072a8648ce3d020106052b81040021033a00042af270d2a6030e3dd38cc46e7d719f176c2ca4eb04d7e8b84290c8edbcaed964ebe226b2d7ce17251622804c0d3b7adce020a3cdc97cac6c +result = invalid +shared = + +# tcId = 112 +# Public key uses wrong curve: secp384r1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 3076301006072a8648ce3d020106052b81040022036200041f17901e731b06f349b6e9d7d17d45e8a2b46115a47485be16197932db87b39405b5c941b36fd61b9ef7dd20878e129e55a2277099c601dcdb3747f80ad6e166116378e1ebce2c95744a0986128cfeeaac7f90b71787d9a1cfe417cd4c8f6af5 +result = invalid +shared = + +# tcId = 113 +# Public key uses wrong curve: secp521r1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 30819b301006072a8648ce3d020106052b81040023038186000400ed76e5888428fad409ff203ab298b0f24827c091939ae0f9b1245d865ac5fbcd2749f9ae6c90fa8e29414d1bc7dc7b3c4aca904cd824484421cc66fe6af43bdfd200c1f790a0b3ae994937f91b6bdb9778b08c83ecadb8cba22a78c37bf565dac164f18e719be0ef890ee5cbf20e17fcfc9a5585e5416470b9862f82fb769339994f4e +result = invalid +shared = + +# tcId = 114 +# Public key uses wrong curve: secp256k1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 3056301006072a8648ce3d020106052b8104000a034200048028d16082b07696d4aa4aab9d6b1f1463435ac097900631108f9888e13da67c4841fd8dd3ced6e7ad8c6fc656621c2f93d3db0eb29d48d1423154519865dbc1 +result = invalid +shared = + +# tcId = 115 +# Public key uses wrong curve: brainpoolP224r1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 3052301406072a8648ce3d020106092b2403030208010105033a0004a6bae3d155c1f9ca263928c986ede69acefd0dd9b3a19d2b9f4b0a3a66bea5d167318dcc028945fc1b40c60ce716ba2d414a743c6b856a6f +result = invalid +shared = + +# tcId = 116 +# Public key uses wrong curve: brainpoolP256r1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 305a301406072a8648ce3d020106092b2403030208010107034200045d3ddbbb9bc071d8b59855c74bdf3541ae4cb6c1a24ec439034df7abde16a346523edf6a67896b304cb2cd2a083eec2b16935bbc910e85ec6eae38b50230bf70 +result = invalid +shared = + +# tcId = 117 +# Public key uses wrong curve: brainpoolP320r1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 306a301406072a8648ce3d020106092b240303020801010903520004a43c6ef2500723d54c1fc88f8844d83445ca5a0f585c10b8eb3f022d47d0e84862b7f5cbf97d352d4348ca730f600f2258d1d192da223f6ba83a7cc0d6da598d55c2b77824d326c8df000b8fff156d2c +result = invalid +shared = + +# tcId = 118 +# Public key uses wrong curve: brainpoolP384r1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 307a301406072a8648ce3d020106092b240303020801010b036200042391c062833d1e6d89ec256cf4a3989534c1ead5e1e14ffae933a53f962857e4713087e1b3d65ac79634c71577af24698b5ce959183835551f7b08aef7853378c299930b360813fd58d5e4da8b37d5a7473e891ee11cb02881bd848b364fb7d5 +result = invalid +shared = + +# tcId = 119 +# Public key uses wrong curve: brainpoolP512r1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 30819b301406072a8648ce3d020106092b240303020801010d038182000484beae85096640953c1fd6ebbc32697263d53f89943cbaf14432061aea8c0318acbd9389ab1d2e904fa0e081d08cfabb614ed9bca618211142d94623c14b476a25e47abf98fd3b1da1417dfc2e2cfc8424b16ea14dd45e1422be7d4e0a5cc7f4d4ab5f198cdbaaa3f642ec6361842cbe869382ee78cd596ff5e740d9ec2c3ad6 +result = invalid +shared = + +# tcId = 120 +# Public key uses wrong curve: brainpoolP224t1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 3052301406072a8648ce3d020106092b2403030208010106033a00042b0a1a858ffc44e7752940731d378f96570837e279ea3948fe00cff8b5f89adb4e2fe6f8781ba6426364f4590b34dd79fc80629de4a86084 +result = invalid +shared = + +# tcId = 121 +# Public key uses wrong curve: brainpoolP256t1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 305a301406072a8648ce3d020106092b2403030208010108034200043037c01b4a5ac53742e3f5528dffb0f010ab6ebeb08d792b32e19e9006ca331a024b67698d7cf4b575ccd9389441d5c640b77c63771cef1bd85675361c6602a4 +result = invalid +shared = + +# tcId = 122 +# Public key uses wrong curve: brainpoolP320t1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 306a301406072a8648ce3d020106092b240303020801010a035200040f0fd972a495a140124a4019291a20f5b39fb755c126bf268643bb3091eca44f2a3cda1dead6ab1f4fe08a4b3872423f71e5bf96b1c20bc0ca73b7e2c134cc14a5f77bc838ebcf01084da3bf15663536 +result = invalid +shared = + +# tcId = 123 +# Public key uses wrong curve: brainpoolP384t1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 307a301406072a8648ce3d020106092b240303020801010c0362000403b65faf5a6bf74bd5c166278a4b566c6c705ac6363e61f3b0699e116d3c5b19e8b7021b75b005f78a8cea8de34c49397f9b3b2bfc8706eb8163c802371eff7dfc825c40aa84dd9d1c4b34615ee5ae28c6c05d58d2a8ccc3786382b712d3bcda +result = invalid +shared = + +# tcId = 124 +# Public key uses wrong curve: brainpoolP512t1 +private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 +public = 30819b301406072a8648ce3d020106092b240303020801010e03818200047504d660943a69ab043378e44c034896534a346e0e95f35fcaad3503b490856bfb20a753ecabc6d7bfeec28d057f919923b7d3c086953eb16c5bd287b59788db72dbb7c273854294c927ea7eca205aae2f0830e5faaddad8316231bfc3572c85c33cb7054e04c8936e3ce059c907e59f40593444e590b31820bc1f514ed0ec8a +result = invalid +shared = + +# tcId = 125 +# invalid public key +private = 6f953faff3599e6c762d7f4cabfeed092de2add1df1bc5748c6cbb725cf35458 +public = 3039301306072a8648ce3d020106082a8648ce3d03010703220002fd4bf61763b46581fd9174d623516cf3c81edd40e29ffa2777fb6cb0ae3ce535 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 126 +# public key is a low order point on twist +private = 0d27edf0ff5b6b6b465753e7158370332c153b468a1be087ad0f490bdb99e5f02 +public = 3039301306072a8648ce3d020106082a8648ce3d03010703220003efdde3b32872a9effcf3b94cbf73aa7b39f9683ece9121b9852167f4e3da609b +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 127 +# public key is a low order point on twist +private = 0d27edf0ff5b6b6b465753e7158370332c153b468a1be087ad0f490bdb99e5f03 +public = 3039301306072a8648ce3d020106082a8648ce3d03010703220002efdde3b32872a9effcf3b94cbf73aa7b39f9683ece9121b9852167f4e3da609b +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 128 +# public key is a low order point on twist +private = 095ead84540c2d027aa3130ff1b47888cc1ed67e8dda46156e71ce0991791e835 +public = 3039301306072a8648ce3d020106082a8648ce3d03010703220002c49524b2adfd8f5f972ef554652836e2efb2d306c6d3b0689234cec93ae73db5 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 129 +# public key is a low order point on twist +private = 0a8681ef67fb1f189647d95e8db00c52ceef6d41a85ba0a5bd74c44e8e62c8aa4 +public = 3039301306072a8648ce3d020106082a8648ce3d0301070322000318f9bae7747cd844e98525b7ccd0daf6e1d20a818b2175a9a91e4eae5343bc98 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 130 +# public key is a low order point on twist +private = 0a8681ef67fb1f189647d95e8db00c52ceef6d41a85ba0a5bd74c44e8e62c8aa5 +public = 3039301306072a8648ce3d020106082a8648ce3d0301070322000218f9bae7747cd844e98525b7ccd0daf6e1d20a818b2175a9a91e4eae5343bc98 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 131 +# public key is a low order point on twist +private = 095ead84540c2d027aa3130ff1b47888cc1ed67e8dda46156e71ce0991791e834 +public = 3039301306072a8648ce3d020106082a8648ce3d03010703220003c49524b2adfd8f5f972ef554652836e2efb2d306c6d3b0689234cec93ae73db5 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 132 +# long form encoding of length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 308159301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 133 +# long form encoding of length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305a30811306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 134 +# long form encoding of length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305a30140681072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 135 +# long form encoding of length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305a301406072a8648ce3d02010681082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 136 +# long form encoding of length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305a301306072a8648ce3d020106082a8648ce3d03010703814200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 137 +# length contains leading 0 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30820059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 138 +# length contains leading 0 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b3082001306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 139 +# length contains leading 0 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b3015068200072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 140 +# length contains leading 0 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506072a8648ce3d0201068200082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 141 +# length contains leading 0 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301306072a8648ce3d020106082a8648ce3d0301070382004200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 142 +# wrong length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305a301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 143 +# wrong length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3058301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 144 +# wrong length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301406072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 145 +# wrong length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301206072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 146 +# wrong length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306082a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 147 +# wrong length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306062a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 148 +# wrong length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106092a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 149 +# wrong length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106072a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 150 +# wrong length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034300042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 151 +# wrong length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034100042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 152 +# uint32 overflow in length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30850100000059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 153 +# uint32 overflow in length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e3085010000001306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 154 +# uint32 overflow in length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e3018068501000000072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 155 +# uint32 overflow in length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e301806072a8648ce3d0201068501000000082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 156 +# uint32 overflow in length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e301306072a8648ce3d020106082a8648ce3d0301070385010000004200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 157 +# uint64 overflow in length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3089010000000000000059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 158 +# uint64 overflow in length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3062308901000000000000001306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 159 +# uint64 overflow in length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3062301c06890100000000000000072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 160 +# uint64 overflow in length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3062301c06072a8648ce3d020106890100000000000000082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 161 +# uint64 overflow in length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3062301306072a8648ce3d020106082a8648ce3d030107038901000000000000004200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 162 +# length = 2**31 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30847fffffff301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 163 +# length = 2**31 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d30847fffffff06072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 164 +# length = 2**31 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d301706847fffffff2a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 165 +# length = 2**31 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d301706072a8648ce3d020106847fffffff2a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 166 +# length = 2**31 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d301306072a8648ce3d020106082a8648ce3d03010703847fffffff00042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 167 +# length = 2**32 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3084ffffffff301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 168 +# length = 2**32 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d3084ffffffff06072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 169 +# length = 2**32 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d30170684ffffffff2a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 170 +# length = 2**32 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d301706072a8648ce3d02010684ffffffff2a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 171 +# length = 2**32 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d301306072a8648ce3d020106082a8648ce3d0301070384ffffffff00042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 172 +# length = 2**40 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3085ffffffffff301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 173 +# length = 2**40 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e3085ffffffffff06072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 174 +# length = 2**40 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e30180685ffffffffff2a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 175 +# length = 2**40 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e301806072a8648ce3d02010685ffffffffff2a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 176 +# length = 2**40 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e301306072a8648ce3d020106082a8648ce3d0301070385ffffffffff00042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 177 +# length = 2**64 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3088ffffffffffffffff301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 178 +# length = 2**64 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30613088ffffffffffffffff06072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 179 +# length = 2**64 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301b0688ffffffffffffffff2a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 180 +# length = 2**64 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301b06072a8648ce3d02010688ffffffffffffffff2a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 181 +# length = 2**64 - 1 +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301306072a8648ce3d020106082a8648ce3d0301070388ffffffffffffffff00042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 182 +# incorrect length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30ff301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 183 +# incorrect length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305930ff06072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 184 +# incorrect length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306ff2a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 185 +# incorrect length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106ff2a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 186 +# incorrect length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703ff00042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 187 +# indefinite length without termination +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3080301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 188 +# indefinite length without termination +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059308006072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 189 +# indefinite length without termination +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306802a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 190 +# indefinite length without termination +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106802a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 191 +# indefinite length without termination +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107038000042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 192 +# removing sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 193 +# removing sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3044034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 194 +# lonely sequence tag +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 195 +# lonely sequence tag +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 304530034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 196 +# appending 0's to sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b0000 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 197 +# appending 0's to sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506072a8648ce3d020106082a8648ce3d0301070000034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 198 +# prepending 0's to sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b0000301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 199 +# prepending 0's to sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b3015000006072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 200 +# appending unused 0's to sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b0000 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 201 +# appending unused 0's to sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301306072a8648ce3d020106082a8648ce3d0301070000034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 202 +# appending null value to sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b0500 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 203 +# appending null value to sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506072a8648ce3d020106082a8648ce3d0301070500034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 204 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e4981773059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 205 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d25003059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 206 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b3059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b0004deadbeef +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 207 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e3018498177301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 208 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d30172500301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 209 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30613015301306072a8648ce3d020106082a8648ce3d0301070004deadbeef034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 210 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e3018260c49817706072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 211 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d3017260b250006072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 212 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301b260906072a8648ce3d02010004deadbeef06082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 213 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e301806072a8648ce3d0201260d49817706082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 214 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d301706072a8648ce3d0201260c250006082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 215 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301b06072a8648ce3d0201260a06082a8648ce3d0301070004deadbeef034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 216 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305e301306072a8648ce3d020106082a8648ce3d0301072347498177034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 217 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d301306072a8648ce3d020106082a8648ce3d03010723462500034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 218 +# including garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301306072a8648ce3d020106082a8648ce3d0301072344034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b0004deadbeef +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 219 +# including undefined tags +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061aa00bb00cd003059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 220 +# including undefined tags +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305faa02aabb3059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 221 +# including undefined tags +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301baa00bb00cd00301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 222 +# including undefined tags +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305f3019aa02aabb301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 223 +# including undefined tags +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301b260faa00bb00cd0006072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 224 +# including undefined tags +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305f3019260daa02aabb06072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 225 +# including undefined tags +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301b06072a8648ce3d02012610aa00bb00cd0006082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 226 +# including undefined tags +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305f301906072a8648ce3d0201260eaa02aabb06082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 227 +# including undefined tags +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301306072a8648ce3d020106082a8648ce3d030107234aaa00bb00cd00034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 228 +# including undefined tags +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305f301306072a8648ce3d020106082a8648ce3d0301072348aa02aabb034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 229 +# truncated length of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3081 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 230 +# truncated length of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30463081034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 231 +# Replacing sequence with NULL +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 0500 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 232 +# Replacing sequence with NULL +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30460500034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 233 +# changing tag value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 2e59301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 234 +# changing tag value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 2f59301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 235 +# changing tag value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3159301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 236 +# changing tag value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3259301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 237 +# changing tag value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = ff59301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 238 +# changing tag value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30592e1306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 239 +# changing tag value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30592f1306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 240 +# changing tag value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059311306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 241 +# changing tag value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059321306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 242 +# changing tag value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059ff1306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 243 +# dropping value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3000 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 244 +# dropping value of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30463000034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 245 +# truncate sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3058301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add6 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 246 +# truncate sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30581306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 247 +# truncate sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3058301206072a8648ce3d020106082a8648ce3d0301034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 248 +# truncate sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30583012072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 249 +# indefinite length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3080301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b0000 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 250 +# indefinite length +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b308006072a8648ce3d020106082a8648ce3d0301070000034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 251 +# indefinite length with truncated delimiter +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3080301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b00 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 252 +# indefinite length with truncated delimiter +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305a308006072a8648ce3d020106082a8648ce3d03010700034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 253 +# indefinite length with additional element +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3080301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b05000000 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 254 +# indefinite length with additional element +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d308006072a8648ce3d020106082a8648ce3d03010705000000034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 255 +# indefinite length with truncated element +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3080301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b060811220000 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 256 +# indefinite length with truncated element +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305f308006072a8648ce3d020106082a8648ce3d030107060811220000034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 257 +# indefinite length with garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3080301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b0000fe02beef +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 258 +# indefinite length with garbage +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305f308006072a8648ce3d020106082a8648ce3d0301070000fe02beef034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 259 +# indefinite length with nonempty EOC +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3080301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b0002beef +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 260 +# indefinite length with nonempty EOC +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d308006072a8648ce3d020106082a8648ce3d0301070002beef034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 261 +# prepend empty sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b3000301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 262 +# prepend empty sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b3015300006072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 263 +# append empty sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b3000 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 264 +# append empty sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506072a8648ce3d020106082a8648ce3d0301073000034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 265 +# sequence of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b3059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 266 +# sequence of sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b3015301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 267 +# truncated sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3015301306072a8648ce3d020106082a8648ce3d030107 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 268 +# truncated sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 304f300906072a8648ce3d0201034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 269 +# repeat element in sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30819d301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 270 +# repeat element in sequence +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3063301d06072a8648ce3d020106082a8648ce3d03010706082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 271 +# removing oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3050300a06082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 272 +# lonely oid tag +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3051300b0606082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 273 +# lonely oid tag +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3050300a06072a8648ce3d020106034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 274 +# appending 0's to oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506092a8648ce3d0201000006082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 275 +# appending 0's to oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506072a8648ce3d0201060a2a8648ce3d0301070000034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 276 +# prepending 0's to oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b3015060900002a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 277 +# prepending 0's to oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506072a8648ce3d0201060a00002a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 278 +# appending unused 0's to oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506072a8648ce3d0201000006082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 279 +# appending null value to oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506092a8648ce3d0201050006082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 280 +# appending null value to oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506072a8648ce3d0201060a2a8648ce3d0301070500034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 281 +# truncated length of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3052300c068106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 282 +# truncated length of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3051300b06072a8648ce3d02010681034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 283 +# Replacing oid with NULL +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3052300c050006082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 284 +# Replacing oid with NULL +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3051300b06072a8648ce3d02010500034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 285 +# changing tag value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301304072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 286 +# changing tag value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301305072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 287 +# changing tag value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301307072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 288 +# changing tag value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301308072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 289 +# changing tag value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 30593013ff072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 290 +# changing tag value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020104082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 291 +# changing tag value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020105082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 292 +# changing tag value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020107082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 293 +# changing tag value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020108082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 294 +# changing tag value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d0201ff082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 295 +# dropping value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3052300c060006082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 296 +# dropping value of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3051300b06072a8648ce3d02010600034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 297 +# modify first byte of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305930130607288648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 298 +# modify first byte of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d02010608288648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 299 +# modify last byte of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d028106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 300 +# modify last byte of oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030187034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 301 +# truncate oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3058301206062a8648ce3d0206082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 302 +# truncate oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3058301206068648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 303 +# truncate oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3058301206072a8648ce3d020106072a8648ce3d0301034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 304 +# truncate oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3058301206072a8648ce3d020106078648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 305 +# wrong oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305c3016060a3262306530333032316106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 306 +# wrong oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3064301e061236303836343830313635303330343032303106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 307 +# wrong oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301506072a8648ce3d0201060a32623065303330323161034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 308 +# wrong oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3063301d06072a8648ce3d02010612363038363438303136353033303430323031034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 309 +# longer oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3062301c06103261383634386365336430323031303106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 310 +# longer oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3063301d06072a8648ce3d02010612326138363438636533643033303130373031034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 311 +# oid with modified node +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3060301a060e326138363438636533643032313106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 312 +# oid with modified node +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3068302206163261383634386365336430323838383038303830303106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 313 +# oid with modified node +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3061301b06072a8648ce3d0201061032613836343863653364303330313137034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 314 +# oid with modified node +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3069302306072a8648ce3d02010618326138363438636533643033303138383830383038303037034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 315 +# large integer in oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3072302c0620326138363438636533643032383238303830383038303830383038303830303106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 316 +# large integer in oid +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3073302d06072a8648ce3d0201062232613836343863653364303330313832383038303830383038303830383038303037034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 317 +# oid with invalid node +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3063301d0611326138363438636533643032303165303306082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 318 +# oid with invalid node +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305a301406082a808648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 319 +# oid with invalid node +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3064301e06072a8648ce3d0201061332613836343863653364303330313037653033034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 320 +# oid with invalid node +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305a301406072a8648ce3d020106092a808648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 321 +# lonely bit string tag +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3016301306072a8648ce3d020106082a8648ce3d03010703 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 322 +# appending 0's to bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301306072a8648ce3d020106082a8648ce3d030107034400042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b0000 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 323 +# prepending 0's to bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301306072a8648ce3d020106082a8648ce3d0301070344000000042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 324 +# appending null value to bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305b301306072a8648ce3d020106082a8648ce3d030107034400042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b0500 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 325 +# truncated length of bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3017301306072a8648ce3d020106082a8648ce3d0301070381 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 326 +# Replacing bit string with NULL +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3017301306072a8648ce3d020106082a8648ce3d0301070500 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 327 +# changing tag value of bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107014200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 328 +# changing tag value of bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107024200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 329 +# changing tag value of bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107044200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 330 +# changing tag value of bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107054200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 331 +# changing tag value of bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107ff4200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 332 +# dropping value of bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3017301306072a8648ce3d020106082a8648ce3d0301070300 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 333 +# modify first byte of bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034202042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 334 +# modify last byte of bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add6eb +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 335 +# truncate bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3058301306072a8648ce3d020106082a8648ce3d030107034100042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add6 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 336 +# truncate bit string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3058301306072a8648ce3d020106082a8648ce3d0301070341042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 337 +# declaring bits as unused in a bit-string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034201042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 338 +# unused bits in a bit-string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 305d301306072a8648ce3d020106082a8648ce3d030107034620042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b01020304 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 339 +# unused bits in empty bit-string +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3018301306072a8648ce3d020106082a8648ce3d030107030103 +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 340 +# 128 unused bits +private = 0c9551ffe53ce60d73cbf8af553d0cb5f7632ece499590182c28cb6db2e3978d2 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034280042998705a9a71c783e1cf4397dbed9375a44e4cb88053594b0ea982203b6363b063d0af4971d1c3813db3c7799f9f9324cbe1b90054c81b510ff6297160add66b +result = acceptable +shared = f0b6d851dcd8e9a8c474d695137962f082c4f2a1a2eefb182df58d88a72829e4 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. +
diff --git a/third_party/wycheproof_testvectors/ecdh_secp384r1_test.txt b/third_party/wycheproof_testvectors/ecdh_secp384r1_test.txt new file mode 100644 index 0000000..80d726a --- /dev/null +++ b/third_party/wycheproof_testvectors/ecdh_secp384r1_test.txt
@@ -0,0 +1,3087 @@ +# Imported from Wycheproof's ecdh_secp384r1_test.json. +# This file is generated by convert_wycheproof.go. Do not edit by hand. +# +# Algorithm: ECDH +# Generator version: 0.4.12 + +[curve = secp384r1] +[encoding = asn] + +# tcId = 1 +# normal case +private = 766e61425b2da9f846c09fc3564b93a6f8603b7392c785165bf20da948c49fd1fb1dee4edd64356b9f21c588b75dfd81 +public = 3076301006072a8648ce3d020106052b8104002203620004790a6e059ef9a5940163183d4a7809135d29791643fc43a2f17ee8bf677ab84f791b64a6be15969ffa012dd9185d8796d9b954baa8a75e82df711b3b56eadff6b0f668c3b26b4b1aeb308a1fcc1c680d329a6705025f1c98a0b5e5bfcb163caa +result = valid +shared = 6461defb95d996b24296f5a1832b34db05ed031114fbe7d98d098f93859866e4de1e229da71fef0c77fe49b249190135 + +# tcId = 2 +# compressed public key +private = 766e61425b2da9f846c09fc3564b93a6f8603b7392c785165bf20da948c49fd1fb1dee4edd64356b9f21c588b75dfd81 +public = 3046301006072a8648ce3d020106052b8104002203320002790a6e059ef9a5940163183d4a7809135d29791643fc43a2f17ee8bf677ab84f791b64a6be15969ffa012dd9185d8796 +result = acceptable +shared = 6461defb95d996b24296f5a1832b34db05ed031114fbe7d98d098f93859866e4de1e229da71fef0c77fe49b249190135 +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 3 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004490e96d17f4c6ceccd45def408cea33e9704a5f1b01a3de2eaaa3409fd160d78d395d6b3b003d71fd1f590fad95bf1c9d8665efc2070d059aa847125c2f707435955535c7c5df6d6c079ec806dce6b6849d337140db7ca50616f9456de1323c4 +result = valid +shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + +# tcId = 4 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b81040022036200040161328909675213e32098d35a6b8308a8d500cca39dcee5e804e73bdb8deaf06fe417291fd9793b231ef5fe86945444a97a01f3ae3a8310c4af49b592cb291ef70ee5bc7f5534d3c23dc9eefde2304842c7737ae937ccf9bd215c28103e9fe2 +result = valid +shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002 + +# tcId = 5 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004af4ae964e3bcbd923accda5da3175d411fd62d17dd3c3a1c410bef1730985a6265d90e950ac0fc50743b1ed771906ff33b68cf4d3d83a885a87097fdd329ce83b189f98cec5be44c31d1a3a2bba10f471963232b8ba7610fa8c72179050eb86d +result = valid +shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003 + +# tcId = 6 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b81040022036200041478ab6e032b9545eda9ac2c264e57a11f08acbc76d16a0ab77b04dbdaf20f215c4183437b32afc471eaa603d14c7c5d8a4c84ee0e895bec5c37f0a1ca075e106ff6bf38801b5c697409d39675231108d33c4a5ea65aaa8c03e939c95d96c4c4 +result = valid +shared = 0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff00000000000000010000000000000001 + +# tcId = 7 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004f63208e34e7e90bb5fb036432467a89981444010663b8533b47bfa94bd2bc16f38aa516b930a4726e3876d3091bfb72ec783ed4da0cac06320817dc8bc64f59ccf06f48abc4386a150913fa95743a7b4601190e1c6ee8f8bf6354b254ecace45 +result = valid +shared = 00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff + +# tcId = 8 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004033271ef42d92ad47b273b09ea2f45401161baa52696590d0e175ff2d1c0dfa3fea40e4266d446546c05e480d57fabec7889f16a8bcc176602f6d46561614a2f4284abe697b7cb9ce79f7e2e71b155cb1f155ce925d16391a680eda23152e6e1 +result = valid +shared = 0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff + +# tcId = 9 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004737e8437e18683de2455b68945bba31daec3e754d72f0a0776d3192b2f9298bb95ca1464baa6687aabb679f804cf6ec6c2b4d47d61a60404df63b1e9ac0954b3419bbc2ad52a0409aeeb82f4703758588059165b20367dcb4b235b0caf71d727 +result = valid +shared = 007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0008000 + +# tcId = 10 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b810400220362000437f9004983156bbd9c47891e75237bb13016bd7fe6f4e0f71cef0e63f16a672f0d3b0e20165c33407e146b6a4ae6962dd3b57ccb99e7aaf1303240516d0ebe08e585513e3695d42c467dcab5340ef761990cadc8d8840aacc944481415c07feb +result = valid +shared = 3b5eed80727bcbc5113b8a9e4db1c81b1dddc2d99ff56d9c3c1054348913bde296311c4bd2fa899b4d0e66aaa1b6a0dd + +# tcId = 11 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b81040022036200049655d8e5622718b317cfbc09894357f75a6b13fa516bcd6630721b869a620196cf0c3dec8860b32d27ed9bac2cf263af17321698116d7d811ae8da9b9cbbf9382c1e36e2b67d6c6af9bcea7d9de00ca72b398606c098a0a0f0c4b8941943ed65 +result = valid +shared = 6a99a5acd4a7edb1c707d7f8be12e81140338e3e14ba563c703c681a319a3f9ce1f90f032bf840f3758e89cb852ceca6 + +# tcId = 12 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004ccb13d427b3c4bb33dd4f20cddabc68600eaf97eeb2c81e8c218ae90743e74ff38ca56f0c0224379db464dcf4a40f04350cd7a659b2c4851a5dcf8c990fc920c07d4d5aa50a2185750e6b84c42e83cff635050482decb4780f812e4c49fc7404 +result = valid +shared = 7c25a4f57f76ab13b25cab3c265db9d9bd925fecbf7bf93bef1308778646628decab067ed988a9755cd88e88de367104 + +# tcId = 13 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b81040022036200042664624307c02ef487030a632162c515f841d15ea3152d98ff2364232d7aab39343d5f703a4d5a31092aa7356c3a2f671c1cd603addfd8b5477552a3b32a18edaf3e33bec22ee2167f9da729636002a7974eaeb5ff082b2aabf8c7056b84c3ab +result = valid +shared = 7fffffe000000ffffffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff8000004000002 + +# tcId = 14 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004665f1f320b6ab1c1b52d144e52d87a154c2b4489838c9119de622c2d1b52b65b0a3955e44e0d4859175360c0f63dee813f14f69972f18caed7916c94a4d20ec344591e7536a4a7a4d8c9832818c96d60b1a81fabe64ea02c5f647e361bf5b60f +result = valid +shared = 800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002 + +# tcId = 15 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b810400220362000491357ca87dbb08e85d7b1acecfd1e086078a82d19f81474da389364a39fe2543eb934b440173c38e61a1d9407855b5d89ef0d9e920764b6d7765b084cf9541dacc43d1dabaa390b0fb856097b0c00a8556f4e3848568ab4ae790c3d346ca01b6 +result = valid +shared = fff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff + +# tcId = 16 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004d5a833bae33b2d10fdff6db7c5477adb614b191c70d97c6f130a14e93931cc1dc058053fee54a264a00fdd16d3166fdc42992276b79925bafcd183b03ed18235350980abfe67b814c6c11074c38f74cd4e734ad58cdb49d9fcd2181d1b8f1119 +result = valid +shared = fffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000004000000 + +# tcId = 17 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b810400220362000467547cda7fbe8f16be5a4477cbb02979f1af72fc0f39302773552fbcf4667a8e23abc0e12856ee6234deeca5f22ae0503a4df7c068e7432417260cb9fe0d68b9c7fcf7e16a2ada05687d8f8900b84723103edbff0a42b27517da2760b7d38843 +result = valid +shared = ffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff + +# tcId = 18 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b81040022036200041363e3b99008e09bb3f085949b9b6ea26a318f496de568a96630fdb9d4c72c2814df3087a1741f32f24989b428167f93c653cb3ae8c3ecfaec57efd54bb8ce9d79c7bf6cc70fb1114f939be8f1a99bf1e42b97431124ef9fa33450faa4e76839 +result = valid +shared = ffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff0000000000000100000000000001 + +# tcId = 19 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004ba2be8d7147e2417c2ec80b24b4c1aa94464ffd0aae1fa2e078b3afbc77c144489ca9d064acbb7a9cfa6196d0f467b7e65ee1ca1eb1351ff9968f553dfe2e4c59ff8ba34c22a42b3baa13a9a1adc7f13abd40f1fd25d46bc5330852b9371966a +result = valid +shared = ffffffffffffffffffffffffffffffff00000000000000000000000000000000ffffffffffffffffffffffffffffffff + +# tcId = 20 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004d69850ccbacc4736ea200ff2f8488f26247945a2ab48dd3708f494b293d8cba83417f48974881c7fb03854089bbf66cc1c773ec03cb8cd5f007ec3b03bdd05a409b352103f0decf25b41673ab8ca3d04334babee01219f15701f2bca22d40b37 +result = valid +shared = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe + +# tcId = 21 +# y-coordinate of the public key has many trailing 0's +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b81040022036200046fcaf82d982d222d6096ba83e55b1c7dcb71a41e88f323333f44284d95c4bd3616da7a1bef928f31c26f885ba7adb487826fde2ed9f5649c11cf8465f8bf8ad50f68914936fc39666f68219d066506bea4001fdc816c9a90e7e2afb19bea085f +result = valid +shared = 000000000000000000000000000000000000000000000000000000001f03123b00000000000000000000000000000000 + +# tcId = 22 +# y-coordinate of the public key has many trailing 1's +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b81040022036200046fcaf82d982d222d6096ba83e55b1c7dcb71a41e88f323333f44284d95c4bd3616da7a1bef928f31c26f885ba7adb4877d9021d1260a9b63ee307b9a0740752af0976eb6c903c6999097de62f99af9405bffe0227e93656f181d504f6415f7a0 +result = valid +shared = 000000000000000000000000000000000000000000000000000000001f03123b00000000000000000000000000000000 + +# tcId = 23 +# y-coordinate of the public key is small +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004bfeb47fb40a65878e6b642f40b8e15022ade9ecfa8cb618043063494e2bc5d2df10d36f37869b58ef12dcc35e3982835fd2e55ec41fdfe8cabbbb7bcd8163645a19e9dac59630f3fe93b208094ff87cd461b53cef53482e70e2e8ea87200cc3f +result = valid +shared = 0000000000000000000000000000000000000000000000000000000036a2907c00000000000000000000000000000000 + +# tcId = 24 +# y-coordinate of the public key is large +private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 +public = 3076301006072a8648ce3d020106052b8104002203620004bfeb47fb40a65878e6b642f40b8e15022ade9ecfa8cb618043063494e2bc5d2df10d36f37869b58ef12dcc35e398283502d1aa13be0201735444484327e9c9ba5e616253a69cf0c016c4df7f6b007831b9e4ac300acb7d18f1d171588dff33c0 +result = valid +shared = 0000000000000000000000000000000000000000000000000000000036a2907c00000000000000000000000000000000 + +# tcId = 25 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003cf99ef04f51a5ea630ba3f9f960dd593a14c9be39fd2bd215d3b4b08aaaf86bbf927f2c46e52ab06fb742b8850e521e +result = valid +shared = 6092a1757ddd43a04e185ff9472a0d18c7f7a7dc802f7e059e0c69ae16c802651719406e04de27652ff83da4a780ef2f + +# tcId = 26 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002732152442fb6ee5c3e6ce1d920c059bc623563814d79042b903ce60f1d4487fccd450a86da03f3e6ed525d02017bfdb3 +result = valid +shared = 89c804cb81443386b185bcd9e2e6c35ee6177c3b90298985c4e81a89d520cceb17d729540e56ecc343c26bf314f2d052 + +# tcId = 27 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036660041b1c7984620e8d7fd7ccdb50cc3ba816da14d41a4d8affaba8488867f0ca5a24f8d42dd7e44b530a27dc5b58da +result = valid +shared = 35513157e804bd918d04de202778b81a6fc7ad8aa541ee94116a0f18466725d75e71c6942bf044b1b0ecba19db33e0de + +# tcId = 28 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200040000000000000000ffffffffffffffff0000000000000000ffffffffffffffff00000000000000010000000000000001141b9ee5310ea8170131b604484a6d677ed42576045b7143c026710ae92b277afbbea0c4458c220d561e69404dc7d888 +result = valid +shared = 102080c047881d19aefb01c29c82a4fb328a8ea6e6d6c914af73100507c8ee499799aaa646de0ea8c2727c0b5ed2439b + +# tcId = 29 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b810400220362000400000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff70370385413d3eff6fa3407ba24f682c2b01b51445dbdf5ef7b0dd0979f17e713e09081571f1e94dfb66bf282002f39f +result = valid +shared = f689f6e475b4e15162521acab4637a3cdb9cb42aa92f9114b0ee300ddae89d5eafff3463a1f5004a2a1bd4aeffa47b78 + +# tcId = 30 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200040000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff112e191f1f78bbc54b6cc4f0b1e59ae8c6ff1a07f5128e41dfa2828e1b6538d4fa2ca2394c6aab3449dcb3fc4eb44c09 +result = valid +shared = f3486244119b3632fd55be9e6951eb5d9c8c62f6a27042f94b924155ecfd4ff8744ba3d25bcf85a7b925bd28a12b897f + +# tcId = 31 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b8104002203620004007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0008000028a4c8da5a05112fe6025ef41908969de20d05d9668e5c852ef2d492172ddc2a0a622fc488164fcc1a076b872942af2 +result = valid +shared = 8171b7c80d4c90bb58ae54393921ab9c5c0b3196f045e9fe5c8b168f0e5f6a77e1aa34ecedc5481ce55ab34c14e0f2e8 + +# tcId = 32 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200043b5eed80727bcbc5113b8a9e4db1c81b1dddc2d99ff56d9c3c1054348913bde296311c4bd2fa899b4d0e66aaa1b6a0dd7b7f0f28d55e2f3a50f1f1bef3976834a05b43418e979303bc0363ed16d2d0b4011cc37b3c06ad73154faeab7915cd87 +result = valid +shared = 1fe6fea5f00d3005abaae2267ff18e430915838d87909ab503885edf38be7618ecb321f0a4df71b0913fbf12c76fc1f0 + +# tcId = 33 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200046a99a5acd4a7edb1c707d7f8be12e81140338e3e14ba563c703c681a319a3f9ce1f90f032bf840f3758e89cb852ceca63cf99ef04f51a5ea630ba3f9f960dd593a14c9be39fd2bd215d3b4b08aaaf86bbf927f2c46e52ab06fb742b8850e521e +result = valid +shared = f58adc13ff997d38383910db7befb17670393a33d95b049c2aa19d760c8e728ecedd32168476b90b26a3742dcc121b07 + +# tcId = 34 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200047c25a4f57f76ab13b25cab3c265db9d9bd925fecbf7bf93bef1308778646628decab067ed988a9755cd88e88de367104562ee0c57e71d96cefe31b4c4045bd4086a38e8ab9adf2d5567be318051d70f3aa68b753f271ab032b6abcce919e2962 +result = valid +shared = 56299684ec5ceb09ba4d94d1231005a826c9c08a5219c757e0136cbe8b6430badd4925172f2939891da7c7893850512f + +# tcId = 35 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200047fffffe000000ffffffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff80000040000024480ab33cb4bf7cb79c024eeade3fd641e2f3003698400e8986a7343a5da59a3b26eea4b4176e53239371437d834a1a7 +result = valid +shared = 1911a0ee6aebe263fdcf3db073f2598cdafabec2123a2f24a28c3d9151c871f32d6dc2f31d25af9c498fd68da23e5bef + +# tcId = 36 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200048000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020797da4c0751ced16de80d16ab7c654a5dc27d092626d0865a192a1c5ea7c1b88c9fcab057946741e41cc28c80ec0b9a +result = valid +shared = 15900643e2e0583976974b05f83c7a96611425f7c4a6eb51916ab958a037fd9cc172bdcfff4540a2ff3ce64e6505557e + +# tcId = 37 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b8104002203620004fff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff6c70898ae6fb31fa2f086562af2d10486ba4c6fd5e41dfe4aa61598b4707a3bc276a62feb1b98557e3b17c025f7adf4e +result = valid +shared = 88a544a769d5c34a051416bd509dfac911863f604c83ea844bf0e4c5c272dec86d057a88b152a9274701938c705900c3 + +# tcId = 38 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b8104002203620004fffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff00000040000000eb1592858b6e6e3a199c0f3e7c5f0b4a92915936efb8bc0407680eb7274be7422156ce8cfc8b505b2d902c39992380f +result = valid +shared = b7db26b286e7527cb1f454782fe541862ff0f8d7eed960e22855deb7ac2a69611668c777c53bb74c2bcd40edfbf7944d + +# tcId = 39 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b8104002203620004ffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff4987abae412809c2fa48fd23b1bdf9e622f5a606c44117215ffa61b18ef46e54a7fbbf11f9a6ba59c991b4ae501fedce +result = valid +shared = b1e8aab1aa633d98dc6b768594e1e3edb801a9ef483f287c83e19744d2ad343ad3debdc4dc178213ad6876b52284f552 + +# tcId = 40 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b8104002203620004ffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff00000000000001000000000000013691fe493d4d28bf8ee1dfec812d6c306eae0842919eda6dc525f0d49ac2d26a992251912139a2936849f9d6fa949a68 +result = valid +shared = b0de006f80f6f89e4eea6e46dfe305153005612d1e903171ec2886230971961b5202a9f3187bdac413ac24c836adf7a0 + +# tcId = 41 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b8104002203620004ffffffffffffffffffffffffffffffff00000000000000000000000000000000ffffffffffffffffffffffffffffffff615842aa06b06f78f0a66f7bea88d4b6ee59653eeaa00dc5e0a2b658f969b71af90c9b4e96bd3ca33846955bdccbd359 +result = valid +shared = ca8cfa42c5e374914c14d6402b1a99208e47e02ec49818913694ea0822a2cc6c310259a8f3ab7559b9974bc4c2fa337e + +# tcId = 42 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe732152442fb6ee5c3e6ce1d920c059bc623563814d79042b903ce60f1d4487fccd450a86da03f3e6ed525d02017bfdb3 +result = valid +shared = edf040bace18d90bf9ce720df2a3b31d76d95b7ed9530a159ac0b24e82a871033eada40552f9e606f7115e6a78927511 + +# tcId = 43 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000001f03123b0000000000000000000000000000000071bd1e700c34075c3cade8ce29d33724af68a7672b265a4e157055360440ab7c461b8e9ac8024e63a8b9c17c00000000 +result = valid +shared = ea817dff44f1944a38444498f1b6c1a70a8b913aa326bc2acc5068805d8ddd7a5e41b8ee5b8371a1cf3f7a094258e3a6 + +# tcId = 44 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000001f03123b000000000000000000000000000000008e42e18ff3cbf8a3c3521731d62cc8db50975898d4d9a5b1ea8faac9fbbf5482b9e4716437fdb19c57463e84ffffffff +result = valid +shared = ea817dff44f1944a38444498f1b6c1a70a8b913aa326bc2acc5068805d8ddd7a5e41b8ee5b8371a1cf3f7a094258e3a6 + +# tcId = 45 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200040000000000000000000000000000000000000000000000000000000036a2907c00000000000000000000000000000000000000007f57b69a014783dbfa4967b2f9cfa678a6f0b6e9cfd41648cec5b3c498e72152da3f82d3da2e8e9f8ef37b11 +result = valid +shared = bfa93e184f76279fd707d53ddcb3628855cfafb111bcbd0b4df6ef77aee624924d681626a153fa4e59c923b71fc090b3 + +# tcId = 46 +# edge cases for ephemeral key +private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 +public = 3076301006072a8648ce3d020106052b81040022036200040000000000000000000000000000000000000000000000000000000036a2907c00000000000000000000000000000000ffffffff80a84965feb87c2405b6984d06305987590f4916302be9b7313a4c3a6718deac25c07d2c25d17161710c84ee +result = valid +shared = bfa93e184f76279fd707d53ddcb3628855cfafb111bcbd0b4df6ef77aee624924d681626a153fa4e59c923b71fc090b3 + +# tcId = 47 +# edge case private key +private = 3 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = 455aea9924330bd6d2d6403478327900e172e93598e254cf6d8eb13f0a3d21be51a46107333844e61dfa3d80df6928e9 + +# tcId = 48 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = db1d8ef1117282870db8113aa4f58723c756ce598686eb8ea531aa4d39abb1b982b1e7bb2648a6c268d2d351204db8d5 + +# tcId = 49 +# edge case private key +private = 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = e98062df47ef884c9411e16466af84ad271d586008b1fbc50aeb3b36836a35a770dd42e0db84d39b26f4dcd2dc03d90b + +# tcId = 50 +# edge case private key +private = 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = 898aae0ebf1cb49fb6b1234d60f59006325421049a8a320820e1ad6af6593cdc2229a08c500aa55ca05999d12829db9c + +# tcId = 51 +# edge case private key +private = 0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = 83f862f496ab8af12b82a8a0c047d836bdfa36281324b3a1eb2e9c1d46699d81cb125cbe4b93939fd84e1ae86d8a83cb + +# tcId = 52 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a779ecec196accc52973 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = 9a26894887a0342ca559a74a4d4a8e1d6b2084f02e1c65b3097121a9a9af047d8810fb945dc25bbf02222b3b625f1e0a + +# tcId = 53 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecdc196accc52973 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = 8a8d9dc194a26910cbdae7908d185b6ad04b620c94c5ee331e584ed804e495bebc2290a2d7006a06e65b9bcace86c6f6 + +# tcId = 54 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aece4196accc52973 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = d57f6aa12d3f07e8958499f249e52cfbe5be58482e146c5414dbbf984fc5333710350e2ce96b33beb7678381f40f1dcb + +# tcId = 55 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec1969ccc52973 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = 188e8041d9a5f0b6cfdad315ada4823beda0146774fad65b500e6ef94376ebf8af7a40ff6f6b45019a09dde7d7fb5552 + +# tcId = 56 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52959 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = 2ecf9dc47e8b07ae61ddbd1680ead02698e9e8469f78d5a28328e48d0c9d7a2ac787e50cba58cc44a32fb1235d2d7027 +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 57 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52969 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = 06ee9f55079d3d3c18c683ba33e0d2521be97c4fbf7917bf3b6287d58ffcde2df88842e3f5530b39549ac20974b1b60e +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 58 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52970 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = 455aea9924330bd6d2d6403478327900e172e93598e254cf6d8eb13f0a3d21be51a46107333844e61dfa3d80df6928e9 + +# tcId = 59 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52971 +public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e +result = valid +shared = 024c5281487216058270cd1cfe259e948310e4adc263a9edaa4da0bc3f5f8ce8ffc88ae41b2c050bf6dd9c8c66857237 +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 60 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 61 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 62 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe +result = invalid +shared = + +# tcId = 63 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff +result = invalid +shared = + +# tcId = 64 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 65 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 66 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe +result = invalid +shared = + +# tcId = 67 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff +result = invalid +shared = + +# tcId = 68 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 69 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 70 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe +result = invalid +shared = + +# tcId = 71 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff +result = invalid +shared = + +# tcId = 72 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 73 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 74 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe +result = invalid +shared = + +# tcId = 75 +# point is not on curve +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff +result = invalid +shared = + +# tcId = 76 +private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 +public = 3015301006072a8648ce3d020106052b81040022030100 +result = invalid +shared = + +# tcId = 77 +# public point not on curve +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 3076301006072a8648ce3d020106052b81040022036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c8 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 78 +# public point = (0,0) +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 79 +# order = +# -39402006196394479212279040100143613805079739270465446667946905279627659399113263569398956308152294913554433653942643 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f0231ff000000000000000000000000000000000000000000000000389cb27e0bc8d220a7e5f24db74f58851313e695333ad68d020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = invalid +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 80 +# order = 0 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201853082011d06072a8648ce3d020130820110020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f020100020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = invalid +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 81 +# order = 1 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201853082011d06072a8648ce3d020130820110020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f020101020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = acceptable +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 82 +# order = +# 9173994463960286046443283581208347763186259956673124494950032159599396260248791326163093631191247821216106 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201b13082014906072a8648ce3d02013082013c020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f022d00ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196a020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = acceptable +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 83 +# generator = (0,0) +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = acceptable +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 84 +# generator not on curve +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e61023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = acceptable +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 85 +# cofactor = -1 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc529730201ff036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = invalid +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 86 +# cofactor = 0 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973020100036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = invalid +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 87 +# cofactor = 2 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973020102036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = acceptable +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 88 +# cofactor = +# 39402006196394479212279040100143613805079739270465446667946905279627659399113263569398956308152294913554433653942643 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201e53082017d06072a8648ce3d020130820170020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = invalid +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 89 +# cofactor = None +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201b23082014a06072a8648ce3d02013082013d020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = acceptable +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 90 +# modified prime +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100f47e533e4e43e4bf04e901db0eea6efba14bbcdc3b1c5753a7c141487e4f43784e57a72310202323361f44760c8368bf306404300b81acc1b1bc1b40fb16fe24f11591045eb44323c4e3a8ac583ebeb781b0bc86b1a858dbefdfdcdcc9e0bb8af37c973d0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef04610400000000000000000000000000000000fffffffffffd38000000000000000000000000000000000000000000000001cf3646298bba2f24e84189cf0d1e75188fc4fcf5b0844281822e789e3d534b159f4c419342260197625ad924a2c72c4d0f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc529730201010362000400000000000000000000000000000000fffffffffffd38000000000000000000000000000000000000000000000001cf3646298bba2f24e84189cf0d1e75188fc4fcf5b0844281822e789e3d534b159f4c419342260197625ad924a2c72c4d0f +result = invalid +shared = 5df0762488bc0a7be1121508949382861f781c331676048c2d45d245be6f476c872113e6710bc746c3d06970510193ce +# The modulus of the public key has been modified. The public point of the +# public key has been chosen so that it is both a point on both the curve of the +# modified public key and the private key. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 91 +# using secp224r1 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 304e301006072a8648ce3d020106052b81040021033a0004074f56dc2ea648ef89c3b72e23bbd2da36f60243e4d2067b70604af1c2165cec2f86603d60c8a611d5b84ba3d91dfe1a480825bcc4af3bcf +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 92 +# using secp256r1 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004cbf6606595a3ee50f9fceaa2798c2740c82540516b4e5a7d361ff24e9dd15364e5408b2e679f9d5310d1f6893b36ce16b4a507509175fcb52aea53b781556b39 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 93 +# using secp256k1 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 3056301006072a8648ce3d020106052b8104000a03420004a1263e75b87ae0937060ff1472f330ee55cdf8f4329d6284a9ebfbcc856c11684225e72cbebff41e54fb6f00e11afe53a17937bedbf2df787f8ef9584f775838 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 94 +# a = 0 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201863082011e06072a8648ce3d020130820111020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff303504010004304fcc45ccf5e23ee407b9291d2e85523962a2a79a50da3facca04b7267ad316db202cb07c24905740d201ded3028881090461042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 +result = acceptable +shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 95 +# public key of order 3 +private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 +public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430d5d9a63564e6f51f051c1d8272d6d7b0c005f95ec949ab25c202e3392111ae93bac9c835802fa5ac20d1656d35a333fc0430b1fe2e222bf5a03e2e8a676a529a5583237dc76b25d747b9dc4c51159d51bef52456c83b927c64da7512aca99605480b04610471acb2a68e98de42473717a8873eb556e8a26237207605f16b96ff6511717f5b9e5d039fbb093c5e2c27af63c20cff3545867f2c325566f298770d2da6cc39f81e6ee5fb8c383e91771f962e5a60a63350d72793359f61f2da9493989eaa29a5023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc529730201010362000471acb2a68e98de42473717a8873eb556e8a26237207605f16b96ff6511717f5b9e5d039fbb093c5e2c27af63c20cff35ba7980d3cdaa990d6788f2d25933c607e1911a0473c7c16e88e069d1a59f59cbaf28d86bca609e0d256b6c686155d65a +result = invalid +shared = dca6f0f2efbc90881cbbcf53d09634e8af0909384113f236165d1c05cbda054394312114317b87d251cc176db3e3dcb6 +# The vector contains a weak public key. The curve is not a named curve, the +# public key point has order 3 and has been chosen to be on the same curve as +# the private key. This test vector is used to check ECC implementations for +# missing steps in the verification of the public key. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 96 +# Public key uses wrong curve: secp224r1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 304e301006072a8648ce3d020106052b81040021033a00040710b0c6f4675459f3df2bdf7ca02819f8086198d15c69b8abda37639e6031caca8a0121894d2491d8b3dce093703c70705bc5dbc8fa17c8 +result = invalid +shared = + +# tcId = 97 +# Public key uses wrong curve: secp256r1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 3059301306072a8648ce3d020106082a8648ce3d030107034200045fa4fa0b235c21e5c9f3baea9303bf86eccb7d31d0b998e141bc54b5dc43b23eef7fc5cf56308ed595eee99ade6aaf74d591c3d00aa1b438abc59c9607c22c36 +result = invalid +shared = + +# tcId = 98 +# Public key uses wrong curve: secp521r1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 30819b301006072a8648ce3d020106052b810400230381860004005bce61fe27c440fedbad47d88bccf645db9c1d30daa086e592e8b6a0a173b87991b619801907b420fa558c7953ab97badd9c6c1d85859d9ebef7441a088ff57ed5008d7638de703faabeb5a78e83e8fcd4eb786144a75d79bd4cc8cfa8be66612d756c7b65c67f72c6acbade6f0d59e9752e845205b2a560d4f8d6a9e84bf812f94d18 +result = invalid +shared = + +# tcId = 99 +# Public key uses wrong curve: secp256k1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 3056301006072a8648ce3d020106052b8104000a03420004a69ced11a8bf7a907bfa47cba3368f2498b465a2407c90649c8da224d2a85bf445ad2df3d0113e72aedccf92ba6b8529ed6faa154bc27aba25f49371981e3b38 +result = invalid +shared = + +# tcId = 100 +# Public key uses wrong curve: brainpoolP224r1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 3052301406072a8648ce3d020106092b2403030208010105033a0004a9b0f90e49a57fbe508847bf16e4a7b565dfe870a50164bc2862fe6e4d54bd8b109939f7dbbf800522722b9c0b309ace3884abb69c927ad0 +result = invalid +shared = + +# tcId = 101 +# Public key uses wrong curve: brainpoolP256r1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 305a301406072a8648ce3d020106092b240303020801010703420004512fe17172db1125a49f9dbb85e387869adf015e4899c06f66ef870d72092d4d195e1d21b4a4647bf734468bee802ddad5449202eba1041df2fd8cde04697237 +result = invalid +shared = + +# tcId = 102 +# Public key uses wrong curve: brainpoolP320r1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 306a301406072a8648ce3d020106092b240303020801010903520004c391dc7a817d47a3961ea1857895e101c0f5a8767d3a9c7cad49f7af8029f24c67309373cedd0831ccc0a0f45d344f3ab5923d2452507a980301a283848ae31574a57db51ce5e61d35aee483f1bb8e66 +result = invalid +shared = + +# tcId = 103 +# Public key uses wrong curve: brainpoolP384r1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 307a301406072a8648ce3d020106092b240303020801010b0362000419d3c811c04c5c0990d0258386195b2e29fdaba58d3f12b0bac8d3d53828c66c7a35e3d1eb0bdf2c08f23d0e4ab6a3246e456bf0fb863d03423dbe431baf799657c7816a619662fe5b900b754107ba5cc06b1d62c9a927891efee1a1fd404d7e +result = invalid +shared = + +# tcId = 104 +# Public key uses wrong curve: brainpoolP512r1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 30819b301406072a8648ce3d020106092b240303020801010d0381820004216eb619457f1168ac873f5b560a75df80749f2bdf9abac31d6580e521ad70368013c3db74f663263b61eb12d4dcd597ad6c77cef6a5d6d2240b1e244d76403f693fb317ffc602a7ac313991b0a62f7bf469bbc95b3ff35003d972eb8ebcc8d4833e6c24ad52d49c1ce6244c7889ab67a8818232e192944542763fc667e5799d +result = invalid +shared = + +# tcId = 105 +# Public key uses wrong curve: brainpoolP224t1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 3052301406072a8648ce3d020106092b2403030208010106033a0004691b24004380a599770214d0c60ab37cfc804cfaa7aedd11cbf0a05467ebec5e33322cda707b848086fd740244f62cdeb867fc057207fde2 +result = invalid +shared = + +# tcId = 106 +# Public key uses wrong curve: brainpoolP256t1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 305a301406072a8648ce3d020106092b24030302080101080342000422bf69f3a81dfa1ed8a97301943626e20377b78f7e7d714b880deb5a4a9c63a11591c2e47b777488990771855768b9a4050d61bf02d84cc6aa40447a07507285 +result = invalid +shared = + +# tcId = 107 +# Public key uses wrong curve: brainpoolP320t1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 306a301406072a8648ce3d020106092b240303020801010a0352000476568300e2b4c68861589b4966e67bc414811e4011260cb8be5f884869fa179ca8af40f80009e0a58b17ac3e551a772e76683c32e6e09112572542d7c1fe3d49abb56da56d669186e2623dc797129dc0 +result = invalid +shared = + +# tcId = 108 +# Public key uses wrong curve: brainpoolP384t1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 307a301406072a8648ce3d020106092b240303020801010c036200043345dffded3c33f7dcc19bb8997a39f2d6230abcb765d6142c30bf320c1fadff535feafd8505eb3e614db71826c1e258077a1e6057add7474f6d35dce68417812e7b919b1c673032b28c45d0a9251c43a2a73ab152f64ff8eba4eab312fa73bd +result = invalid +shared = + +# tcId = 109 +# Public key uses wrong curve: brainpoolP512t1 +private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 +public = 30819b301406072a8648ce3d020106092b240303020801010e0381820004a3677c646cd887685940c28076f55cda7469032845f2cb2af51c61492dc435aaa5b771d8e1528417cdeb89b5f629e06b234e21236b9edf46c7025177ee65a8e940f670d10c722cea355bd3a5c8847a38324b9a06a50a95da4e70bb492cd00194a8830975dd1e115e19315575ff841b30fd4a3f8a44725dfe280d0af57fc80cc3 +result = invalid +shared = + +# tcId = 110 +# invalid public key +private = 2b9e57572da6cf4fb58cb94eab8df19383a136f219f2a515776a8bf48e1538dd1d811946c16d9f0184c9ce5cdf1dac51 +public = 3046301006072a8648ce3d020106052b81040022033200024424530ea70bace90601f8d5869e4179a6cd689b6a18fdfec50cecf17cb836d24820211ada67815b42c2c2606303f69e +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 111 +# long form encoding of length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 308176301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 112 +# long form encoding of length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307730811006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 113 +# long form encoding of length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307730110681072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 114 +# long form encoding of length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3077301106072a8648ce3d02010681052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 115 +# long form encoding of length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3077301006072a8648ce3d020106052b810400220381620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 116 +# length contains leading 0 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30820076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 117 +# length contains leading 0 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30783082001006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 118 +# length contains leading 0 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30783012068200072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 119 +# length contains leading 0 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301206072a8648ce3d0201068200052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 120 +# length contains leading 0 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301006072a8648ce3d020106052b81040022038200620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 121 +# wrong length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3077301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 122 +# wrong length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3075301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 123 +# wrong length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301106072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 124 +# wrong length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076300f06072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 125 +# wrong length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006082a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 126 +# wrong length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006062a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 127 +# wrong length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106062b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 128 +# wrong length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106042b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 129 +# wrong length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002203630004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 130 +# wrong length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002203610004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 131 +# uint32 overflow in length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30850100000076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 132 +# uint32 overflow in length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b3085010000001006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 133 +# uint32 overflow in length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b3015068501000000072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 134 +# uint32 overflow in length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b301506072a8648ce3d0201068501000000052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 135 +# uint32 overflow in length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b301006072a8648ce3d020106052b81040022038501000000620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 136 +# uint64 overflow in length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3089010000000000000076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 137 +# uint64 overflow in length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307f308901000000000000001006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 138 +# uint64 overflow in length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307f301906890100000000000000072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 139 +# uint64 overflow in length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307f301906072a8648ce3d020106890100000000000000052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 140 +# uint64 overflow in length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307f301006072a8648ce3d020106052b8104002203890100000000000000620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 141 +# length = 2**31 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30847fffffff301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 142 +# length = 2**31 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a30847fffffff06072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 143 +# length = 2**31 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a301406847fffffff2a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 144 +# length = 2**31 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a301406072a8648ce3d020106847fffffff2b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 145 +# length = 2**31 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a301006072a8648ce3d020106052b8104002203847fffffff0004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 146 +# length = 2**32 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3084ffffffff301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 147 +# length = 2**32 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a3084ffffffff06072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 148 +# length = 2**32 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a30140684ffffffff2a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 149 +# length = 2**32 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a301406072a8648ce3d02010684ffffffff2b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 150 +# length = 2**32 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a301006072a8648ce3d020106052b810400220384ffffffff0004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 151 +# length = 2**40 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3085ffffffffff301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 152 +# length = 2**40 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b3085ffffffffff06072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 153 +# length = 2**40 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b30150685ffffffffff2a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 154 +# length = 2**40 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b301506072a8648ce3d02010685ffffffffff2b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 155 +# length = 2**40 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b301006072a8648ce3d020106052b810400220385ffffffffff0004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 156 +# length = 2**64 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3088ffffffffffffffff301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 157 +# length = 2**64 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e3088ffffffffffffffff06072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 158 +# length = 2**64 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e30180688ffffffffffffffff2a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 159 +# length = 2**64 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e301806072a8648ce3d02010688ffffffffffffffff2b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 160 +# length = 2**64 - 1 +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e301006072a8648ce3d020106052b810400220388ffffffffffffffff0004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 161 +# incorrect length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30ff301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 162 +# incorrect length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307630ff06072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 163 +# incorrect length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006ff2a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 164 +# incorrect length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106ff2b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 165 +# incorrect length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002203ff0004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 166 +# indefinite length without termination +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3080301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 167 +# indefinite length without termination +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076308006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 168 +# indefinite length without termination +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006802a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 169 +# indefinite length without termination +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106802b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 170 +# indefinite length without termination +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002203800004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 171 +# removing sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 172 +# removing sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 306403620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 173 +# lonely sequence tag +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 174 +# lonely sequence tag +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30653003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 175 +# appending 0's to sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312510000 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 176 +# appending 0's to sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301206072a8648ce3d020106052b81040022000003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 177 +# prepending 0's to sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30780000301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 178 +# prepending 0's to sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30783012000006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 179 +# appending unused 0's to sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312510000 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 180 +# appending unused 0's to sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301006072a8648ce3d020106052b81040022000003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 181 +# appending null value to sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312510500 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 182 +# appending null value to sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301206072a8648ce3d020106052b81040022050003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 183 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b4981773076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 184 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a25003076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 185 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30783076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312510004deadbeef +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 186 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b3015498177301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 187 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a30142500301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 188 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e3012301006072a8648ce3d020106052b810400220004deadbeef03620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 189 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b3015260c49817706072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 190 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a3014260b250006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 191 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e3018260906072a8648ce3d02010004deadbeef06052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 192 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b301506072a8648ce3d0201260a49817706052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 193 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a301406072a8648ce3d02012609250006052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 194 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e301806072a8648ce3d0201260706052b810400220004deadbeef03620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 195 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b301006072a8648ce3d020106052b81040022236749817703620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 196 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a301006072a8648ce3d020106052b810400222366250003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 197 +# including garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e301006072a8648ce3d020106052b81040022236403620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312510004deadbeef +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 198 +# including undefined tags +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307eaa00bb00cd003076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 199 +# including undefined tags +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307caa02aabb3076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 200 +# including undefined tags +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e3018aa00bb00cd00301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 201 +# including undefined tags +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307c3016aa02aabb301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 202 +# including undefined tags +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e3018260faa00bb00cd0006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 203 +# including undefined tags +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307c3016260daa02aabb06072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 204 +# including undefined tags +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e301806072a8648ce3d0201260daa00bb00cd0006052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 205 +# including undefined tags +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307c301606072a8648ce3d0201260baa02aabb06052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 206 +# including undefined tags +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e301006072a8648ce3d020106052b81040022236aaa00bb00cd0003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 207 +# including undefined tags +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307c301006072a8648ce3d020106052b810400222368aa02aabb03620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 208 +# truncated length of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3081 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 209 +# truncated length of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3066308103620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 210 +# Replacing sequence with NULL +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 0500 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 211 +# Replacing sequence with NULL +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3066050003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 212 +# changing tag value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 2e76301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 213 +# changing tag value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 2f76301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 214 +# changing tag value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3176301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 215 +# changing tag value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3276301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 216 +# changing tag value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = ff76301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 217 +# changing tag value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30762e1006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 218 +# changing tag value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30762f1006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 219 +# changing tag value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076311006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 220 +# changing tag value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076321006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 221 +# changing tag value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076ff1006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 222 +# dropping value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3000 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 223 +# dropping value of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3066300003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 224 +# truncate sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3075301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 225 +# truncate sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30751006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 226 +# truncate sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3075300f06072a8648ce3d020106052b81040003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 227 +# truncate sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3075300f072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 228 +# indefinite length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3080301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312510000 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 229 +# indefinite length +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078308006072a8648ce3d020106052b81040022000003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 230 +# indefinite length with truncated delimiter +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3080301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed03125100 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 231 +# indefinite length with truncated delimiter +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3077308006072a8648ce3d020106052b810400220003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 232 +# indefinite length with additional element +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3080301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed03125105000000 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 233 +# indefinite length with additional element +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a308006072a8648ce3d020106052b810400220500000003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 234 +# indefinite length with truncated element +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3080301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251060811220000 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 235 +# indefinite length with truncated element +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307c308006072a8648ce3d020106052b8104002206081122000003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 236 +# indefinite length with garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3080301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312510000fe02beef +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 237 +# indefinite length with garbage +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307c308006072a8648ce3d020106052b810400220000fe02beef03620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 238 +# indefinite length with nonempty EOC +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3080301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312510002beef +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 239 +# indefinite length with nonempty EOC +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a308006072a8648ce3d020106052b810400220002beef03620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 240 +# prepend empty sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30783000301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 241 +# prepend empty sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30783012300006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 242 +# append empty sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312513000 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 243 +# append empty sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301206072a8648ce3d020106052b81040022300003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 244 +# sequence of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30783076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 245 +# sequence of sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30783012301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 246 +# truncated sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3012301006072a8648ce3d020106052b81040022 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 247 +# truncated sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 306f300906072a8648ce3d020103620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 248 +# repeat element in sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3081da301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed03125103620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 249 +# repeat element in sequence +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307d301706072a8648ce3d020106052b8104002206052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 250 +# removing oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 306d300706052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 251 +# lonely oid tag +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 306e30080606052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 252 +# lonely oid tag +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3070300a06072a8648ce3d02010603620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 253 +# appending 0's to oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301206092a8648ce3d0201000006052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 254 +# appending 0's to oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301206072a8648ce3d020106072b81040022000003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 255 +# prepending 0's to oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30783012060900002a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 256 +# prepending 0's to oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301206072a8648ce3d0201060700002b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 257 +# appending unused 0's to oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301206072a8648ce3d0201000006052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 258 +# appending null value to oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301206092a8648ce3d0201050006052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 259 +# appending null value to oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301206072a8648ce3d020106072b81040022050003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 260 +# truncated length of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 306f3009068106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 261 +# truncated length of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3071300b06072a8648ce3d0201068103620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 262 +# Replacing oid with NULL +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 306f3009050006052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 263 +# Replacing oid with NULL +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3071300b06072a8648ce3d0201050003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 264 +# changing tag value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301004072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 265 +# changing tag value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301005072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 266 +# changing tag value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301007072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 267 +# changing tag value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301008072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 268 +# changing tag value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30763010ff072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 269 +# changing tag value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020104052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 270 +# changing tag value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020105052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 271 +# changing tag value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020107052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 272 +# changing tag value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020108052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 273 +# changing tag value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d0201ff052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 274 +# dropping value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 306f3009060006052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 275 +# dropping value of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3071300b06072a8648ce3d0201060003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 276 +# modify first byte of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307630100607288648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 277 +# modify first byte of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d02010605298104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 278 +# modify last byte of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d028106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 279 +# modify last byte of oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b810400a203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 280 +# truncate oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3075300f06062a8648ce3d0206052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 281 +# truncate oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3075300f06068648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 282 +# truncate oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3075300f06072a8648ce3d020106042b81040003620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 283 +# truncate oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3075300f06072a8648ce3d020106048104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 284 +# wrong oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30793013060a3262306530333032316106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 285 +# wrong oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 308181301b061236303836343830313635303330343032303106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 286 +# wrong oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b301506072a8648ce3d0201060a3262306530333032316103620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 287 +# wrong oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 308183301d06072a8648ce3d0201061236303836343830313635303330343032303103620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 288 +# longer oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307f301906103261383634386365336430323031303106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 289 +# longer oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307d301706072a8648ce3d0201060c32623831303430303232303103620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 290 +# oid with modified node +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307d3017060e326138363438636533643032313106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 291 +# oid with modified node +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 308185301f06163261383634386365336430323838383038303830303106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 292 +# oid with modified node +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307b301506072a8648ce3d0201060a3262383130343030333203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 293 +# oid with modified node +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 308183301d06072a8648ce3d0201061232623831303430303838383038303830323203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 294 +# large integer in oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30818f30290620326138363438636533643032383238303830383038303830383038303830303106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 295 +# large integer in oid +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 30818d302706072a8648ce3d0201061c3262383130343030383238303830383038303830383038303830323203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 296 +# oid with invalid node +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 308180301a0611326138363438636533643032303165303306052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 297 +# oid with invalid node +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3077301106082a808648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 298 +# oid with invalid node +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307e301806072a8648ce3d0201060d3262383130343030323265303303620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 299 +# oid with invalid node +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3077301106072a8648ce3d020106062b808104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 300 +# lonely bit string tag +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3013301006072a8648ce3d020106052b8104002203 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 301 +# appending 0's to bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301006072a8648ce3d020106052b8104002203640004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312510000 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 302 +# prepending 0's to bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301006072a8648ce3d020106052b81040022036400000004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 303 +# appending null value to bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3078301006072a8648ce3d020106052b8104002203640004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312510500 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 304 +# truncated length of bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3014301006072a8648ce3d020106052b810400220381 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 305 +# Replacing bit string with NULL +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3014301006072a8648ce3d020106052b810400220500 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 306 +# changing tag value of bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002201620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 307 +# changing tag value of bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002202620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 308 +# changing tag value of bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002204620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 309 +# changing tag value of bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002205620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 310 +# changing tag value of bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b81040022ff620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 311 +# dropping value of bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3014301006072a8648ce3d020106052b810400220300 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 312 +# modify first byte of bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002203620204c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 313 +# modify last byte of bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002203620004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312d1 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 314 +# truncate bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3075301006072a8648ce3d020106052b8104002203610004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed0312 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 315 +# truncate bit string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3075301006072a8648ce3d020106052b81040022036104c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 316 +# declaring bits as unused in a bit-string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002203620104c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 317 +# unused bits in a bit-string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 307a301006072a8648ce3d020106052b8104002203662004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed03125101020304 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 318 +# unused bits in empty bit-string +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3015301006072a8648ce3d020106052b81040022030103 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 319 +# 128 unused bits +private = 4b065d2dbbad95d7eebed00a3e79f772ccddfd93101c1b1f393e8adc465d94bc21346d8f341907a3c27a2562dcb49a3a +public = 3076301006072a8648ce3d020106052b8104002203628004c2bed48c5e15e8208411b1a14c77c440b9a8c3b6b2af6eef05e4fbae13cfe7ba5e9af208c54e3035e3b4559f97b0f2798dbe522a47ee950419b5faa273d24ff2748a8349c591cc80871acf3c6702cce129c68351a713207a69f02b5bed031251 +result = acceptable +shared = 40c344fb1185a5a97dd00b114f1b9c5ce4009f90c593f236fe465518f9ff27326a421e05b5bc1bfe3768d5becb9ec797 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. +
diff --git a/third_party/wycheproof_testvectors/ecdh_secp521r1_test.txt b/third_party/wycheproof_testvectors/ecdh_secp521r1_test.txt new file mode 100644 index 0000000..1095236 --- /dev/null +++ b/third_party/wycheproof_testvectors/ecdh_secp521r1_test.txt
@@ -0,0 +1,3127 @@ +# Imported from Wycheproof's ecdh_secp521r1_test.json. +# This file is generated by convert_wycheproof.go. Do not edit by hand. +# +# Algorithm: ECDH +# Generator version: 0.4.12 + +[curve = secp521r1] +[encoding = asn] + +# tcId = 1 +# normal case +private = 1939982b529596ce77a94bc6efd03e92c21a849eb4f87b8f619d506efc9bb22e7c61640c90d598f795b64566dc6df43992ae34a1341d458574440a7371f611c7dcd +public = 30819b301006072a8648ce3d020106052b8104002303818600040064da3e94733db536a74a0d8a5cb2265a31c54a1da6529a198377fbd38575d9d79769ca2bdf2d4c972642926d444891a652e7f492337251adf1613cf3077999b5ce00e04ad19cf9fd4722b0c824c069f70c3c0e7ebc5288940dfa92422152ae4a4f79183ced375afb54db1409ddf338b85bb6dbfc5950163346bb63a90a70c5aba098f7 +result = valid +shared = 01f1e410f2c6262bce6879a3f46dfb7dd11d30eeee9ab49852102e1892201dd10f27266c2cf7cbccc7f6885099043dad80ff57f0df96acf283fb090de53df95f7d87 + +# tcId = 2 +# compressed public key +private = 1939982b529596ce77a94bc6efd03e92c21a849eb4f87b8f619d506efc9bb22e7c61640c90d598f795b64566dc6df43992ae34a1341d458574440a7371f611c7dcd +public = 3058301006072a8648ce3d020106052b81040023034400030064da3e94733db536a74a0d8a5cb2265a31c54a1da6529a198377fbd38575d9d79769ca2bdf2d4c972642926d444891a652e7f492337251adf1613cf3077999b5ce +result = acceptable +shared = 01f1e410f2c6262bce6879a3f46dfb7dd11d30eeee9ab49852102e1892201dd10f27266c2cf7cbccc7f6885099043dad80ff57f0df96acf283fb090de53df95f7d87 +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 3 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b810400230381860004014c643329691ba27459a40dfe7c4ce17b3ea14d0cd7aa47b01f1315404db51436fbbfe6de0842e0f7e1265f6ff3aca28750677d3370b2fb2a6ef497356f4b95811201051b14178639a09a41465c72d3743436ee1c191ff7388a40140b34d5317de5911ea03cdbb0329fdeb446695a3b92d437271a9f3c318b02dec4d473908158140e97 +result = valid +shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + +# tcId = 4 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b8104002303818600040029cd32125c23a41af24fd4b729da0faacbc35516ef0ba59096602571693cd282e26d67e18ef4643d0f6f158d7370d3394ca9a8de7938032ac178c6fd34e3702b8d008649834e2b41be3a8b7510bfe570f4c67075943cd0cbb9d9e1d1da52618b5b96d6aec9b650daf1ca6624c13e5116302b9c79c8c4d3d351915d1e8e1ab6ad76098e +result = valid +shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 + +# tcId = 5 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b8104002303818600040032c6f06ce6a15ea064464d35aa368d299c9a9e1e368f694aefb603876248f898f223ce0217bef37d61eb09b27c93187cf8e61ba7b14e3c9bee692b06ac6d95f836019fd19f8480e21c63211d48d45f96f6365cf55f958e1a0fe7ea6b6b9ff230a87b70bb1b14d3a5fb6669a91641c6acf4570c1d3a9e709913b7fe6b35ff81c394d6a7 +result = valid +shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002 + +# tcId = 6 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b81040023038186000401f7eb96e64b1a62daf9e0801bfd96a0b15b68e5f5cb3e90b434495a473907338e53098e1c2e493335d09c6aae6fdda0345b98aaed588f2abe82910713fb6c20252901396b17cf250bc018f4cead097e7e09863f14cf1239b065e57d884949eee141926f7e7c9f7f34cf0536368767bc0e1ab5142877293a4c722693a73fe14a5390af93 +result = valid +shared = 000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000 + +# tcId = 7 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b810400230381860004006ddf9b10965d5fc129e96f7a37667ccf66cc44384772906fedb21f9de4629e01aaa09ac7c9866112064bbc9bd58ebc123ab2fe19d8fed1a056d27bfef0630509c7001c441311ef20a16346332ea42d5c65788d68f6817b0267fcab11ea9c948ed108115dda8e823a380b601460742d3772d6424c67b240da24772ff0d2ccd9a1e0cea6 +result = valid +shared = 000000ffffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff0000000000000100000000000000 + +# tcId = 8 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b810400230381860004007a8c547268c948b626da636cf54428ea2ab23861d499a84ad7be1cf691b92872a06e26c6dba08ca9ed386f83d396156d5fa023f57d5ea6440ec7401dad2c08ad70018c3815b1b9a2e42555419a6c19043fa2b0ddcc4b5a6e372fee9fcb227d85bad704687e7e1a818b612d5c046cd75972f7a2dd5c9a200ac5582cd59fec47ac525ecf +result = valid +shared = 00003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff + +# tcId = 9 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b8104002303818600040029153cf062f88f303e5d6f9aac968bd901076d5994ea7f831833b1e69b67e9e9fe20cf9c5623e00e0b9e3592fca2a03324b5df7c93186aff697aca864600d44ecc002801a62e2f4106f34106da23dc93d50e3e975a1d47510021835290649b7a4125109f656b6b0b5bd00b24d84ea1ba4e1ed49e61c526fb1011005131caee7ee0501e +result = valid +shared = 010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + +# tcId = 10 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b81040023038186000400a61eb994e28722c59b3c6007dfdf8b37893f6350f461b26a00e1a45104314aae9989da87e4facb2c4ef721185b7d96d9a45a28a102756501a1acc5d329a21bbf73010e8d0e12f5a9a40e0d59c90ce73043d39730aeadd3788e31d7c2bb62a1166161994664afa658ce2e60a13f45f27f914307c8d6f8d4ed16ab041b8f69908a62782f +result = valid +shared = 010000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff + +# tcId = 11 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b810400230381860004011dd497b30c73709906b164a9a79dc7f2a98c0148ed63016bb95243834fbcdf8eb74b0ff652d54f59f31aef51da6e8974d363655b1da138dc4de0f2a8d800f475ae0057bd4b84607400d863ffbf45a3cf58999ee24ba05e93eca7b0e4ae760eb1733559a45d15579d3370d716ffa3ec4bfdae418e32fb06138dfca213720a938577610e +result = valid +shared = 01ff00000000000000000000000000000000ffffffffffffffffffffffffffffffff0000000000000000000000000000000100000000000000000000000000000000 + +# tcId = 12 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b81040023038186000401283eb93fa369fe7012b647d21e0a97cf9950e5fbed819ef56158f20c8a9473a418eccbca4dc2b47f4cb6d322f917005859bf221e84ac9827cab82a801c627fb1ec0075c480cbafb352fcaf93baf23a1405fd81febe09729a908d1077e177dd8993d94b251a0d52652da3edb6fdf864e80cd51540e73d0b5107e3433576dcaa4e18db43 +result = valid +shared = 01ff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff + +# tcId = 13 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b81040023038186000400173beefe35ee868d497ff6601628f65ce18a1591f7e4a3a406622f3f508e2da68f101ed02febc38418c6ddfc26a5ec9848c42792463b1e945f9e167db34bdf2d660053070647aba7cd60eb295ab81a268a3903f393c5d28bbc5e022351c377cd84f02c19deb36442372cae1332e92f95ba60b6c852e0de0718e89d24e43cd479c9fb11 +result = valid +shared = 01ff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff + +# tcId = 14 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b810400230381860004009829cd5432687739ab6ae10af8ea73d2cb53b81ebb06b5961b7badc1676b3ef7b00454f7cde56774a01312d574a9193c1a5fe5336fbe62623ad9bf81143789f9f90012f955697ed578207197bf9aac3896521615dbacc8dc665d4f1715b08439f49c2aa6ed337023ffccc5075a85944936826db92f919737ca3afeadba1847084bdef7 +result = valid +shared = 01ff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff00010000 + +# tcId = 15 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b8104002303818600040126e3c959cd41120bb83693b1d6a034b385137c1bb3213b776122fed96056e329885718a73bee639c0ba4b68818682f498ce5496925002bd7652516405fcc4fecad0073a9c6e3b0c694bf7cc8ccbbd09800e81e3548ba44a0c2381cef0b07bf702a19054bb5d717a1b79294609cbdafd4e2018064f7b2c4c204d818eb7ce521c3268ce5 +result = valid +shared = 01ffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff8000004000001 + +# tcId = 16 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b8104002303818600040153dc481ab3c5dc8decd24ceaee1bec77f59f21f7f31c19538af047d281ac9e2567933fd3d21096b185d4098919571931bb9b0be7197995e2fbaf21c8a10007ade001ad69f08fcae164390be826256b50fae47502ce0e9ca46af0c490cb4033c886f88661a99ff2bd3c9c8e7da30faf2b4c769edc5831810ac05054c97e41063f496e1f +result = valid +shared = 01ffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff + +# tcId = 17 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b81040023038186000401f586611c87150288c3e86116c5db94a26718978829d701ddac05e9b0ce22dee4b18e95f60cba783ed3384da373deaefc57b8265d3a34eeb458bf24b9d82be32819008456e0f1d80492ef0078cc246d32fc7c7fb6720b4d458b51b2098d35746752b0ef0345bd0d342dfee6dd2f12ed12b34bd95d058c2811fd479d2dde32180e6c9ef2 +result = valid +shared = 01ffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc000000080000002 + +# tcId = 18 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b810400230381860004015edc87fd499a73eabffd14d2b6a70a8fb69b6a39d0d9c4dda2337b53cc72e49a9e3d5a2d9e8930cfa11852dac33443227fba6684bd74732e6879884b6ef9dae98f010eeb8d2e3360ea9726628085268af3f2a05ad41235d0a892098bd661b636f7ef0a820282906eda3f1ff1980b98fb5937228e9edcd6332e3641216c7307e7f3f452 +result = valid +shared = 01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd + +# tcId = 19 +# edge case for shared secret +private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 +public = 30819b301006072a8648ce3d020106052b8104002303818600040131b43002f7e687eec1ecf6a253c2ccc9e48f04d86fccd18fee0d2d22191f1ea539c40d521970b4709dc03986f647e0e8bb3340cf8a3e643a3541035437cf25f01500b27a55ac45f0296f8c9656bcfd52b5cea9f4115c06e4c64319609847d45e92418400e7868672c0d3e6e5e6e004a7190476ed77cfc33ad19a4bd2c615ad9950f374 +result = valid +shared = 01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe + +# tcId = 20 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d20ec9fea6b577c10d26ca1bb446f40b299e648b1ad508aad068896fee3f8e614bc63054d5772bf01a65d412e0bcaa8e965d2f5d332d7f39f846d440ae001f4f87 +result = valid +shared = 0053bf137fee8922769f8d0fe279caa4dac9c6054ad0460995588a845d0a959e24bc0fc2391a2b92f7bd400f50a11a9db37f07bef7fa8dad2a903fcf534abc8736f7 + +# tcId = 21 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b8104002303818600040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010010e59be93c4f269c0269c79e2afd65d6aeaa9b701eacc194fb3ee03df47849bf550ec636ebee0ddd4a16f1cd9406605af38f584567770e3f272d688c832e843564 +result = valid +shared = 01c95ac417c90a520149b29105cdab36f528a23efb5621520dbdafea95a7d43499c4c8be02cd1c2de000da18104fa84a1e9ece6386f0e0efa5234a24595d7c4c96f4 + +# tcId = 22 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200d9254fdf800496acb33790b103c5ee9fac12832fe546c632225b0f7fce3da4574b1a879b623d722fa8fc34d5fc2a8731aad691a9a8bb8b554c95a051d6aa505acf +result = valid +shared = 01b47ec41e3a5abd9dd9808fc04d9078cbed72b9eba98d3c1ded70a29938f0efd5a27a7113ff721f122cb17411de307a355c685074f5766b6d1a033d2fa188c945b6 + +# tcId = 23 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000005f880f50ec94bfac6658fa2fce05945c6a36b266407b6fbd5437a83e2f2f9b9c50a734872e48e70df65457f13e47d06c6b8b29f4735acf105ea63e051904d18aea +result = valid +shared = 013aefe3245728a08c904fe7d61cd9c2fdac63f29cf664d8f161bebacb93f8a710e9692f9689480ad498de00f00061e40e46e76e4754c1130ef4217a58933e0b1dc6 + +# tcId = 24 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b810400230381860004000000ffffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff000000000000010000000000000000f33ffc45da3eac1baab727ab8fd355cfa134c42047d55262651654fb50df7e9a5a75f179c8c86c4388213b5687dc43dfebb37f30128703c44ccd5c3284833b8717 +result = valid +shared = 0168df272d53e3161926168c4aeab5f355b8d2a6689cfd567f2b6eb2011a18c775ac2a21f8dd497f6957217020b3b1afcb7021f24fccc2523be76a2bff44596e5a14 + +# tcId = 25 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000400003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00cd2839d857b4699f5c8e8a0194786e26a862f086b4ba80746ae5225ed3aa68f96b7aaec55225830bb98f52d75221141897ba49d7a31ebbf0b6d7d31352e5266190 +result = valid +shared = 013db1b9241b23d33860d32dec37a79e4546a41afdfdd9c438d04e1f8b566ac8d9d3f572c293e96943722a4ee290e113fffaa82a61867d9ca28d349982354c9b256f + +# tcId = 26 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b810400230381860004010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000813d9829119f42ffa95fea8ba9e81e4cd6a6ca97fb0778e12e5f5dfe35201dd4cca8eca0d2e395555997041381e6ac1f18ddf4c74e0b6e9041cfdca1d1c103091 +result = valid +shared = 01d2bbe9f754584ebbc7c7ad74136d1c8a144948948aa8be49989dd9b4c514db2e2ab1e0713ad1699f632dd2cea53da218ed549f030a113e282fd9e3be462d9aba84 + +# tcId = 27 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b810400230381860004010000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff00878ad597d290db2cf660594aeed0f9b7c8dd68451d2d1b2cbc816b1ec4f35465b3964aff2edf1255163f5fca580132f85cade2887a017e7cd0b37196ad85221107 +result = valid +shared = 000f37a2e2caef54fff4126c0fa96e7c47f0cad74626ef91e589e12d2e1e8c221be7295be9dc2712b87bb0aa0f5880b738bc1242f2ba773bf9eb2a54e3c1ca4758d7 + +# tcId = 28 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ff00000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000000000000010000000000000000000000000000000000b5e1191b449fa1ebdbd677daa48f90e2d1d6c058c877087cafd9364d99dbb283c68402e6e6c5f5411b2ed42824d8b280ceb910aba6847883a7e3780e2132af41c1 +result = valid +shared = 017aeb254d9c8c8ee06215ff33811357da73bf7f6dd6d7f8f176d62c065a88a9005f680c630e9f2763585ea2ee76b6e4ab45e673f814ebfa95947c0c63fb24fa6e9b + +# tcId = 29 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff00207513d615656a1cc7505c18aa21b08e2b1d5a841de0816cc29c004efdb2d902ac1a7bb05e20722b576b64a3ddf4d2486421ac706bf4a424f252386368a5340fb6 +result = valid +shared = 0061bed42248a37b4625ef04c4f9c7ef69ee3c6f9503378351fcab1b8ce1343206997eec1b88449eb6f7355711ea1a818a486ee30a24126241a7e2289267cf5dd61f + +# tcId = 30 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff001fe800c50e54012b75a33e4be7d07c8d60f29680a395e951a6a31c5096b0ea928fc2cbf327dd784dc0a7ca46ea73992b758b5641364b4aba39e93798a4d925a008 +result = valid +shared = 001067d9104e296ef42b944587de11b10df05d2d959ed44cac9e7ef1c7a05d90819c43bc79c7397918f957cc98db931763bbeb1bdfc35865e8a359a013f13d60c433 + +# tcId = 31 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff00010000008dd18a1f5e482140be79bb65a21ad60c8987e532c84345f0135affd46ec71ef02b1ca3ad56f301d955fa306c122d441d6fedcf8b855ef256350bf69d23a7207ad9 +result = valid +shared = 00b779d83035cf7bb0bb04c7b2f46d08f6791f0d1542c9bcce7250e772b12ad8e38fce1d2b063a06f0fa3a1b072dd976f5f8542979903075162f1f5c6ba3b76cc45d + +# tcId = 32 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff800000400000100566203dd325a081c4441f001f780365874fd3d0c9bc47227481afe76a93ae1bfde63af972203abfe22c63b80e83f7cc2184c3cb8cfd0152c54324c4759fd1f9a50 +result = valid +shared = 01afe5d23733728b79c743933b9ba7dfec5ed19b7737e393908a1d000918aa795d1ce0ad533983d018f927b35d2af6463356573f387febd75911a49486202ca69d3a + +# tcId = 33 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff00b11c668fbd549f36889f7b63434051da26f15705839136b1b14a09152d7a182ea7806c35478a32d3aa3c9c1627a61519ebec71b36fa77449025b8829e27f307834 +result = valid +shared = 019612aeb386febb1a28096fe5b2f682dead02389785225b80a27df439510d08349a193839525f248b7f9bcabfd3dc8da8cc1724022299b7b5e72399d89464b82e44 + +# tcId = 34 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc00000008000000200aa75efc0a8daac1d73f32c9c552414bccf44af8e74331b47439e7dcc49a135b3ee61e9f69717d89b4bba3567a195aeda13fbec634bf2984b5ec6b6f80f5978ed5a +result = valid +shared = 00570673f87adcef49c1f011e8b9f1e11f7fd3b3c93114d08d3f515aa4a895a6c701c523063bdc13ad1db0a54f6e7b476fe10db2070441befc58c8cff3c08ef76e59 + +# tcId = 35 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0010e59be93c4f269c0269c79e2afd65d6aeaa9b701eacc194fb3ee03df47849bf550ec636ebee0ddd4a16f1cd9406605af38f584567770e3f272d688c832e843564 +result = valid +shared = 0016aaf228b0aec190d4e4e5b8138ff9cc46d705da1bf002901c6ab420f59314d5b641712b14ef3e4fb125652c47888676804fb5575b741a8408c5625bfccff4fdda + +# tcId = 36 +# edge cases for ephemeral key +private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c +public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00d9254fdf800496acb33790b103c5ee9fac12832fe546c632225b0f7fce3da4574b1a879b623d722fa8fc34d5fc2a8731aad691a9a8bb8b554c95a051d6aa505acf +result = valid +shared = 00a5d6dfda2b269f4ab895a41c3b71b6ba10d5c9f0d9b3e730275345e4721594abfd39464c227716ded8ef3e60bb1ca0b551716e3f6eebb48d5ce8e0ab58cb1b73c9 + +# tcId = 37 +# edge case private key +private = 3 +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 00f2246431b597930f2eae61e9aabbd39f8f6ae97c3cf2521a6aeecedda10b5ef5f3b2eb3a8906d02f51d244710aa9e19cc0be21db920132be1c91deb85e466c28df + +# tcId = 38 +# edge case private key +private = 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 00347c51f587c726070bdeb9173d0a547427ead3f2c8de62d9ecc3013285f645d220931520bcef85d08cfb6786045745fbfbfb1924c44a89d06676131a965677272a + +# tcId = 39 +# edge case private key +private = 200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 01c41dc4437c2f2b94a940711b3a691723397a1f83d6bc0c67ddc7a657160925c7f85bb4eb3842b60b2610ddb7c0b8676267710e58359a8750843c6d8e25d48d1cd9 + +# tcId = 40 +# edge case private key +private = 0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 006a239cdb7a783840658d5f314bfe5c51e806a4bf1236f8421265bcc503c673eb16c5c2b38b5717fa04ee7dbcdeb15c871711507abb7557a8a8c7b3250141e854d5 + +# tcId = 41 +# edge case private key +private = 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 0112dbf9713aadd478e4f2ebcb058f05b512b1959c7da1994f851f373ce8c341d39c6843373f6fe559905953e1147640159437953c571961c09bad157a8e1a5bf476 + +# tcId = 42 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47adbb6fb71e91386409 +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 003eca2210c8623105085aa284d119f3d716730595c6291aa89bf32a95e8a5fdc64f3d76e92494a43a9dced12d05b6dca4ffe649b32ac12cb0202e702dc83a2cb277 + +# tcId = 43 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb5fb71e91386409 +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 01c4cae9fbfdd45de51d8525e8447a7553c35cf358f1346f1d79666887bb749a3ba0de62e1866b47a447d53b6f1ca5a33ec94507e2cfb65544f5a1195fc6b4dc5810 + +# tcId = 44 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb67b71e91386409 +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 008073b4796e748f3d0de5e85b22aed463f1a6aecdb336bc287b50d139e3591ef5f86b78c3f6051467755f059f295d758075347d657aaae02383838bb96071eacbd4 + +# tcId = 45 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71d91386409 +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 01f11ff8983792d4a790d0de4b56d078b9033ad6318a440e8119342937cc48a39375150ab2cf98273b0fe35d5a3af5d84322a685e89f2cb378a99b9b7bac87e44952 + +# tcId = 46 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e9138631b +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 00286cefaaf38ca4c6657eb9b187d8614d51775fd71c1a79b4c0ef1a0d4ce72b6f5b2bc854a4e78283530942a3f4fd2a8586d5ea51513c89d3d29de5de06321e118e +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 47 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e9138639b +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 014790de14c481f1336fcb7d33a8bf8e23eb594cc48608e9edfe0e326e106b67e7eaa3f04ec9985599178f632a5ee6419e11217060e9fcd5958a43882bf8cd3be6ba +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 48 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e913863db +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 01ae775dbc4096a3aea7977b1a0af4b2830ecf9ca927a6247fba4cccb46b3f71d0e7abb8dda72d1c1ee7bb5b875b4773cc8df40f732819c4147da330775d1742ea35 +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 49 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e913863fb +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 01979fb05e068a12a3f20cfdfb9eaee9f22b356edcc7655383ed38124b86814f86a6f2216a34f3fc2299d403ee42408f95d08c5c6cd11db72cbf299a4a3c2545be25 +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 50 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386403 +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 0197ebe26798bf67f06ff0282773af75115531f41d94c093d87481b76bef707bc222f2d6672f84a00fa20c5ed27027ab4006b68d93ee2151016c9ddbe014346272e2 +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 51 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386406 +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 00f2246431b597930f2eae61e9aabbd39f8f6ae97c3cf2521a6aeecedda10b5ef5f3b2eb3a8906d02f51d244710aa9e19cc0be21db920132be1c91deb85e466c28df + +# tcId = 52 +# edge case private key +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386407 +public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 +result = valid +shared = 01c168314cdc85757ade34a52a9e5379ffa5968f084b7e404939a8033a0fc698e26211754b9b2c04cf8a1420abe6e986ef1a238bbb91dd402b72e0ed50a876f1a83e +# The private key has a special value. Implementations using addition +# subtraction chains for the point multiplication may get the point at infinity +# as an intermediate result. See CVE_2017_10176 + +# tcId = 53 +# CVE-2017-10176: Issue with elliptic curve addition +private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e913863f7 +public = 30819b301006072a8648ce3d020106052b81040023038186000400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650 +result = valid +shared = 01bc33425e72a12779eacb2edcc5b63d1281f7e86dbc7bf99a7abd0cfe367de4666d6edbb8525bffe5222f0702c3096dec0884ce572f5a15c423fdf44d01dd99c61d +# This test vector leads to an EC point multiplication where an intermediate +# result can be the point at infinity, if addition-subtraction chains are used +# to speed up the point multiplication. + +# tcId = 54 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 55 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 56 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe +result = invalid +shared = + +# tcId = 57 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +result = invalid +shared = + +# tcId = 58 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 59 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 60 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe +result = invalid +shared = + +# tcId = 61 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +result = invalid +shared = + +# tcId = 62 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 63 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 64 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe +result = invalid +shared = + +# tcId = 65 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +result = invalid +shared = + +# tcId = 66 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = + +# tcId = 67 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +result = invalid +shared = + +# tcId = 68 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe +result = invalid +shared = + +# tcId = 69 +# point is not on curve +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 30819b301006072a8648ce3d020106052b81040023038186000401ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +result = invalid +shared = + +# tcId = 70 +private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c +public = 3015301006072a8648ce3d020106052b81040023030100 +result = invalid +shared = + +# tcId = 71 +# public point not on curve +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30819b301006072a8648ce3d020106052b81040023038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fe1 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 72 +# public point = (0,0) +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 73 +# order = +# -6864797660130609714981900799081393217269435300143305409394463459185543183397655394245057746333217197532963996371363321113864768612440380340372808892707005449 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd166500242fe000000000000000000000000000000000000000000000000000000000000000005ae79787c40d069948033feb708f65a2fc44a36477663b851449048e16ec79bf7020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = invalid +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 74 +# order = 0 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 308202043082017706072a8648ce3d02013082016a020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650020100020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = invalid +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 75 +# order = 1 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 308202043082017706072a8648ce3d02013082016a020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650020101020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = acceptable +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 76 +# order = +# 1598335257761788022467377781654101148543282249044465229239888363328190330275719844327554513312228302828260696579553960150541916632196023208175974174 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820241308201b406072a8648ce3d0201308201a7020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650023e01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = acceptable +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# The order of the public key has been modified. If this order is used in a +# cryptographic primitive instead of the correct order then private keys may +# leak. E.g. ECDHC in BC 1.52 suffered from this. +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 77 +# generator = (0,0) +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f0004818504000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = acceptable +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 78 +# generator not on curve +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16652024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = acceptable +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 79 +# cofactor = -1 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e913864090201ff038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = invalid +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 80 +# cofactor = 0 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020100038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = invalid +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 81 +# cofactor = 2 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020102038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = acceptable +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 82 +# cofactor = +# 6864797660130609714981900799081393217269435300143305409394463459185543183397655394245057746333217197532963996371363321113864768612440380340372808892707005449 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820286308201f906072a8648ce3d0201308201ec020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = invalid +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 83 +# cofactor = None +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820242308201b506072a8648ce3d0201308201a8020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = acceptable +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 84 +# modified prime +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820244308201b706072a8648ce3d0201308201aa020101304d06072a8648ce3d0101024201e99d17d498f3c68ed8e50430ec4f36c14dbeeaf7652e985636bf0548ffb981e9e011607fd0059cd4fe51e882f19a3839ebe7f1d7376cb761431b214ed76970cc0130818604411662e82b670c3971271afbcf13b0c93eb24115089ad167a9c940fab700467e161fee9f802ffa632b01ae177d0e65c7c614180e28c893489ebce4deb128968f33fb044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f0004818504000000000000000000000000000000000000000000000a14517cc6b91f8000000000000000000000000000000000000000000000000000000000000000000000032c006b0f530bec5bed532357d436727699f0e3c5b9366f1a435be640b97cd43d937655b1f157c7d0c7df25011fef7c3ab7d8e556e6125b59b847fcdd89a4051796a797024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e913864090201010381860004000000000000000000000000000000000000000000000a14517cc6b91f8000000000000000000000000000000000000000000000000000000000000000000000032c006b0f530bec5bed532357d436727699f0e3c5b9366f1a435be640b97cd43d937655b1f157c7d0c7df25011fef7c3ab7d8e556e6125b59b847fcdd89a4051796a797 +result = invalid +shared = 00ebef6771455911ee573c183e990f7086650f9bafdb722c896751bd2c0f87959c78a39382d10fdfb46fd3515c8feb590943dd79778b13adbc7f670ba2a009753483 +# The modulus of the public key has been modified. The public point of the +# public key has been chosen so that it is both a point on both the curve of the +# modified public key and the private key. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 85 +# using secp224r1 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 304e301006072a8648ce3d020106052b81040021033a0004074f56dc2ea648ef89c3b72e23bbd2da36f60243e4d2067b70604af1c2165cec2f86603d60c8a611d5b84ba3d91dfe1a480825bcc4af3bcf +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 86 +# using secp256r1 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004cbf6606595a3ee50f9fceaa2798c2740c82540516b4e5a7d361ff24e9dd15364e5408b2e679f9d5310d1f6893b36ce16b4a507509175fcb52aea53b781556b39 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 87 +# using secp256k1 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 3056301006072a8648ce3d020106052b8104000a03420004a1263e75b87ae0937060ff1472f330ee55cdf8f4329d6284a9ebfbcc856c11684225e72cbebff41e54fb6f00e11afe53a17937bedbf2df787f8ef9584f775838 +result = invalid +shared = +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. + +# tcId = 88 +# a = 0 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 308202033082017606072a8648ce3d020130820169020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3046040100044109a88e6f050cfefa0b49fac45689b6b93ad4fa3b65db7d2f4cb31b67fe056a100066dd80dc5f785d27f82e3369eb22ab2c5729a9e5d9906a1dc31e02f84026484a0481850400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf +result = acceptable +shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de +# A parameter that is typically not used for ECDH has been modified. Sometimes +# libraries ignore small differences between public and private key. For +# example, a library might ignore an incorrect cofactor in the public key. We +# consider ignoring such changes as acceptable as long as these differences do +# not change the outcome of the ECDH computation, i.e. as long as the +# computation is done on the curve from the private key. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 89 +# public key of order 3 +private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 +public = 30820244308201b706072a8648ce3d0201308201aa020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308186044163dd8adacb707513ee414c8ef43488d841c6dee055e7524338729de3f0f80d5a7f5a2f9451681187763175d5fa44b124a736c1e335ab2bc44e90afd9d73afdcf81044139acb17f9aea561444370f028fabe3abd6abc36dfaecd355019c030fc56571cb027a33c4ded31a03d257c8e05180a0199487dcc6bfa009db62b36021c7ca0767720481850401955425b4109a40c74ada7d7fb4fe7b160a9fc16955847666b6450b0905ca920866e52664275b0b3cf7b9e2628dde865ed6ce3c8596638c1acbb71608dd81005b1001197944c6bf8dd7b06144a5b7cd32746aac97c8a5bc6274acd571fece0c14c9e57122e8e6d7d70db21d55d0123f004fd9698067392de468abfeef8890103b954e51024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020101038186000401955425b4109a40c74ada7d7fb4fe7b160a9fc16955847666b6450b0905ca920866e52664275b0b3cf7b9e2628dde865ed6ce3c8596638c1acbb71608dd81005b1000e686bb394072284f9ebb5a4832cd8b955368375a439d8b532a8e0131f3eb361a8edd17192828f24de2aa2fedc0ffb026967f98c6d21b97540110776fefc46ab1ae +result = invalid +shared = 01f1f914da0c64135b9c4334c82393abf73d3112a1197581e9c8e97b2e3c02696f6d445400aefb87eda50aced68209f961e1af3fa37efbde303880a4371b776085ab +# The vector contains a weak public key. The curve is not a named curve, the +# public key point has order 3 and has been chosen to be on the same curve as +# the private key. This test vector is used to check ECC implementations for +# missing steps in the verification of the public key. +# The public key has been modified and is invalid. An implementation should +# always check whether the public key is valid and on the same curve as the +# private key. The test vector includes the shared secret computed with the +# original public key if the public point is on the curve of the private key. +# Generating a shared secret other than the one with the original key likely +# indicates that the bug is exploitable. +# The public key does not use a named curve. RFC 3279 allows to encode such +# curves by explicitly encoding, the parameters of the curve equation, modulus, +# generator, order and cofactor. However, many crypto libraries only support +# named curves. Modifying some of the EC parameters and encoding the +# corresponding public key as an unnamed curve is a potential attack vector. + +# tcId = 90 +# Public key uses wrong curve: secp224r1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 304e301006072a8648ce3d020106052b81040021033a0004af6dd5b71a8c1cf921e36854ae091aaa589d337e740e8579f816eb9e36b03eec5cf956d0fdd2fc1687335507fc1c4a5717d3b5b8ea8340d1 +result = invalid +shared = + +# tcId = 91 +# Public key uses wrong curve: secp256r1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000453366db79b320781936df61bb55d4499949d813ee5abaa5dda70da4f97f68228ccc69d7cd0b7266cfc28d0dcafdf3e83738cc611acb08f8b896c4ecf82dd65ae +result = invalid +shared = + +# tcId = 92 +# Public key uses wrong curve: secp384r1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 3076301006072a8648ce3d020106052b8104002203620004aa45c13ce3cfea8538422712903edc0ce56df74ede0776e843555a786f9738de1943dffd729addfd4772169751d7765a45b5bb540a47d198f4c8c7c21e67560c1e12f70b64520109bb8858a3f8d6bb4012003431db0778633313fdb9464c47ec +result = invalid +shared = + +# tcId = 93 +# Public key uses wrong curve: secp256k1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 3056301006072a8648ce3d020106052b8104000a0342000475e01a1555380be188d69aac340a4675e4a6f73d63976a1075249827d8ecc2a31e65ed1eb591954e33a38f68ef8aa6c930229d8755e53257602b3eaa87de6f02 +result = invalid +shared = + +# tcId = 94 +# Public key uses wrong curve: brainpoolP224r1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 3052301406072a8648ce3d020106092b2403030208010105033a0004905a06d5bc093697155aaff67305976a769b904d8db9573c4be361626def2ffe1d5ec14462c02e5ffb24fb3edb2b6c77a5cfee2492db757b +result = invalid +shared = + +# tcId = 95 +# Public key uses wrong curve: brainpoolP256r1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 305a301406072a8648ce3d020106092b2403030208010107034200042b87df1b6a5cbc4c4a184b7eec9b6c0483f7b80e6477b29649630c37481876bb0e3423f7a00d469320b7e60c88370979064efb9ceb8b387aa87a7c6941ccd9ed +result = invalid +shared = + +# tcId = 96 +# Public key uses wrong curve: brainpoolP320r1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 306a301406072a8648ce3d020106092b24030302080101090352000470df62394ee036eefbc8ef11a9a5f3a8af659016f29e7125e52cfda0a74e52c7b21d18ac4375f5e4164c5338fa2f545a3fb2022f0e0686d5b4882958f72b1bb626e37093e3f19673968c237823327fd6 +result = invalid +shared = + +# tcId = 97 +# Public key uses wrong curve: brainpoolP384r1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 307a301406072a8648ce3d020106092b240303020801010b03620004808dc7b1c6d3ec470a7fe5d6144c9c3a8c92b116103aa2edbfce0b2c827312eebcd1350d09a739eac901af341487861b195270f671e0a758deb23222db4fe7983d42a785b35fd158344cd6483c4da5b409e77d0a284dfa9c3e0d91a4d275fce9 +result = invalid +shared = + +# tcId = 98 +# Public key uses wrong curve: brainpoolP512r1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 30819b301406072a8648ce3d020106092b240303020801010d0381820004aa11b560dc1e572f2374e5869210304d66d95b1d8ce40940157f5f5b4a7dc8a340f7c305d6bea289f5c430eb888e2a03528336aaf4680d9d153cd162e2229df330425025df2625b147568927f6acf704e4936f8989ff9d44f33ee22196e70dfd8711e8934d8d42abb4b67afcfee213c3ad5e5c83fcf4283d253d6c5c0e581970 +result = invalid +shared = + +# tcId = 99 +# Public key uses wrong curve: brainpoolP224t1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 3052301406072a8648ce3d020106092b2403030208010106033a00048d7a746de095728a8d83219e587040cb6e794d088ab6eab426638202579850b0f235edcf4eb8adcb51bf41878f6b71a1f2d4101022964340 +result = invalid +shared = + +# tcId = 100 +# Public key uses wrong curve: brainpoolP256t1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 305a301406072a8648ce3d020106092b24030302080101080342000424ad316bf41e4102dd7ae16311b64464df2d13ea68a11dd27a4445ed900962180ff8c627ed73f0c667863ee3a671e6ed1fa2781b51a229ee2cd21fbf69437d60 +result = invalid +shared = + +# tcId = 101 +# Public key uses wrong curve: brainpoolP320t1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 306a301406072a8648ce3d020106092b240303020801010a03520004548ce4997cc618800d3834dd4b3346e4559be066ab5d0cecd7123c4de940c168fecd3bae067fe3fc7aee875c9da0a86932f0779f42344470860c22dbc6f305eab792fc0874157e175c7d3c4d3bf54c4b +result = invalid +shared = + +# tcId = 102 +# Public key uses wrong curve: brainpoolP384t1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 307a301406072a8648ce3d020106092b240303020801010c036200044fc2b35e3019a57a8ca6efe2ec1f72072c599a78c2725f7cfc2d9edf220b5f6abdb0c0d8d160182de451e26bcbb4e8c18726263e21ce56fb4bafaa1f186c745e2c8392ef8c5a1c03f5462ebbbcde0ffcc31e9a0b3e898ddb9c1c79e420fd7a35 +result = invalid +shared = + +# tcId = 103 +# Public key uses wrong curve: brainpoolP512t1 +private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 +public = 30819b301406072a8648ce3d020106092b240303020801010e03818200047122f743122681ac73b0d611af86847d8bec654cf99e7eaf5d4f684e4078a8e61dc6d07e831ad02cd40d41dbdb6b0e877d960b78a5ac34c1e6ce7c483503d6de2eaddeffbfb3f144d29d13535a05815934186707146e45f64476bbdbc8645be973270a4c5e35d70ffd5eab2f08d1fb04762bc8aa80e999da14f744be9ff8c923 +result = invalid +shared = + +# tcId = 104 +# invalid public key +private = 1c1fb2cac9087a3397814b198a80e2ea5b437aac1b41e8a2bd8fef8700e4812aa817320e6e1e3865bd2cf75e43a78be5c27ff1c4b5f5019333cb37d0c9c4ff3ec61 +public = 3058301006072a8648ce3d020106052b810400230344000200429cb431c18f5f4e4e502f74214e6ac5ec2c3f86b830bac24de95feae142ca7d9aa8aa5b34f55af4b2848f2e6ba6df4c3ecd401a1d7b2a8287a332b202196fadbb +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 105 +# public key is a low order point on twist +private = 6619644155c449758f65e2dfe7ba89dee1e090c1d68b6342f43cb1ac000090a7f0408138c1de217990bb015cd1d95f1d884cf659f7324f2fe21eeba63ea988aacd +public = 3058301006072a8648ce3d020106052b81040023034400020108cbf3c9bf8e42135d87127556831076d84d5e549e645afda8a099249231b59b6c508dee4e91c9a543e90ebc82613f86cb1290e29102a0f2fdeb57bf4193fb4639 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 106 +# public key is a low order point on twist +private = 0a257d97aa4e5195e2919c147c1639bb0da0cce479a036489006b7b8e7e885096066e5adc8fe7c45940c5a6b94d5065b966a45f099a0cecfe9cce1b3e99dca479f2 +public = 3058301006072a8648ce3d020106052b8104002303440003011f2dca6b686e2141c11822e2d5439261583ce98cd6c4041c6d1be9e17dee33ea4a65c3e8cca6de50a30a39c788a585f1188bef0680a9c0264b3c8dcf494d0eb948 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 107 +# public key is a low order point on twist +private = 0a257d97aa4e5195e2919c147c1639bb0da0cce479a036489006b7b8e7e885096066e5adc8fe7c45940c5a6b94d5065b966a45f099a0cecfe9cce1b3e99dca479f3 +public = 3058301006072a8648ce3d020106052b8104002303440002011f2dca6b686e2141c11822e2d5439261583ce98cd6c4041c6d1be9e17dee33ea4a65c3e8cca6de50a30a39c788a585f1188bef0680a9c0264b3c8dcf494d0eb948 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 108 +# public key is a low order point on twist +private = 6619644155c449758f65e2dfe7ba89dee1e090c1d68b6342f43cb1ac000090a7f0408138c1de217990bb015cd1d95f1d884cf659f7324f2fe21eeba63ea988aacc +public = 3058301006072a8648ce3d020106052b81040023034400030108cbf3c9bf8e42135d87127556831076d84d5e549e645afda8a099249231b59b6c508dee4e91c9a543e90ebc82613f86cb1290e29102a0f2fdeb57bf4193fb4639 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 109 +# public key is a low order point on twist +private = 2a35258787f91ad0bd3432c3022e4d3ed349c8768a7e7caa1836022fc0c89a9073f6ce14d0990d5b7bb413061c7160e7bd566a5c89f14901b2cc19f1ad531f41e2 +public = 3058301006072a8648ce3d020106052b81040023034400020009cc73141cf1843d2b2c95dc5cbc4d615c6da4814c1c7208615d8e78c7a8666aba1852faaa45a45d32bd0fde6ea78f262a96bf1e02949cea48c33c695103683048 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 110 +# public key is a low order point on twist +private = 1afe5c77a626161fb2c25964c7895b9fff787099db83f077f05a4bfa320fb61f9315bb44d3fb9dd72225d9d993a18df82ac53fb4a5f86b23cb650e5e4778066f677 +public = 3058301006072a8648ce3d020106052b81040023034400030047b9cf28e04b38796858545d60d6133fbdc20ede086e5d95111c982b8c276628235e536c075637a97c0a6c30d02b83b19e578203473eea16dfdeaeccb1dc0d9b19 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 111 +# public key is a low order point on twist +private = 24ae709e1644e3087b52470c565268becbdbf97de59916763507d109c2e5b7c21727c64e9b560aa248d7bc9fe0ac95720d507263b7b2859b056ea165301cd599d5 +public = 3058301006072a8648ce3d020106052b810400230344000300c18410f5727ee0101a52ef95c0ac455cbc65bf9967f0a2c419aa0a291cabad569f2337e102d0a9128f4212dbf9fa9e5a8f14ca7f28e82977281facdd9ca7a92c78 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 112 +# public key is a low order point on twist +private = 24ae709e1644e3087b52470c565268becbdbf97de59916763507d109c2e5b7c21727c64e9b560aa248d7bc9fe0ac95720d507263b7b2859b056ea165301cd599d6 +public = 3058301006072a8648ce3d020106052b810400230344000200c18410f5727ee0101a52ef95c0ac455cbc65bf9967f0a2c419aa0a291cabad569f2337e102d0a9128f4212dbf9fa9e5a8f14ca7f28e82977281facdd9ca7a92c78 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 113 +# public key is a low order point on twist +private = 1afe5c77a626161fb2c25964c7895b9fff787099db83f077f05a4bfa320fb61f9315bb44d3fb9dd72225d9d993a18df82ac53fb4a5f86b23cb650e5e4778066f678 +public = 3058301006072a8648ce3d020106052b81040023034400020047b9cf28e04b38796858545d60d6133fbdc20ede086e5d95111c982b8c276628235e536c075637a97c0a6c30d02b83b19e578203473eea16dfdeaeccb1dc0d9b19 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 114 +# public key is a low order point on twist +private = 2a35258787f91ad0bd3432c3022e4d3ed349c8768a7e7caa1836022fc0c89a9073f6ce14d0990d5b7bb413061c7160e7bd566a5c89f14901b2cc19f1ad531f41e1 +public = 3058301006072a8648ce3d020106052b81040023034400030009cc73141cf1843d2b2c95dc5cbc4d615c6da4814c1c7208615d8e78c7a8666aba1852faaa45a45d32bd0fde6ea78f262a96bf1e02949cea48c33c695103683048 +result = invalid +shared = +# The point in the public key is compressed. Not every library supports points +# in compressed format. + +# tcId = 115 +# length contains leading 0 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3082009b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 116 +# length contains leading 0 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d3082001006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 117 +# length contains leading 0 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d3012068200072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 118 +# length contains leading 0 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301206072a8648ce3d0201068200052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 119 +# length contains leading 0 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819c301006072a8648ce3d020106052b81040023038200860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 120 +# wrong length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 309c301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 121 +# wrong length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 309a301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 122 +# wrong length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301106072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 123 +# wrong length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b300f06072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 124 +# wrong length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006082a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 125 +# wrong length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006062a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 126 +# wrong length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106062b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 127 +# wrong length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106042b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 128 +# wrong length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a301006072a8648ce3d020106052b8104002303870004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 129 +# wrong length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a301006072a8648ce3d020106052b8104002303850004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 130 +# uint32 overflow in length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3085010000009b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 131 +# uint32 overflow in length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a03085010000001006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 132 +# uint32 overflow in length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a03015068501000000072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 133 +# uint32 overflow in length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a0301506072a8648ce3d0201068501000000052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 134 +# uint32 overflow in length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f301006072a8648ce3d020106052b81040023038501000000860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 135 +# uint64 overflow in length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 308901000000000000009b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 136 +# uint64 overflow in length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a4308901000000000000001006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 137 +# uint64 overflow in length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a4301906890100000000000000072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 138 +# uint64 overflow in length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a4301906072a8648ce3d020106890100000000000000052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 139 +# uint64 overflow in length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a3301006072a8648ce3d020106052b8104002303890100000000000000860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 140 +# length = 2**31 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30847fffffff301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 141 +# length = 2**31 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f30847fffffff06072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 142 +# length = 2**31 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f301406847fffffff2a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 143 +# length = 2**31 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f301406072a8648ce3d020106847fffffff2b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 144 +# length = 2**31 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819e301006072a8648ce3d020106052b8104002303847fffffff0004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 145 +# length = 2**32 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3084ffffffff301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 146 +# length = 2**32 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f3084ffffffff06072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 147 +# length = 2**32 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f30140684ffffffff2a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 148 +# length = 2**32 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f301406072a8648ce3d02010684ffffffff2b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 149 +# length = 2**32 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819e301006072a8648ce3d020106052b810400230384ffffffff0004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 150 +# length = 2**40 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3085ffffffffff301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 151 +# length = 2**40 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a03085ffffffffff06072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 152 +# length = 2**40 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a030150685ffffffffff2a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 153 +# length = 2**40 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a0301506072a8648ce3d02010685ffffffffff2b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 154 +# length = 2**40 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f301006072a8648ce3d020106052b810400230385ffffffffff0004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 155 +# length = 2**64 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3088ffffffffffffffff301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 156 +# length = 2**64 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a33088ffffffffffffffff06072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 157 +# length = 2**64 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a330180688ffffffffffffffff2a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 158 +# length = 2**64 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a3301806072a8648ce3d02010688ffffffffffffffff2b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 159 +# length = 2**64 - 1 +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a2301006072a8648ce3d020106052b810400230388ffffffffffffffff0004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 160 +# incorrect length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30ff301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 161 +# incorrect length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b30ff06072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 162 +# incorrect length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006ff2a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 163 +# incorrect length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106ff2b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 164 +# incorrect length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a301006072a8648ce3d020106052b8104002303ff0004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 165 +# indefinite length without termination +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3080301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 166 +# indefinite length without termination +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b308006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 167 +# indefinite length without termination +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006802a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 168 +# indefinite length without termination +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106802b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 169 +# indefinite length without termination +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a301006072a8648ce3d020106052b8104002303800004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 170 +# removing sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 171 +# removing sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081890381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 172 +# lonely sequence tag +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 173 +# lonely sequence tag +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30818a300381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 174 +# appending 0's to sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500000 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 175 +# appending 0's to sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301206072a8648ce3d020106052b8104002300000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 176 +# prepending 0's to sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d0000301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 177 +# prepending 0's to sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d3012000006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 178 +# appending unused 0's to sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500000 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 179 +# appending unused 0's to sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301006072a8648ce3d020106052b8104002300000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 180 +# appending null value to sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500500 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 181 +# appending null value to sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301206072a8648ce3d020106052b8104002305000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 182 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a149817730819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 183 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a0250030819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 184 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819e30819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500004deadbeef +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 185 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a03015498177301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 186 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f30142500301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 187 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a33012301006072a8648ce3d020106052b810400230004deadbeef0381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 188 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a03015260c49817706072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 189 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f3014260b250006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 190 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a33018260906072a8648ce3d02010004deadbeef06052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 191 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a0301506072a8648ce3d0201260a49817706052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 192 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f301406072a8648ce3d02012609250006052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 193 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a3301806072a8648ce3d0201260706052b810400230004deadbeef0381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 194 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a1301006072a8648ce3d020106052b8104002323818c4981770381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 195 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a0301006072a8648ce3d020106052b8104002323818b25000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 196 +# including garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a4301006072a8648ce3d020106052b810400232381890381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500004deadbeef +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 197 +# including undefined tags +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a4aa00bb00cd0030819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 198 +# including undefined tags +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a2aa02aabb30819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 199 +# including undefined tags +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a33018aa00bb00cd00301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 200 +# including undefined tags +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a13016aa02aabb301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 201 +# including undefined tags +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a33018260faa00bb00cd0006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 202 +# including undefined tags +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a13016260daa02aabb06072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 203 +# including undefined tags +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a3301806072a8648ce3d0201260daa00bb00cd0006052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 204 +# including undefined tags +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a1301606072a8648ce3d0201260baa02aabb06052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 205 +# including undefined tags +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a4301006072a8648ce3d020106052b8104002323818faa00bb00cd000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 206 +# including undefined tags +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a2301006072a8648ce3d020106052b8104002323818daa02aabb0381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 207 +# truncated length of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 208 +# truncated length of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30818b30810381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 209 +# Replacing sequence with NULL +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 0500 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 210 +# Replacing sequence with NULL +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30818b05000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 211 +# changing tag value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 2e819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 212 +# changing tag value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 2f819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 213 +# changing tag value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 31819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 214 +# changing tag value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 32819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 215 +# changing tag value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = ff819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 216 +# changing tag value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b2e1006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 217 +# changing tag value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b2f1006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 218 +# changing tag value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b311006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 219 +# changing tag value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b321006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 220 +# changing tag value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819bff1006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 221 +# dropping value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3000 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 222 +# dropping value of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30818b30000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 223 +# truncate sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 224 +# truncate sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a1006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 225 +# truncate sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a300f06072a8648ce3d020106052b8104000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 226 +# truncate sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a300f072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 227 +# indefinite length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3080301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500000 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 228 +# indefinite length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d308006072a8648ce3d020106052b8104002300000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 229 +# indefinite length with truncated delimiter +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3080301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d5000 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 230 +# indefinite length with truncated delimiter +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819c308006072a8648ce3d020106052b81040023000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 231 +# indefinite length with additional element +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3080301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d5005000000 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 232 +# indefinite length with additional element +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f308006072a8648ce3d020106052b81040023050000000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 233 +# indefinite length with truncated element +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3080301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50060811220000 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 234 +# indefinite length with truncated element +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a1308006072a8648ce3d020106052b810400230608112200000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 235 +# indefinite length with garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3080301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500000fe02beef +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 236 +# indefinite length with garbage +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a1308006072a8648ce3d020106052b810400230000fe02beef0381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 237 +# indefinite length with nonempty EOC +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3080301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500002beef +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 238 +# indefinite length with nonempty EOC +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f308006072a8648ce3d020106052b810400230002beef0381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 239 +# prepend empty sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d3000301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 240 +# prepend empty sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d3012300006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 241 +# append empty sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d503000 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 242 +# append empty sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301206072a8648ce3d020106052b8104002330000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 243 +# sequence of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819e30819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 244 +# sequence of sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d3012301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 245 +# truncated sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3012301006072a8648ce3d020106052b81040023 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 246 +# truncated sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 308194300906072a8648ce3d02010381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 247 +# repeat element in sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30820124301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 248 +# repeat element in sequence +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a2301706072a8648ce3d020106052b8104002306052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 249 +# long form encoding of length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819c30811006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 250 +# long form encoding of length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819c30110681072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 251 +# long form encoding of length +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819c301106072a8648ce3d02010681052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 252 +# removing oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 308192300706052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 253 +# lonely oid tag +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819330080606052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 254 +# lonely oid tag +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 308195300a06072a8648ce3d0201060381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 255 +# appending 0's to oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301206092a8648ce3d0201000006052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 256 +# appending 0's to oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301206072a8648ce3d020106072b8104002300000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 257 +# prepending 0's to oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d3012060900002a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 258 +# prepending 0's to oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301206072a8648ce3d0201060700002b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 259 +# appending unused 0's to oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301206072a8648ce3d0201000006052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 260 +# appending null value to oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301206092a8648ce3d0201050006052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 261 +# appending null value to oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301206072a8648ce3d020106072b8104002305000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 262 +# truncated length of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081943009068106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 263 +# truncated length of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 308196300b06072a8648ce3d020106810381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 264 +# Replacing oid with NULL +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081943009050006052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 265 +# Replacing oid with NULL +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 308196300b06072a8648ce3d020105000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 266 +# changing tag value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301004072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 267 +# changing tag value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301005072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 268 +# changing tag value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301007072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 269 +# changing tag value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301008072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 270 +# changing tag value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b3010ff072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 271 +# changing tag value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020104052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 272 +# changing tag value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020105052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 273 +# changing tag value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020107052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 274 +# changing tag value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020108052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 275 +# changing tag value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d0201ff052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 276 +# dropping value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081943009060006052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 277 +# dropping value of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 308196300b06072a8648ce3d020106000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 278 +# modify first byte of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b30100607288648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 279 +# modify first byte of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d0201060529810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 280 +# modify last byte of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d028106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 281 +# modify last byte of oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b810400a30381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 282 +# truncate oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a300f06062a8648ce3d0206052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 283 +# truncate oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a300f06068648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 284 +# truncate oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a300f06072a8648ce3d020106042b8104000381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 285 +# truncate oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a300f06072a8648ce3d02010604810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 286 +# wrong oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819e3013060a3262306530333032316106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 287 +# wrong oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a6301b061236303836343830313635303330343032303106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 288 +# wrong oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a0301506072a8648ce3d0201060a326230653033303231610381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 289 +# wrong oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a8301d06072a8648ce3d020106123630383634383031363530333034303230310381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 290 +# longer oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a4301906103261383634386365336430323031303106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 291 +# longer oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a2301706072a8648ce3d0201060c3262383130343030323330310381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 292 +# oid with modified node +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a23017060e326138363438636533643032313106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 293 +# oid with modified node +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081aa301f06163261383634386365336430323838383038303830303106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 294 +# oid with modified node +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a0301506072a8648ce3d0201060a326238313034303033330381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 295 +# oid with modified node +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a8301d06072a8648ce3d020106123262383130343030383838303830383032330381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 296 +# large integer in oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081b430290620326138363438636533643032383238303830383038303830383038303830303106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 297 +# large integer in oid +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081b2302706072a8648ce3d0201061c326238313034303038323830383038303830383038303830383032330381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 298 +# oid with invalid node +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a5301a0611326138363438636533643032303165303306052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 299 +# oid with invalid node +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819c301106082a808648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 300 +# oid with invalid node +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3081a3301806072a8648ce3d0201060d326238313034303032336530330381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 301 +# oid with invalid node +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819c301106072a8648ce3d020106062b80810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 302 +# lonely bit string tag +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3013301006072a8648ce3d020106052b8104002303 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 303 +# appending 0's to bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301006072a8648ce3d020106052b810400230381880004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500000 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 304 +# prepending 0's to bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301006072a8648ce3d020106052b8104002303818800000004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 305 +# appending null value to bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819d301006072a8648ce3d020106052b810400230381880004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d500500 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 306 +# truncated length of bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3014301006072a8648ce3d020106052b810400230381 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 307 +# Replacing bit string with NULL +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3014301006072a8648ce3d020106052b810400230500 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 308 +# changing tag value of bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b810400230181860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 309 +# changing tag value of bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b810400230281860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 310 +# changing tag value of bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b810400230481860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 311 +# changing tag value of bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b810400230581860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 312 +# changing tag value of bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b81040023ff81860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 313 +# dropping value of bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3014301006072a8648ce3d020106052b810400230300 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 314 +# modify first byte of bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b810400230381860204017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 315 +# modify last byte of bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b810400230381860004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32dd0 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 316 +# truncate bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a301006072a8648ce3d020106052b810400230381850004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 317 +# truncate bit string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819a301006072a8648ce3d020106052b8104002303818504017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 318 +# declaring bits as unused in a bit-string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b810400230381860104017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 319 +# unused bits in a bit-string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819f301006072a8648ce3d020106052b8104002303818a2004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d5001020304 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 320 +# unused bits in empty bit-string +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 3015301006072a8648ce3d020106052b81040023030103 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. + +# tcId = 321 +# 128 unused bits +private = 18c3c384368133e46c99ad2421ff44eed459b5d209cb2aa70b09bd7d38cc6225164a9815dff6d69afbf49f80da22f6ea33454b6544b69b3330008c6a22259f9f9e5 +public = 30819b301006072a8648ce3d020106052b810400230381868004017ee16985c3678234d272913682a7c122b35c1c5011d1933bb7b08c8b883afcf469453079e2ef02a724a6ddbe25ee3b2e63007dd2838c5bb00fa1ff8fd18cf81eaa01116ce049d63f22f71c7d11c0acd67cacd1b4ea0125bd48e872dc5cc9fc4073b7c844c4b42223483b4aa8402b198d981dc8b7aba048749b4a0496e2537d3cc32d50 +result = acceptable +shared = 00d397252813d37329b9e277823e2dfccdd1ee519f0c32ccbb3f5fc62062e8c07dbf3fb86085736115b70f86f44ad852f3488ecbb5e7ec31e961e869b40b6add05f5 +# The public key in this test uses an invalid ASN encoding. Some cases where the +# ASN parser is not strictly checking the ASN format are benign as long as the +# ECDH computation still returns the correct shared value. +
diff --git a/third_party/wycheproof_testvectors/ecdh_test.txt b/third_party/wycheproof_testvectors/ecdh_test.txt deleted file mode 100644 index ae8221a..0000000 --- a/third_party/wycheproof_testvectors/ecdh_test.txt +++ /dev/null
@@ -1,4541 +0,0 @@ -# Imported from Wycheproof's ecdh_test.json. -# This file is generated by convert_wycheproof.go. Do not edit by hand. -# -# Algorithm: ECDH -# Generator version: 0.4.12 - -[curve = secp224r1] -[encoding = asn] - -# tcId = 1 -# normal case -private = 565577a49415ca761a0322ad54e4ad0ae7625174baf372c2816f5328 -public = 304e301006072a8648ce3d020106052b81040021033a00047d8ac211e1228eb094e285a957d9912e93deee433ed777440ae9fc719b01d050dfbe653e72f39491be87fb1a2742daa6e0a2aada98bb1aca -result = valid -shared = b8ecdb552d39228ee332bafe4886dbff272f7109edf933bc7542bd4f -curve = secp224r1 - -# tcId = 2 -# compressed public key -private = 565577a49415ca761a0322ad54e4ad0ae7625174baf372c2816f5328 -public = 3032301006072a8648ce3d020106052b81040021031e00027d8ac211e1228eb094e285a957d9912e93deee433ed777440ae9fc71 -result = acceptable -shared = b8ecdb552d39228ee332bafe4886dbff272f7109edf933bc7542bd4f -curve = secp224r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 3 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004e73a6ca72f3a2fae6e0a01a0ed03bfa3058b04576942eaf063095e62ca16fd31fa0f38eeb592cbeea1147751fdd2a5b6cc0ead404467a5b6 -result = valid -shared = 00000000000000000000000000000000000000000000000000000003 -curve = secp224r1 - -# tcId = 4 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a00045763fa2ae16367ad23d471cc9a52466f0d81d864e5640cefe384114594d9fecfbed4f254505ac8b41d2532055a07f0241c4818b552cbb636 -result = valid -shared = 00000000000000000000000100000000000000000000000000000001 -curve = secp224r1 - -# tcId = 5 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004142c1fd80fa2121a59aa898144084ec033f7a56a34eee0b499e29ae51c6d8c1bbb1ef2a76d565899fe44ffc1207d530d7f598fb77f4bb76b -result = valid -shared = 00000000000000ffffffffffffff0000000000000100000000000000 -curve = secp224r1 - -# tcId = 6 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004ed6f793e10c80d12d871cf8988399c4898a9bf9ffd8f27399f63de25f0051cdf4eec7f368f922cfcd948893ceca0c92e540cc4367a99a66a -result = valid -shared = 00000000ffffffffffffffff00000000000000010000000000000000 -curve = secp224r1 - -# tcId = 7 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a000408fcfc1a63c82860be12e4137433dfc40be9acdd245f9a8c4e56be61a385fc09f808383383f4b1d0d5365b6e5dcfacdc19bc7bcfed221274 -result = valid -shared = 0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff -curve = secp224r1 - -# tcId = 8 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004d883ed77f1861e8712800d31df67888fe39f150c79a27aa88caeda6b180f3f623e2ff3ab5370cf8179165b085af3dd4502850c0104caed9a -result = valid -shared = 0003fffffff00000003fffffff00000003fffffff000000040000000 -curve = secp224r1 - -# tcId = 9 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a00042b8b279b85ee3f3d2c0abeb36fdfc5aad6157d652d26489381a32cd73224bd757ef794acc92b0b3b9e7990618bb343a9a09bdb9d3616eff6 -result = valid -shared = 01fffffffc00000007fffffff00000001fffffffc000000080000001 -curve = secp224r1 - -# tcId = 10 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a00048bd5f03391eeeae1744e8fc53d314efffafa4d3fa4f1b95c3388a9cd7c86358b273119c537133eb55e79c6ac510b10980b379b919ccf2e2f -result = valid -shared = 0a15c112ff784b1445e889f955be7e3ffdf451a2c0e76ab5cb32cf41 -curve = secp224r1 - -# tcId = 11 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004ce9631b6a16227778625c8e5421ae083cdd913abefde01dbe69f6c2b95386aff2b483b2c47151cfaabfd000614c683ce2e1778221ae42c1b -result = valid -shared = 62989eaaa26a16f07330c3c51e0a4631fd016bfcede26552816aee39 -curve = secp224r1 - -# tcId = 12 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a00041f441c98eda956a6a7fdbfd8d21910860ab59d16c3e52f8e7fad6ca5df61a55fc508fc0499c55492f1e87bb2faa0cb4170b79f3a85ec2f3d -result = valid -shared = 661ac958c0febbc718ccf39cefc6b66c4231fbb9a76f35228a3bf5c3 -curve = secp224r1 - -# tcId = 13 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004be74583cb9d3a05ae54923624e478a329a697d842dfae33141c844d7d9ba4fc96e0fe716ac0542e87368662fc2f0cb9b0ae57936ddec7190 -result = valid -shared = 6d7e41821abe1094d430237923d2a50de31768ab51b12dce8a09e34c -curve = secp224r1 - -# tcId = 14 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004a281ad992b363597ac93ff0de8ab1f7e51a6672dcbb58f9d739ba430ce0192874038daefc3130eec65811c7255da70fea65c1003f6892faa -result = valid -shared = 7fffffffffffffffffffffffffffffffffffffffffffffffffffffff -curve = secp224r1 - -# tcId = 15 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004be3e22133f51203f631b81dde8c020cdea5daa1f99cfc05c88fad2dc0f243798d6e72d1de9e3cdca4144e0a6c0f2a584d07589006972c197 -result = valid -shared = fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0008001 -curve = secp224r1 - -# tcId = 16 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004af14547c20afbd91bfe64ea03d45a76a71241f23520ef897ff91eff1b54ca6ca8c25fd73852ec6654617434eff7f0225684d4dea7a4f8a97 -result = valid -shared = ffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff -curve = secp224r1 - -# tcId = 17 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004b1e484925018729926acda56ff3e2f6c1e7e8f162b178d8e8afb45564fceaa6da5d998fe26b6b26a055169063a5ab6908852ca8b54e2de6c -result = valid -shared = fffff0000007fffffe000000ffffffc000001ffffff8000003ffffff -curve = secp224r1 - -# tcId = 18 -# edge case for shared secret -private = 0a2b6442a37f9201b56758034d2009be64b0ab7c02d7e398cac9665d6 -public = 304e301006072a8648ce3d020106052b81040021033a0004937eb09fb145c8829cb7df20a4cbeed396791373de277871d6c5f9cc3b5b4fd56464a71fc4a2a6af3bd251952bffa829489e68a8d06f96b6 -result = valid -shared = ffffffff00000000ffffffff00000000ffffffff00000000ffffffff -curve = secp224r1 - -# tcId = 19 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a0004000000000000000000000000000000000000000000000000000000037cac269c67bd55ea14efff4eadefe5e74978514af14c88fab46ec046 -result = valid -shared = 3fa0b9ff70b884f9f57bb84f7a9532d93f6ba803f89dd8ff008177d7 -curve = secp224r1 - -# tcId = 20 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a0004000000000000000000000001000000000000000000000000000000012ea2f4917bdfdb008306cc10a18e2557633ba861001829dcbfb96fba -result = valid -shared = be1ded8cb7ff8a585181f96d681e31b332fe27dcae922dca2310300d -curve = secp224r1 - -# tcId = 21 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a000400000000000000ffffffffffffff000000000000010000000000000073ca5f8f104997a2399e0c7f25e72a75ec29fc4542533d3fea89a33a -result = valid -shared = a2e86a260e13515918a0cafdd87855f231b5624c560f976159e06a75 -curve = secp224r1 - -# tcId = 22 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a000400000000ffffffffffffffff000000000000000100000000000000006fe6805f59b19b0dd389452a1d4a420bfeb6c369cf6fed5b12e6e654 -result = valid -shared = 31ef7c8d10404a0046994f313a70574b027e87f9028eca242c1b5bf5 -curve = secp224r1 - -# tcId = 23 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a00040000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff77c5cfa4e2c384938d48bd8dd98f54c86b279f1df8c0a1f6692439c9 -result = valid -shared = d1976a8ef5f54f24f5a269ad504fdca849fc9c28587ba294ef267396 -curve = secp224r1 - -# tcId = 24 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a00040003fffffff00000003fffffff00000003fffffff00000004000000001f0828136016bb97445461bc59f2175d8d23557d6b9381f26136e3d -result = valid -shared = ce7890d108ddb2e5474e6417fcf7a9f2b3bd018816062f4835260dc8 -curve = secp224r1 - -# tcId = 25 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a000401fffffffc00000007fffffff00000001fffffffc0000000800000012d8acca6f199d4a94b933ba1aa713a7debde8ac57b928f596ae66a66 -result = valid -shared = 30b6ff6e8051dae51e4fe34b2d9a0b1879153e007eb0b5bdf1791a9c -curve = secp224r1 - -# tcId = 26 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a00040a15c112ff784b1445e889f955be7e3ffdf451a2c0e76ab5cb32cf413d4df973c563c6decdd435e4f864557e4c273096d9941ca4260a266e -result = valid -shared = 77ec668a00f72d85aa527624abb16c039fe490d17dd6c455a1ed7fd8 -curve = secp224r1 - -# tcId = 27 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a000462989eaaa26a16f07330c3c51e0a4631fd016bfcede26552816aee39389ee9436d616cab90032931aa7fbbfcfc13309f61e2423cc8dab93c -result = valid -shared = a3f432f6aba9a92f49a5ea64ffe7059a9d9b487a0b5223ddc988208b -curve = secp224r1 - -# tcId = 28 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a0004661ac958c0febbc718ccf39cefc6b66c4231fbb9a76f35228a3bf5c3103b8040e3cb41966fc64a68cacb0c14053f87d27e8ed7bf2d7fe51b -result = valid -shared = 1530fd9caf03737af34a4ba716b558cbecbc35d18402535a0a142313 -curve = secp224r1 - -# tcId = 29 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a00046d7e41821abe1094d430237923d2a50de31768ab51b12dce8a09e34c276cf273d75d367820dd556182def0957af0a314f48fed227c298dc0 -result = valid -shared = cfc39ccacb94ad0e0552b2e47112f60fbbe7ae0dc32230b9273dd210 -curve = secp224r1 - -# tcId = 30 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a00047fffffffffffffffffffffffffffffffffffffffffffffffffffffff7d8dbca36c56bcaae92e3475f799294f30768038e816a7d5f7f07d77 -result = valid -shared = 73bd63bd384a0faafb75cfed3e95d3892cbacf0db10f282c3b644771 -curve = secp224r1 - -# tcId = 31 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a0004fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc000800174f1ff5ea7fbc72b92f61e06556c26bab84c0b082dd6400ca1c1eb6d -result = valid -shared = 85b079c62e1f5b0fd6841dfa16026e15b641f65e13a14042567166bb -curve = secp224r1 - -# tcId = 32 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a0004ffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0126fdd5fccd0b5aa7fd5bb5b1308584b30556248cec80208a2fe962 -result = valid -shared = 8a834ff40e3fc9f9d412a481e18537ea799536c5520c6c7baaf12166 -curve = secp224r1 - -# tcId = 33 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a0004fffff0000007fffffe000000ffffffc000001ffffff8000003ffffff20cfa23077acc9fbcb71339c65880cd0b966b8a9497e65abed17f0b5 -result = valid -shared = a0887269766e6efcbc81d2b38f2d4638663f12377468a23421044188 -curve = secp224r1 - -# tcId = 34 -# edge cases for ephemeral key -private = 2bc15cf3981f4e15bbad387b506df647989e5478160be862f8c26969 -public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffff00000000ffffffff00000000ffffffff00000000ffffffff1c05ac2d4f10b69877c3243d51f887277b7bf735c326ab2f0d70da8c -result = valid -shared = c65d1911bc076a74588d8793ce7a0dcabf5793460cd2ebb02754a1be -curve = secp224r1 - -# tcId = 35 -# edge case private key -private = 3 -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = e71f2157bfe37697ea5193d4732dcc6e5412fa9d38387eacd391c1c6 -curve = secp224r1 - -# tcId = 36 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffff -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = fa2664717c7fa0161ec2c669b2c0986cdc20456a6e5406302bb53c77 -curve = secp224r1 - -# tcId = 37 -# edge case private key -private = 1000000000000000000000000000000000000000000000000000000 -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = af6e5ad34497bae0745f53ad78ce8b285d79f400d5c6e6a071f8e6bd -curve = secp224r1 - -# tcId = 38 -# edge case private key -private = 7fffffffffffffffffffffffffffffffffffffffffffffffffffffff -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = 12fd302ff8c13c55a9c111f8bb6b0a13ecf88299c0ae3032ce2bcaff -curve = secp224r1 - -# tcId = 39 -# edge case private key -private = 080000000000000000000000000000000000000000000000000000000 -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = 73f1a395b842f1a6752ae417e2c3dc90cafc4476d1d861b7e68ad030 -curve = secp224r1 - -# tcId = 40 -# edge case private key -private = 0ffffffffffffffffffffffffffff16a2e0b8f03d13dd29455c5c2a3d -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = b329c20ddb7c78ee4e622bb23a984c0d273ba34b6269f3d9e8f89f8e -curve = secp224r1 - -# tcId = 41 -# edge case private key -private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13cd29455c5c2a3d -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = 6f48345209b290ffc5abbe754a201479e5d667a209468080d06197b4 -curve = secp224r1 - -# tcId = 42 -# edge case private key -private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13d529455c5c2a3d -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = 9f6e30c1c9dad42a153aacd4b49a8e5c721d085cd07b5d5aec244fc1 -curve = secp224r1 - -# tcId = 43 -# edge case private key -private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29445c5c2a3d -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = 8cadfb19a80949e61bd5b829ad0e76d18a5bb2eeb9ed7fe2b901cecd -curve = secp224r1 - -# tcId = 44 -# edge case private key -private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c29b7 -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = 475fd96e0eb8cb8f100a5d7fe043a7a6851d1d611da2643a3c6ae708 -curve = secp224r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 45 -# edge case private key -private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a37 -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = 41ef931d669d1f57d8bb95a01a92321da74be8c6cbc3bbe0b2e73ebd -curve = secp224r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 46 -# edge case private key -private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3a -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = e71f2157bfe37697ea5193d4732dcc6e5412fa9d38387eacd391c1c6 -curve = secp224r1 - -# tcId = 47 -# edge case private key -private = 0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3b -public = 304e301006072a8648ce3d020106052b81040021033a0004478e73465bb1183583f4064e67e8b4343af4a05d29dfc04eb60ac2302e5b9a3a1b32e4208d4c284ff26822e09c3a9a4683443e4a35175504 -result = valid -shared = 11ff15126411299cbd49e2b7542e69e91ef132e2551a16ecfebb23a3 -curve = secp224r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 48 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a00040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp224r1 - -# tcId = 49 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a00040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp224r1 - -# tcId = 50 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a000400000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000000 -result = invalid -shared = -curve = secp224r1 - -# tcId = 51 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a000400000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000001 -result = invalid -shared = -curve = secp224r1 - -# tcId = 52 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a00040000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp224r1 - -# tcId = 53 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a00040000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp224r1 - -# tcId = 54 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a000400000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffff000000000000000000000000 -result = invalid -shared = -curve = secp224r1 - -# tcId = 55 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a000400000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffff000000000000000000000001 -result = invalid -shared = -curve = secp224r1 - -# tcId = 56 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp224r1 - -# tcId = 57 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp224r1 - -# tcId = 58 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000000 -result = invalid -shared = -curve = secp224r1 - -# tcId = 59 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000001 -result = invalid -shared = -curve = secp224r1 - -# tcId = 60 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff00000000000000000000000100000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp224r1 - -# tcId = 61 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff00000000000000000000000100000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp224r1 - -# tcId = 62 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff000000000000000000000001ffffffffffffffffffffffffffffffff000000000000000000000000 -result = invalid -shared = -curve = secp224r1 - -# tcId = 63 -# point is not on curve -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 304e301006072a8648ce3d020106052b81040021033a0004ffffffffffffffffffffffffffffffff000000000000000000000001ffffffffffffffffffffffffffffffff000000000000000000000001 -result = invalid -shared = -curve = secp224r1 - -# tcId = 64 -private = 0c6cafb74e2a5b5ed4b991cbbfbc28c18f6df208b6d05e7a2e6668014 -public = 3015301006072a8648ce3d020106052b81040021030100 -result = invalid -shared = -curve = secp224r1 - -# tcId = 65 -# public point not on curve -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 304e301006072a8648ce3d020106052b81040021033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5d -result = invalid -shared = -curve = secp224r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 66 -# public point = (0,0) -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 304e301006072a8648ce3d020106052b81040021033a00040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp224r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 67 -# order = -26959946667150639794667015087019625940457807714424391721682722368061 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021dff0000000000000000000000000000e95d1f470fc1ec22d6baa3a3d5c3020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = invalid -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 68 -# order = 0 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 3081f73081b806072a8648ce3d02013081ac020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34020100020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = invalid -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 69 -# order = 1 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 3081f73081b806072a8648ce3d02013081ac020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34020101020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = acceptable -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 70 -# order = 6277101735386680763835789423207665314073163949517624387909 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 3082010f3081d006072a8648ce3d02013081c4020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021900ffffffffffffffffffffffffffff16a2e0b8f03e13dd2945020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = acceptable -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 71 -# generator = (0,0) -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb40439040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = acceptable -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 72 -# generator not on curve -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e36021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = acceptable -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 73 -# cofactor = -1 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d0201ff033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = invalid -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 74 -# cofactor = 0 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020100033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = invalid -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 75 -# cofactor = 2 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020102033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = acceptable -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 76 -# cofactor = -# 26959946667150639794667015087019625940457807714424391721682722368061 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 3082012f3081f006072a8648ce3d02013081e4020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = invalid -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 77 -# cofactor = None -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 308201103081d106072a8648ce3d02013081c5020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041cfffffffffffffffffffffffffffffffefffffffffffffffffffffffe041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904b70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21bd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = acceptable -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 78 -# modified prime -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00c123da0a46a971da9468161e61a5c71a02e6c9bdb3392f4016fb457b303c041c3edc25f5b9568e256b97e9e19e5a38e4fd1936424cc6d0bfe904ba83041cb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4043904000000000000000000285145f31ae4d40000000000000000000003387edad63d1a600740ce66b6f04d67ed06ea1a75c16294336ed05b3fa3021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020101033a0004000000000000000000285145f31ae4d40000000000000000000003387edad63d1a600740ce66b6f04d67ed06ea1a75c16294336ed05b3fa3 -result = invalid -shared = 3de0a5036fcde544c72cbe33cedb8709549bc3b6a4d750ee0de4c80d -curve = secp224r1 -# The modulus of the public key has been modified. The public point of the -# public key has been chosen so that it is both a point on both the curve of the -# modified public key and the private key. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 79 -# using secp256r1 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004cbf6606595a3ee50f9fceaa2798c2740c82540516b4e5a7d361ff24e9dd15364e5408b2e679f9d5310d1f6893b36ce16b4a507509175fcb52aea53b781556b39 -result = invalid -shared = -curve = secp224r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 80 -# using secp256k1 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 3056301006072a8648ce3d020106052b8104000a03420004a1263e75b87ae0937060ff1472f330ee55cdf8f4329d6284a9ebfbcc856c11684225e72cbebff41e54fb6f00e11afe53a17937bedbf2df787f8ef9584f775838 -result = invalid -shared = -curve = secp224r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 81 -# a = 0 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 3081f83081b906072a8648ce3d02013081ad020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff0000000000000000000000013021040100041cd0d5e347a38ce5b6e1f47edddd8a223bca45d2015de76ec835a4df57043904a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020101033a0004a10fb7bf22d299fc5bc43bd2d0e8da28af28ace8430bee28f9e5b57554275c0615d8d9a3011d7bc4c1c4cf4a834c8dc46f25b98854401a5b -result = acceptable -shared = 9b992dad1c2b5dadd3b5aeb84b7a91fb6fe5f46e02ab2c7fa32696a7 -curve = secp224r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 82 -# public key of order 3 -private = 0d07629eb653a169ae3231ea1030faaf3e7f8ffe388030ee315d0a1d2 -public = 308201133081d406072a8648ce3d02013081c8020101302806072a8648ce3d0101021d00ffffffffffffffffffffffffffffffff000000000000000000000001303c041ce7a362cacbe0cc77d95c4868c22f1ce547191f4636f26b9d2f25b07e041c95053dc7ca44618c27cb0f0e3b954a5019d10d9f08bce793755d8468043904800163296bbe35f54a8166d8452f80597d896f35afba33534b910bc63cea6f440a6d313fd31252dfe2190188e99481950dc117d9a1aed088021d00ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d020101033a0004800163296bbe35f54a8166d8452f80597d896f35afba33534b910bc6c31590bbf592cec02cedad201de6fe76166b7e6af23ee8265e512f79 -result = invalid -shared = 67b3a42a01e4a4d6277d9348a280c0b5534c299908d9b10afb7365ab -curve = secp224r1 -# The vector contains a weak public key. The curve is not a named curve, the -# public key point has order 3 and has been chosen to be on the same curve as -# the private key. This test vector is used to check ECC implementations for -# missing steps in the verification of the public key. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 83 -# Public key uses wrong curve: secp256r1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ea36cf70fab75684eabe6569ce623db0deaa8c95f61c8be50b8b9f3eb7d4b9ec48d9e4814f4cb1c286589eaaa990d3f3238b2d6d6be964abfad964824b653376 -result = invalid -shared = -curve = secp224r1 - -# tcId = 84 -# Public key uses wrong curve: secp384r1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 3076301006072a8648ce3d020106052b81040022036200044b2470ad3d13269c10a17d222ebdffbd61fb04488db1b1d7caef8d4988b7bb8ba6d81857a05b255232b9e37a30e328bb9d9c42d86096f2bcee3d258cfe208d2fd03cbd5ccc6a3bb8ce4b0efa5b059b4afbd0377aa6e274721a57efe8ee85d86a -result = invalid -shared = -curve = secp224r1 - -# tcId = 85 -# Public key uses wrong curve: secp521r1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 30819b301006072a8648ce3d020106052b810400230381860004012841a2260f0f1f424865fef275374779bf0355720223f8ec6a9ba767b1603b492f58a6bba1705d882257bc6be1935de4411c5f1fdad44ec65ba8b97ce0e73e1ac90006937832a602147e37c1a42ca2a63629ffc9a35b31bfacb38c6242b42916125f7446b45c718f797259bc3011cb71e868560b331cf7d01139a0643443f9fd7306c1 -result = invalid -shared = -curve = secp224r1 - -# tcId = 86 -# Public key uses wrong curve: secp256k1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 3056301006072a8648ce3d020106052b8104000a03420004c2199fecf75648c0e952dff143821fa4012b28f90435ce6ee54653687f969a76092a3844e17d478a594f43b28cc10a5c553b4f64906121031c3a79299c70dbd6 -result = invalid -shared = -curve = secp224r1 - -# tcId = 87 -# Public key uses wrong curve: brainpoolP224r1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 3052301406072a8648ce3d020106092b2403030208010105033a00046caa3d6d86f792df7b29e41eb4203150f60f4fca10f57d0b2454abfb201f9f7e6dcbb92bdcfb9240dc86bcaeaf157c77bca22b2ec86ee8d6 -result = invalid -shared = -curve = secp224r1 - -# tcId = 88 -# Public key uses wrong curve: brainpoolP256r1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 305a301406072a8648ce3d020106092b2403030208010107034200042750180012c3ba7489517d428e4826784e50b50ac42ef7991c61a396c03a52da5e74908ae8a89627a7c15e554b105b0ebaeebcfed10e3ea60223d0a8bc3b36ab -result = invalid -shared = -curve = secp224r1 - -# tcId = 89 -# Public key uses wrong curve: brainpoolP320r1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 306a301406072a8648ce3d020106092b2403030208010109035200045b523d3a8f20f6a569c6951e0b8de48d89e7549a184e8506820421c3e404473692cd248d7480843b911d87a87e401112fce0d3d2c36978cf6dd7f1d93bfaebe0827d4bf4006006d3202e842126fe1b68 -result = invalid -shared = -curve = secp224r1 - -# tcId = 90 -# Public key uses wrong curve: brainpoolP384r1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 307a301406072a8648ce3d020106092b240303020801010b03620004449607c76c6dc7334c269a0ebab5beec83b6c263377ce06ef5c276f45a9916eff85f50438f5f32ced0210a6c414fe5e242c7c1070823f5395b35965bda6758acf84725f11ea836dda7d391fee91342026645241853224a437a6fb74e4cdc871f -result = invalid -shared = -curve = secp224r1 - -# tcId = 91 -# Public key uses wrong curve: brainpoolP512r1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 30819b301406072a8648ce3d020106092b240303020801010d038182000463e7a491240848e4f53ea5fb857d428c493053193e4b0b4f995ac8bf4c56276a507870131a384aa7e236c64cd7a049a1b37e40ad00c3b8a920dcbad6531616356ce1b6e6d96a7d1b693e25e5abd83ab560a3d764bcd49ec98a1b49421163bd5fc5a625f44c91eb4c2984d5a2e51e816ebdee8fbe08364bb14b7ac876990e64d9 -result = invalid -shared = -curve = secp224r1 - -# tcId = 92 -# Public key uses wrong curve: brainpoolP224t1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 3052301406072a8648ce3d020106092b2403030208010106033a00047c592ecb8908355d1ebf8d59b3619275dbe3666209b72ced6a3c88740456ce61d6a84e0542d7cd10dd8804afb8c784d5dffd9480d8cfdc95 -result = invalid -shared = -curve = secp224r1 - -# tcId = 93 -# Public key uses wrong curve: brainpoolP256t1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 305a301406072a8648ce3d020106092b240303020801010803420004746226a3e005c37ede51828d3375ef91ebd0ff719a380af69d7dfd131b42a3e8917d4a4d573872935a74d1040f1c47d25d6b26f4156cccdcdc11833b9cde433a -result = invalid -shared = -curve = secp224r1 - -# tcId = 94 -# Public key uses wrong curve: brainpoolP320t1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 306a301406072a8648ce3d020106092b240303020801010a035200043298b36825c7bd90ab5157b913d40bbfd732a0de0557e02a2c65a0c223e9a65d62c32462040dd6fe578103023c831caff122c1ed4b8ff7373fa2f08d11c9f4c7f85f81802262ffed9bb82cb6d92eed2d -result = invalid -shared = -curve = secp224r1 - -# tcId = 95 -# Public key uses wrong curve: brainpoolP384t1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 307a301406072a8648ce3d020106092b240303020801010c036200043af2849b981f7e5e6ab936e6abb4f206c1fd5561998df8008bfe98d84173c9f2301cdbd5bffc569c0b5a57ce2a8f4d640f1816475fc6043baa8e5a3453bf327b54cb29c7e54a5f31348969aa94615094dbcd1a8e5c2d630465e45fc556c02194 -result = invalid -shared = -curve = secp224r1 - -# tcId = 96 -# Public key uses wrong curve: brainpoolP512t1 -private = 2ddd06cb77ca2eae5266a34a107b49e56ffb4c2d3952112da2df90fc -public = 30819b301406072a8648ce3d020106092b240303020801010e038182000453d2506047e72af6d98558e1633ecb7e6a05c37861cd3289455cf41bfbf1703f2e9a83052b8eca7d84cba2f001abd8b978f68b69ed6bd874755c44d347fe302c5760b2078c56b24ebd0dcd99f26b8f8a23044b3767a3d2a306587687a7b00668974674edbf18c3db2f3473a97ee77065fdcdd1a9aa053716a4c504f3d18b9170 -result = invalid -shared = -curve = secp224r1 - -# tcId = 97 -# invalid public key -private = 0fc28a0ca0f8e36b0d4f71421845135a22aef543b9fddf8c775b2d18f -public = 3032301006072a8648ce3d020106052b81040021031e00020ca753db5ddeca474241f8d2dafc0844343fd0e37eded2f0192d51b2 -result = invalid -shared = -curve = secp224r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -[curve = secp256r1] -[encoding = asn] - -# tcId = 98 -# normal case -private = 612465c89a023ab17855b0a6bcebfd3febb53aef84138647b5352e02c10c346 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000462d5bd3372af75fe85a040715d0f502428e07046868b0bfdfa61d731afe44f26ac333a93a9e70a81cd5a95b5bf8d13990eb741c8c38872b4a07d275a014e30cf -result = valid -shared = 53020d908b0219328b658b525f26780e3ae12bcd952bb25a93bc0895e1714285 -curve = secp256r1 - -# tcId = 99 -# compressed public key -private = 612465c89a023ab17855b0a6bcebfd3febb53aef84138647b5352e02c10c346 -public = 3039301306072a8648ce3d020106082a8648ce3d0301070322000362d5bd3372af75fe85a040715d0f502428e07046868b0bfdfa61d731afe44f26 -result = acceptable -shared = 53020d908b0219328b658b525f26780e3ae12bcd952bb25a93bc0895e1714285 -curve = secp256r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 100 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000458fd4168a87795603e2b04390285bdca6e57de6027fe211dd9d25e2212d29e62080d36bd224d7405509295eed02a17150e03b314f96da37445b0d1d29377d12c -result = valid -shared = 0000000000000000000000000000000000000000000000000000000000000000 -curve = secp256r1 - -# tcId = 101 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040f6d20c04261ecc3e92846acad48dc8ec5ee35ae0883f0d2ea71216906ee1c47c042689a996dd12830ae459382e94aac56b717af2e2080215f9e41949b1f52be -result = valid -shared = 00000000000000000000000000000000ffffffffffffffffffffffffffffffff -curve = secp256r1 - -# tcId = 102 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400c7defeb1a16236738e9a1123ba621bc8e9a3f2485b3f8ffde7f9ce98f5a8a1cb338c3912b1792f60c2b06ec5231e2d84b0e596e9b76d419ce105ece3791dbc -result = valid -shared = 0000000000000000ffffffffffffffff00000000000000010000000000000001 -curve = secp256r1 - -# tcId = 103 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004e9b98fb2c0ac045f8c76125ffd99eb8a5157be1d7db3e85d655ec1d8210288cf218df24fd2c2746be59df41262ef3a97d986744b2836748a7486230a319ffec0 -result = valid -shared = 00000000ffffffff00000000ffffffff00000000ffffffff0000000100000000 -curve = secp256r1 - -# tcId = 104 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004e9484e58f3331b66ffed6d90cb1c78065fa28cfba5c7dd4352013d3252ee4277bd7503b045a38b4b247b32c59593580f39e6abfa376c3dca20cf7f9cfb659e13 -result = valid -shared = 000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff -curve = secp256r1 - -# tcId = 105 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004767d7fbb84aa6a4db1079372644e42ecb2fec200c178822392cb8b950ffdd0c91c86853cafd09b52ba2f287f0ebaa26415a3cfabaf92c6a617a19988563d9dea -result = valid -shared = 0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff00010001 -curve = secp256r1 - -# tcId = 106 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004c74d546f2fcc6dd392f85e5be167e358de908756b0c0bb01cb69d864ca083e1c93f959eece6e10ee11bd3934207d65ae28af68b092585a1509260eceb39b92ef -result = valid -shared = 085ec5a4af40176b63189069aeffcb229c96d3e046e0283ed2f9dac21b15ad3c -curve = secp256r1 - -# tcId = 107 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000434fc9f1e7a094cd29598d1841fa9613dbe82313d633a51d63fb6eff074cc9b9a4ecfd9f258c5c4d4210b49751213a24c596982bd1d54e0445443f21ef15492a5 -result = valid -shared = 190c25f88ad9ae3a098e6cffe6fd0b1bea42114eb0cedd5868a45c5fe277dff3 -curve = secp256r1 - -# tcId = 108 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004d5c96efd1907fd48de2ad715acf82eae5c6690fe3efe16a78d61c68d3bfd10df03eac816b9e7b776192a3f5075887c0e225617505833ca997cda32fd0f673c5e -result = valid -shared = 507442007322aa895340cba4abc2d730bfd0b16c2c79a46815f8780d2c55a2dd -curve = secp256r1 - -# tcId = 109 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004f475f503a770df72c45aedfe42c008f59aa57e72b232f26600bdd0353957cb20bdb8f6405b4918050a3549f44c07a8eba820cdce4ece699888c638df66f54f7c -result = valid -shared = 5f177bfe19baaaee597e68b6a87a519e805e9d28a70cb72fd40f0fe5a754ba45 -curve = secp256r1 - -# tcId = 110 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004f3cb6754b7e2a86d064dfb9f903185aaa4c92b481c2c1a1ff276303bbc4183e49c318599b0984c3563df339311fe143a7d921ee75b755a52c6f804f897b809f7 -result = valid -shared = 7fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff -curve = secp256r1 - -# tcId = 111 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004cce13fbdc96a946dfb8c6d9ed762dbd1731630455689f57a437fee124dd54cecaef78026c653030cf2f314a67064236b0a354defebc5e90c94124e9bf5c4fc24 -result = valid -shared = 8000000000000000000000000000000000000000000000000000000000000004 -curve = secp256r1 - -# tcId = 112 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047633dfd0ad06765097bc11bd5022b200df31f28c4ff0625421221ac7eeb6e6f4cb9c67693609ddd6f92343a5a1c635408240f4f8e27120c12554c7ff8c76e2fe -result = valid -shared = 8000003ffffff0000007fffffe000000ffffffc000001ffffff8000004000000 -curve = secp256r1 - -# tcId = 113 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004a386ace573f87558a68ead2a20088e3fe928bdae9e109446f93a078c15741f0421261e6db2bf12106e4c6bf85b9581b4c0302a526222f90abc5a549206b11011 -result = valid -shared = ff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff -curve = secp256r1 - -# tcId = 114 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200048e7b50f7d8c44d5d3496c43141a502f4a43f153d03ad43eda8e39597f1d477b8647f3da67969b7f989ff4addc393515af40c82085ce1f2ee195412c6f583774f -result = valid -shared = ffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff -curve = secp256r1 - -# tcId = 115 -# edge case for shared secret -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004c827fb930fd51d926086191b502af83abb5f717debc8de29897a3934b2571ca05990c0597b0b7a2e42febd56b13235d1d408d76ed2c93b3facf514d902f6910a -result = valid -shared = ffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff -curve = secp256r1 - -# tcId = 116 -# y-coordinate of the public key is small -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200043cbc1b31b43f17dc200dd70c2944c04c6cb1b082820c234a300b05b7763844c74fde0a4ef93887469793270eb2ff148287da9265b0334f9e2609aac16e8ad503 -result = valid -shared = 7fffffffffffffffffffffffeecf2230ffffffffffffffffffffffffffffffff -curve = secp256r1 - -# tcId = 117 -# y-coordinate of the public key is small -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200042830d96489ae24b79cad425056e82746f9e3f419ab9aa21ca1fbb11c7325e7d318abe66f575ee8a2f1c4a80e35260ae82ad7d6f661d15f06967930a585097ef7 -result = valid -shared = 000000000000000000000000111124f400000000000000000000000000000000 -curve = secp256r1 - -# tcId = 118 -# y-coordinate of the public key is small -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004450b6b6e2097178e9d2850109518d28eb3b6ded2922a5452003bc2e4a4ec775c894e90f0df1b0e6cadb03b9de24f6a22d1bd0a4a58cd645c273cae1c619bfd61 -result = valid -shared = 000000000000000000000001ea77d449ffffffffffffffffffffffffffffffff -curve = secp256r1 - -# tcId = 119 -# y-coordinate of the public key is large -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200043cbc1b31b43f17dc200dd70c2944c04c6cb1b082820c234a300b05b7763844c7b021f5b006c778ba686cd8f14d00eb7d78256d9b4fccb061d9f6553e91752afc -result = valid -shared = 7fffffffffffffffffffffffeecf2230ffffffffffffffffffffffffffffffff -curve = secp256r1 - -# tcId = 120 -# y-coordinate of the public key is large -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200042830d96489ae24b79cad425056e82746f9e3f419ab9aa21ca1fbb11c7325e7d3e754198fa8a1175e0e3b57f1cad9f517d528290a9e2ea0f96986cf5a7af68108 -result = valid -shared = 000000000000000000000000111124f400000000000000000000000000000000 -curve = secp256r1 - -# tcId = 121 -# y-coordinate of the public key is large -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004450b6b6e2097178e9d2850109518d28eb3b6ded2922a5452003bc2e4a4ec775c76b16f0e20e4f194524fc4621db095dd2e42f5b6a7329ba3d8c351e39e64029e -result = valid -shared = 000000000000000000000001ea77d449ffffffffffffffffffffffffffffffff -curve = secp256r1 - -# tcId = 122 -# y-coordinate of the public key has many trailing 1's -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200049a0f0e3dd31417bbd9e298bc068ab6d5c36733af26ed67676f410c804b8b2ca1b02c82f3a61a376db795626e9400557112273a36cddb08caaa43953965454730 -result = valid -shared = 7fffffffffffffffffffffffca089011ffffffffffffffffffffffffffffffff -curve = secp256r1 - -# tcId = 123 -# y-coordinate of the public key has many trailing 1's -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200048e5d22d5e53ec797c55ecd68a08a7c3361cd99ca7fad1a68ea802a6a4cb58a918ea7a07023ef67677024bd3841e187c64b30a30a3750eb2ee873fbe58fa1357b -result = valid -shared = 0000000000000000000000001f6bd1e500000000000000000000000000000000 -curve = secp256r1 - -# tcId = 124 -# y-coordinate of the public key has many trailing 1's -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004293aa349b934ab2c839cf54b8a737df2304ef9b20fa494e31ad62b315dd6a53c118182b85ef466eb9a8e87f9661f7d017984c15ea82043f536d1ee6a6d95b509 -result = valid -shared = 000000000000000000000002099f55d5ffffffffffffffffffffffffffffffff -curve = secp256r1 - -# tcId = 125 -# y-coordinate of the public key has many trailing 0's -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200049a0f0e3dd31417bbd9e298bc068ab6d5c36733af26ed67676f410c804b8b2ca14fd37d0b59e5c893486a9d916bffaa8eedd8c5ca3224f73555bc6ac69abab8cf -result = valid -shared = 7fffffffffffffffffffffffca089011ffffffffffffffffffffffffffffffff -curve = secp256r1 - -# tcId = 126 -# y-coordinate of the public key has many trailing 0's -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200048e5d22d5e53ec797c55ecd68a08a7c3361cd99ca7fad1a68ea802a6a4cb58a9171585f8edc1098998fdb42c7be1e7839b4cf5cf6c8af14d1178c041a705eca84 -result = valid -shared = 0000000000000000000000001f6bd1e500000000000000000000000000000000 -curve = secp256r1 - -# tcId = 127 -# y-coordinate of the public key has many trailing 0's -private = 0a0d622a47e48f6bc1038ace438c6f528aa00ad2bd1da5f13ee46bf5f633d71a -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004293aa349b934ab2c839cf54b8a737df2304ef9b20fa494e31ad62b315dd6a53cee7e7d46a10b99156571780699e082fe867b3ea257dfbc0ac92e1195926a4af6 -result = valid -shared = 000000000000000000000002099f55d5ffffffffffffffffffffffffffffffff -curve = secp256r1 - -# tcId = 128 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000000000000000000000000000000000000000000000066485c780e2f83d72433bd5d84a06bb6541c2af31dae871728bf856a174f93f4 -result = valid -shared = cfe4077c8730b1c9384581d36bff5542bc417c9eff5c2afcb98cc8829b2ce848 -curve = secp256r1 - -# tcId = 129 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000ffffffffffffffffffffffffffffffff4f2b92b4c596a5a47f8b041d2dea6043021ac77b9a80b1343ac9d778f4f8f733 -result = valid -shared = 49ae50fe096a6cd26698b78356b2c8adf1f6a3490f14e364629f7a0639442509 -curve = secp256r1 - -# tcId = 130 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000ffffffffffffffff0000000000000001000000000000000138120be6ab31edfa34768c4387d2f84fb4b0be8a9a985864a1575f4436bb37b0 -result = valid -shared = 5a1334572b2a711ead8b4653eb310cd8d9fd114399379a8f6b872e3b8fdda2d9 -curve = secp256r1 - -# tcId = 131 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000ffffffff00000000ffffffff00000000ffffffff0000000100000000462c0466e41802238d6c925ecbefc747cfe505ea196af9a2d11b62850fce946e -result = valid -shared = c73755133b6b9b4b2a00631cbc7940ecbe6ec08f20448071422e3362f2556888 -curve = secp256r1 - -# tcId = 132 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff1582fa32e2d4a89dfcfb3d0b149f667dba3329490f4d64ee2ad586c0c9e8c508 -result = valid -shared = 06fa1059935e47a9fd667e13f469614eb257cc9a7e3fc599bfb92780d59b146d -curve = secp256r1 - -# tcId = 133 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff00010001684c8a9586ed6f9cbe447058a7da2108bab1e5e0a60d1f73e4e2e713f0a3dfe0 -result = valid -shared = f237df4c10bd3e357971bb2b16b293566b7e355bdc8141d6c92cabc682983c45 -curve = secp256r1 - -# tcId = 134 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004085ec5a4af40176b63189069aeffcb229c96d3e046e0283ed2f9dac21b15ad3c7859f97cb6e203f46bf3438f61282325e94e681b60b5669788aeb0655bf19d38 -result = valid -shared = d874b55678d0a04d216c31b02f3ad1f30c92caaf168f34e3a743356d9276e993 -curve = secp256r1 - -# tcId = 135 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004190c25f88ad9ae3a098e6cffe6fd0b1bea42114eb0cedd5868a45c5fe277dff321b8342ef077bc6724112403eaee5a15b4c31a71589f02ded09cd99cc5db9c83 -result = valid -shared = 11a8582057463fc76fda3ab8087eb0a420b0d601bb3134165a369646931e52a6 -curve = secp256r1 - -# tcId = 136 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004507442007322aa895340cba4abc2d730bfd0b16c2c79a46815f8780d2c55a2dd4619d69f9940f51663aa12381bc7cf678bd1a72a49fbc11b0b69cb22d1af9f2d -result = valid -shared = 4e173a80907f361fe5a5d335ba7685d5eba93e9dfc8d8fcdb1dcd2d2bde27507 -curve = secp256r1 - -# tcId = 137 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200045f177bfe19baaaee597e68b6a87a519e805e9d28a70cb72fd40f0fe5a754ba4562ca1103f70a2006cd1f67f5f6a3580b29dc446abc90e0e910c1e05a9aa788cd -result = valid -shared = 73220471ec8bad99a297db488a34a259f9bc891ffaf09922e6b5001f5df67018 -curve = secp256r1 - -# tcId = 138 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff2e2213caf03033e0fd0f7951154f6e6c3a9244a72faca65e9ce9eeb5c8e1cea9 -result = valid -shared = 55d0a203e22ffb523c8d2705060cee9d28308b51f184beefc518cff690bad346 -curve = secp256r1 - -# tcId = 139 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000480000000000000000000000000000000000000000000000000000000000000042be8789db81bb4870a9e60c5c18c80c83de464277281f1af1e640843a1a3148e -result = valid -shared = 2518d846e577d95e9e7bc766cde7997cb887fb266d3a6cb598a839fd54aa2f4f -curve = secp256r1 - -# tcId = 140 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200048000003ffffff0000007fffffe000000ffffffc000001ffffff8000004000000722540f8a471c379083c600b58fde4d95c7dcad5095f4219fc5e9bdde3c5cd39 -result = valid -shared = bdb49f4bdf42ac64504e9ce677b3ec5c0a03828c5b3efad726005692d35c0f26 -curve = secp256r1 - -# tcId = 141 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff5df80fc6cae26b6c1952fbd00ed174ee1209d069335f5b48588e29e80b9191ad -result = valid -shared = f503ac65637e0f17cb4408961cb882c875e4c6ef7a548d2d52d8c2f681838c55 -curve = secp256r1 - -# tcId = 142 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff2c63650e6a5d332e2987dd09a79008e8faabbd37e49cb016bfb92c8cd0f5da77 -result = valid -shared = e3c18e7d7377dc540bc45c08d389bdbe255fa80ca8faf1ef6b94d52049987d21 -curve = secp256r1 - -# tcId = 143 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff7a116c964a4cd60668bf89cffe157714a3ce21b93b3ca607c8a5b93ac54ffc0a -result = valid -shared = 516d6d329b095a7c7e93b4023d4d05020c1445ef1ddcb3347b3a27d7d7f57265 -curve = secp256r1 - -# tcId = 144 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047fffffffffffffffffffffffeecf2230ffffffffffffffffffffffffffffffff00000001c7c30643abed0af0a49fe352cb483ff9b97dccdf427c658e8793240d -result = valid -shared = 6fd26661851a8de3c6d06f834ef3acb8f2a5f9c136a985ffe10d5eeb51edcfa3 -curve = secp256r1 - -# tcId = 145 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047fffffffffffffffffffffffeecf2230fffffffffffffffffffffffffffffffffffffffd383cf9bd5412f50f5b601cad34b7c00746823320bd839a71786cdbf2 -result = valid -shared = 6fd26661851a8de3c6d06f834ef3acb8f2a5f9c136a985ffe10d5eeb51edcfa3 -curve = secp256r1 - -# tcId = 146 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047fffffffffffffffffffffffca089011ffffffffffffffffffffffffffffffff267bfdf8a61148decd80283732dd4c1095e4bb40b9658408208dc1147fffffff -result = valid -shared = 44236c8b9505a19d48774a3903c0292759b0f826e6ac092ff898d87e53d353fc -curve = secp256r1 - -# tcId = 147 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200047fffffffffffffffffffffffca089011ffffffffffffffffffffffffffffffffd984020659eeb722327fd7c8cd22b3ef6a1b44c0469a7bf7df723eeb80000000 -result = valid -shared = 44236c8b9505a19d48774a3903c0292759b0f826e6ac092ff898d87e53d353fc -curve = secp256r1 - -# tcId = 148 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000000111124f4000000000000000000000000000000000000000d12d381b0760b1c50be8acf859385052c7f53cde67ce13759de3123a0 -result = valid -shared = f1f0e43b374feb7e7f96d4ffe7519fa8bb6c3cfd25f6f87dab2623d2a2d33851 -curve = secp256r1 - -# tcId = 149 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000000111124f400000000000000000000000000000000fffffff1ed2c7e5089f4e3af4175307a6c7afad480ac3219831ec8a621cedc5f -result = valid -shared = f1f0e43b374feb7e7f96d4ffe7519fa8bb6c3cfd25f6f87dab2623d2a2d33851 -curve = secp256r1 - -# tcId = 150 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000001f6bd1e5000000000000000000000000000000004096edd6871c320cb8a9f4531751105c97b4c257811bbc32963eaf39ffffffff -result = valid -shared = 3ebbace1098a81949d5605dd94a7aa88dc396c2c23e01a9c8cca5bb07bfbb6a1 -curve = secp256r1 - -# tcId = 151 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000001f6bd1e500000000000000000000000000000000bf69122878e3cdf447560bace8aeefa3684b3da97ee443cd69c150c600000000 -result = valid -shared = 3ebbace1098a81949d5605dd94a7aa88dc396c2c23e01a9c8cca5bb07bfbb6a1 -curve = secp256r1 - -# tcId = 152 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000001ea77d449ffffffffffffffffffffffffffffffff000000007afbc0b325e820646dec622fb558a51c342aa257f4b6a8ec5ddf144f -result = valid -shared = 1b085213a9c89d353e1111af078c38c502b7b4771efba51f589b5be243417bdc -curve = secp256r1 - -# tcId = 153 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000001ea77d449fffffffffffffffffffffffffffffffffffffffe85043f4dda17df9b92139dd04aa75ae4cbd55da80b495713a220ebb0 -result = valid -shared = 1b085213a9c89d353e1111af078c38c502b7b4771efba51f589b5be243417bdc -curve = secp256r1 - -# tcId = 154 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000002099f55d5ffffffffffffffffffffffffffffffff152c1a22d823a27855ed03f8e2ab5038bb1df4d87e43865f2daf6948ffffffff -result = valid -shared = 67cb63566c7ceb12fdd85ce9d2f77c359242bbaa0ea1bf3cf510a4a26591d1f1 -curve = secp256r1 - -# tcId = 155 -# edge cases for ephemeral key -private = 55d55f11bb8da1ea318bca7266f0376662441ea87270aa2077f1b770c4854a48 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004000000000000000000000002099f55d5ffffffffffffffffffffffffffffffffead3e5dc27dc5d88aa12fc071d54afc744e20b2881bc79a0d25096b700000000 -result = valid -shared = 67cb63566c7ceb12fdd85ce9d2f77c359242bbaa0ea1bf3cf510a4a26591d1f1 -curve = secp256r1 - -# tcId = 156 -# edge case private key -private = 3 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = 85a0b58519b28e70a694ec5198f72c4bfdabaa30a70f7143b5b1cd7536f716ca -curve = secp256r1 - -# tcId = 157 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffffffffff -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = a329a7d80424ea2d6c904393808e510dfbb28155092f1bac284dceda1f13afe5 -curve = secp256r1 - -# tcId = 158 -# edge case private key -private = 100000000000000000000000000000000000000000000000000000000000000 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = bd26d0293e8851c51ebe0d426345683ae94026aca545282a4759faa85fde6687 -curve = secp256r1 - -# tcId = 159 -# edge case private key -private = 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = ea9350b2490a2010c7abf43fb1a38be729a2de375ea7a6ac34ff58cc87e51b6c -curve = secp256r1 - -# tcId = 160 -# edge case private key -private = 08000000000000000000000000000000000000000000000000000000000000000 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = 34eed3f6673d340b6f716913f6dfa36b5ac85fa667791e2d6a217b0c0b7ba807 -curve = secp256r1 - -# tcId = 161 -# edge case private key -private = 0ffffffff00000000ffffffffffffffffbce6faada7179e83f3b9cac2fc632551 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = 1354ce6692c9df7b6fc3119d47c56338afbedccb62faa546c0fe6ed4959e41c3 -curve = secp256r1 - -# tcId = 162 -# edge case private key -private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3a9cac2fc632551 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = fe7496c30d534995f0bf428b5471c21585aaafc81733916f0165597a55d12cb4 -curve = secp256r1 - -# tcId = 163 -# edge case private key -private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b1cac2fc632551 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = 348bf8042e4edf1d03c8b36ab815156e77c201b764ed4562cfe2ee90638ffef5 -curve = secp256r1 - -# tcId = 164 -# edge case private key -private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac1fc632551 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = 6e4ec5479a7c20a537501700484f6f433a8a8fe53c288f7a25c8e8c92d39e8dc -curve = secp256r1 - -# tcId = 165 -# edge case private key -private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6324f3 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = f7407d61fdf581be4f564621d590ca9b7ba37f31396150f9922f1501da8c83ef -curve = secp256r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 166 -# edge case private key -private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632533 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = 82236fd272208693e0574555ca465c6cc512163486084fa57f5e1bd2e2ccc0b3 -curve = secp256r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 167 -# edge case private key -private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632543 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = 06537149664dba1a9924654cb7f787ed224851b0df25ef53fcf54f8f26cd5f3f -curve = secp256r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 168 -# edge case private key -private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254b -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = f2b38539bce995d443c7bfeeefadc9e42cc2c89c60bf4e86eac95d51987bd112 -curve = secp256r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 169 -# edge case private key -private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = 85a0b58519b28e70a694ec5198f72c4bfdabaa30a70f7143b5b1cd7536f716ca -curve = secp256r1 - -# tcId = 170 -# edge case private key -private = 0ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000431028f3377fc8f2b1967edaab90213acad0da9f50897f08f57537f78f116744743a1930189363bbde2ac4cbd1649cdc6f451add71dd2f16a8a867f2b17caa16b -result = valid -shared = 027b013a6f166db655d69d643c127ef8ace175311e667dff2520f5b5c75b7659 -curve = secp256r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 171 -# CVE-2017-8932 -private = 2a265f8bcbdcaf94d58519141e578124cb40d64a501fba9c11847b28965bc737 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004023819813ac969847059028ea88a1f30dfbcde03fc791d3a252c6b41211882eaf93e4ae433cc12cf2a43fc0ef26400c0e125508224cdb649380f25479148a4ad -result = valid -shared = 4d4de80f1534850d261075997e3049321a0864082d24a917863366c0724f5ae3 -curve = secp256r1 - -# tcId = 172 -# CVE-2017-8932 -private = 313f72ff9fe811bf573176231b286a3bdb6f1b14e05c40146590727a71c3bccd -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004cc11887b2d66cbae8f4d306627192522932146b42f01d3c6f92bd5c8ba739b06a2f08a029cd06b46183085bae9248b0ed15b70280c7ef13a457f5af382426031 -result = valid -shared = 831c3f6b5f762d2f461901577af41354ac5f228c2591f84f8a6e51e2e3f17991 -curve = secp256r1 - -# tcId = 173 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp256r1 - -# tcId = 174 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp256r1 - -# tcId = 175 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000000000000000000000000000000000000000000000ffffffff00000001000000000000000000000000fffffffffffffffffffffffe -result = invalid -shared = -curve = secp256r1 - -# tcId = 176 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000000000000000000000000000000000000000000000ffffffff00000001000000000000000000000000ffffffffffffffffffffffff -result = invalid -shared = -curve = secp256r1 - -# tcId = 177 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp256r1 - -# tcId = 178 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp256r1 - -# tcId = 179 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000000000000000000000000000000000000000000001ffffffff00000001000000000000000000000000fffffffffffffffffffffffe -result = invalid -shared = -curve = secp256r1 - -# tcId = 180 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200040000000000000000000000000000000000000000000000000000000000000001ffffffff00000001000000000000000000000000ffffffffffffffffffffffff -result = invalid -shared = -curve = secp256r1 - -# tcId = 181 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000fffffffffffffffffffffffe0000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp256r1 - -# tcId = 182 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000fffffffffffffffffffffffe0000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp256r1 - -# tcId = 183 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000fffffffffffffffffffffffeffffffff00000001000000000000000000000000fffffffffffffffffffffffe -result = invalid -shared = -curve = secp256r1 - -# tcId = 184 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000fffffffffffffffffffffffeffffffff00000001000000000000000000000000ffffffffffffffffffffffff -result = invalid -shared = -curve = secp256r1 - -# tcId = 185 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp256r1 - -# tcId = 186 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp256r1 - -# tcId = 187 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000ffffffffffffffffffffffffffffffff00000001000000000000000000000000fffffffffffffffffffffffe -result = invalid -shared = -curve = secp256r1 - -# tcId = 188 -# point is not on curve -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004ffffffff00000001000000000000000000000000ffffffffffffffffffffffffffffffff00000001000000000000000000000000ffffffffffffffffffffffff -result = invalid -shared = -curve = secp256r1 - -# tcId = 189 -private = 7e4aa54f714bf01df85c50269bea3a86721f84afe74f7b41ea58abcf3474e88d -public = 3018301306072a8648ce3d020106082a8648ce3d030107030100 -result = invalid -shared = -curve = secp256r1 - -# tcId = 190 -# public point not on curve -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764c -result = invalid -shared = -curve = secp256r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 191 -# public point = (0,0) -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp256r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 192 -# order = -# -115792089210356248762697446949407573529996955224135760342422259061068512044369 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f50221ff00000000ffffffff00000000000000004319055258e8617b0c46353d039cdaaf020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = invalid -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 193 -# order = 0 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201133081cc06072a8648ce3d02013081c0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5020100020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = invalid -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 194 -# order = 1 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201133081cc06072a8648ce3d02013081c0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5020101020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = acceptable -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 195 -# order = 26959946660873538060741835960514744168612397095220107664918121663170 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 3082012f3081e806072a8648ce3d02013081dc020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5021d00ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = acceptable -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 196 -# generator = (0,0) -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b04410400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = acceptable -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 197 -# generator not on curve -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f7022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = acceptable -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 198 -# cofactor = -1 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510201ff034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = invalid -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 199 -# cofactor = 0 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020100034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = invalid -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 200 -# cofactor = 2 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020102034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = acceptable -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 201 -# cofactor = -# 115792089210356248762697446949407573529996955224135760342422259061068512044369 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201553082010d06072a8648ce3d020130820100020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = invalid -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 202 -# cofactor = None -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201303081e906072a8648ce3d02013081dd020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff30440420ffffffff00000001000000000000000000000000fffffffffffffffffffffffc04205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = acceptable -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 203 -# modified prime -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100fd091059a6893635f900e9449d63f572b2aebc4cff7b4e5e33f1b200e8bbc1453044042002f6efa55976c9cb06ff16bb629c0a8d4d5143b40084b1a1cc0e4dff17443eb704205ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b0441040000000000000000000006597fa94b1fd90000000000000000000000000000021b8c7dd77f9a95627922eceefea73f028f1ec95ba9b8fa95a3ad24bdf9fff414022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101034200040000000000000000000006597fa94b1fd90000000000000000000000000000021b8c7dd77f9a95627922eceefea73f028f1ec95ba9b8fa95a3ad24bdf9fff414 -result = invalid -shared = cea0fbd8f20abc8cf8127c132e29756d25ff1530a88bf5c9e22dc1c137c36be9 -curve = secp256r1 -# The modulus of the public key has been modified. The public point of the -# public key has been chosen so that it is both a point on both the curve of the -# modified public key and the private key. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 204 -# using secp224r1 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 304e301006072a8648ce3d020106052b81040021033a0004074f56dc2ea648ef89c3b72e23bbd2da36f60243e4d2067b70604af1c2165cec2f86603d60c8a611d5b84ba3d91dfe1a480825bcc4af3bcf -result = invalid -shared = -curve = secp256r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 205 -# using secp256k1 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 3056301006072a8648ce3d020106052b8104000a03420004a1263e75b87ae0937060ff1472f330ee55cdf8f4329d6284a9ebfbcc856c11684225e72cbebff41e54fb6f00e11afe53a17937bedbf2df787f8ef9584f775838 -result = invalid -shared = -curve = secp256r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 206 -# a = 0 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201143081cd06072a8648ce3d02013081c1020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff302504010004201b95c2f46065dbf0f3ff09153e4748ed71595e0774ba8e25c364ff1e6be039b70441041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101034200041510264c189c3d523ff9916abd7069efa6968d8dc7ddb6457d7869b53ea60cdcfafb7ed4786da15d29ee59256f536da3575a4888c1bb0a95b256f4a7e9fd764a -result = acceptable -shared = d003f5cc83852584061f7a8a28bcb5671ecbda096e16e7accfa8f8d311a3db7a -curve = secp256r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 207 -# public key of order 3 -private = 4f3414d1589b49f7172d439cbbe78e5b5350dc85dea40cd2d6274740c6e0239c -public = 308201333081ec06072a8648ce3d02013081e0020101302c06072a8648ce3d0101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff3044042088f968f8b8adf746eae719daaf7f0be1fc5d667dfb46ea9a27f07439dc16dbca04203dc16cfd72abe9f378c266bdbb025f9e8bd6d190d1ad2b49cf5119898cc9b7d7044104a02ae980056ae0bc81f8d227199342e8b041b4d6da0a439d15f565ee0e3306a5057b711931020c3e733d16ae731d452bbe420fde1306cf66c9f1f50cae9bc3f4022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63255102010103420004a02ae980056ae0bc81f8d227199342e8b041b4d6da0a439d15f565ee0e3306a5fa848ee5cefdf3c28cc2e9518ce2bad441bdf022ecf93099360e0af351643c0b -result = invalid -shared = 71814dea44408d67199600f603e6ec814dad46383b21af98d4dcb9ff2326721c -curve = secp256r1 -# The vector contains a weak public key. The curve is not a named curve, the -# public key point has order 3 and has been chosen to be on the same curve as -# the private key. This test vector is used to check ECC implementations for -# missing steps in the verification of the public key. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 208 -# Public key uses wrong curve: secp224r1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 304e301006072a8648ce3d020106052b81040021033a00042af270d2a6030e3dd38cc46e7d719f176c2ca4eb04d7e8b84290c8edbcaed964ebe226b2d7ce17251622804c0d3b7adce020a3cdc97cac6c -result = invalid -shared = -curve = secp256r1 - -# tcId = 209 -# Public key uses wrong curve: secp384r1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 3076301006072a8648ce3d020106052b81040022036200041f17901e731b06f349b6e9d7d17d45e8a2b46115a47485be16197932db87b39405b5c941b36fd61b9ef7dd20878e129e55a2277099c601dcdb3747f80ad6e166116378e1ebce2c95744a0986128cfeeaac7f90b71787d9a1cfe417cd4c8f6af5 -result = invalid -shared = -curve = secp256r1 - -# tcId = 210 -# Public key uses wrong curve: secp521r1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 30819b301006072a8648ce3d020106052b81040023038186000400ed76e5888428fad409ff203ab298b0f24827c091939ae0f9b1245d865ac5fbcd2749f9ae6c90fa8e29414d1bc7dc7b3c4aca904cd824484421cc66fe6af43bdfd200c1f790a0b3ae994937f91b6bdb9778b08c83ecadb8cba22a78c37bf565dac164f18e719be0ef890ee5cbf20e17fcfc9a5585e5416470b9862f82fb769339994f4e -result = invalid -shared = -curve = secp256r1 - -# tcId = 211 -# Public key uses wrong curve: secp256k1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 3056301006072a8648ce3d020106052b8104000a034200048028d16082b07696d4aa4aab9d6b1f1463435ac097900631108f9888e13da67c4841fd8dd3ced6e7ad8c6fc656621c2f93d3db0eb29d48d1423154519865dbc1 -result = invalid -shared = -curve = secp256r1 - -# tcId = 212 -# Public key uses wrong curve: brainpoolP224r1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 3052301406072a8648ce3d020106092b2403030208010105033a0004a6bae3d155c1f9ca263928c986ede69acefd0dd9b3a19d2b9f4b0a3a66bea5d167318dcc028945fc1b40c60ce716ba2d414a743c6b856a6f -result = invalid -shared = -curve = secp256r1 - -# tcId = 213 -# Public key uses wrong curve: brainpoolP256r1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 305a301406072a8648ce3d020106092b2403030208010107034200045d3ddbbb9bc071d8b59855c74bdf3541ae4cb6c1a24ec439034df7abde16a346523edf6a67896b304cb2cd2a083eec2b16935bbc910e85ec6eae38b50230bf70 -result = invalid -shared = -curve = secp256r1 - -# tcId = 214 -# Public key uses wrong curve: brainpoolP320r1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 306a301406072a8648ce3d020106092b240303020801010903520004a43c6ef2500723d54c1fc88f8844d83445ca5a0f585c10b8eb3f022d47d0e84862b7f5cbf97d352d4348ca730f600f2258d1d192da223f6ba83a7cc0d6da598d55c2b77824d326c8df000b8fff156d2c -result = invalid -shared = -curve = secp256r1 - -# tcId = 215 -# Public key uses wrong curve: brainpoolP384r1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 307a301406072a8648ce3d020106092b240303020801010b036200042391c062833d1e6d89ec256cf4a3989534c1ead5e1e14ffae933a53f962857e4713087e1b3d65ac79634c71577af24698b5ce959183835551f7b08aef7853378c299930b360813fd58d5e4da8b37d5a7473e891ee11cb02881bd848b364fb7d5 -result = invalid -shared = -curve = secp256r1 - -# tcId = 216 -# Public key uses wrong curve: brainpoolP512r1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 30819b301406072a8648ce3d020106092b240303020801010d038182000484beae85096640953c1fd6ebbc32697263d53f89943cbaf14432061aea8c0318acbd9389ab1d2e904fa0e081d08cfabb614ed9bca618211142d94623c14b476a25e47abf98fd3b1da1417dfc2e2cfc8424b16ea14dd45e1422be7d4e0a5cc7f4d4ab5f198cdbaaa3f642ec6361842cbe869382ee78cd596ff5e740d9ec2c3ad6 -result = invalid -shared = -curve = secp256r1 - -# tcId = 217 -# Public key uses wrong curve: brainpoolP224t1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 3052301406072a8648ce3d020106092b2403030208010106033a00042b0a1a858ffc44e7752940731d378f96570837e279ea3948fe00cff8b5f89adb4e2fe6f8781ba6426364f4590b34dd79fc80629de4a86084 -result = invalid -shared = -curve = secp256r1 - -# tcId = 218 -# Public key uses wrong curve: brainpoolP256t1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 305a301406072a8648ce3d020106092b2403030208010108034200043037c01b4a5ac53742e3f5528dffb0f010ab6ebeb08d792b32e19e9006ca331a024b67698d7cf4b575ccd9389441d5c640b77c63771cef1bd85675361c6602a4 -result = invalid -shared = -curve = secp256r1 - -# tcId = 219 -# Public key uses wrong curve: brainpoolP320t1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 306a301406072a8648ce3d020106092b240303020801010a035200040f0fd972a495a140124a4019291a20f5b39fb755c126bf268643bb3091eca44f2a3cda1dead6ab1f4fe08a4b3872423f71e5bf96b1c20bc0ca73b7e2c134cc14a5f77bc838ebcf01084da3bf15663536 -result = invalid -shared = -curve = secp256r1 - -# tcId = 220 -# Public key uses wrong curve: brainpoolP384t1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 307a301406072a8648ce3d020106092b240303020801010c0362000403b65faf5a6bf74bd5c166278a4b566c6c705ac6363e61f3b0699e116d3c5b19e8b7021b75b005f78a8cea8de34c49397f9b3b2bfc8706eb8163c802371eff7dfc825c40aa84dd9d1c4b34615ee5ae28c6c05d58d2a8ccc3786382b712d3bcda -result = invalid -shared = -curve = secp256r1 - -# tcId = 221 -# Public key uses wrong curve: brainpoolP512t1 -private = 0b44f9670fedba887ad8e806226063e77604b27c362836326e93ecb7fcc6dc297 -public = 30819b301406072a8648ce3d020106092b240303020801010e03818200047504d660943a69ab043378e44c034896534a346e0e95f35fcaad3503b490856bfb20a753ecabc6d7bfeec28d057f919923b7d3c086953eb16c5bd287b59788db72dbb7c273854294c927ea7eca205aae2f0830e5faaddad8316231bfc3572c85c33cb7054e04c8936e3ce059c907e59f40593444e590b31820bc1f514ed0ec8a -result = invalid -shared = -curve = secp256r1 - -# tcId = 222 -# invalid public key -private = 6f953faff3599e6c762d7f4cabfeed092de2add1df1bc5748c6cbb725cf35458 -public = 3039301306072a8648ce3d020106082a8648ce3d03010703220002fd4bf61763b46581fd9174d623516cf3c81edd40e29ffa2777fb6cb0ae3ce535 -result = invalid -shared = -curve = secp256r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 223 -# public key is a low order point on twist -private = 0d27edf0ff5b6b6b465753e7158370332c153b468a1be087ad0f490bdb99e5f02 -public = 3039301306072a8648ce3d020106082a8648ce3d03010703220003efdde3b32872a9effcf3b94cbf73aa7b39f9683ece9121b9852167f4e3da609b -result = invalid -shared = -curve = secp256r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 224 -# public key is a low order point on twist -private = 0d27edf0ff5b6b6b465753e7158370332c153b468a1be087ad0f490bdb99e5f03 -public = 3039301306072a8648ce3d020106082a8648ce3d03010703220002efdde3b32872a9effcf3b94cbf73aa7b39f9683ece9121b9852167f4e3da609b -result = invalid -shared = -curve = secp256r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 225 -# public key is a low order point on twist -private = 095ead84540c2d027aa3130ff1b47888cc1ed67e8dda46156e71ce0991791e835 -public = 3039301306072a8648ce3d020106082a8648ce3d03010703220002c49524b2adfd8f5f972ef554652836e2efb2d306c6d3b0689234cec93ae73db5 -result = invalid -shared = -curve = secp256r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 226 -# public key is a low order point on twist -private = 0a8681ef67fb1f189647d95e8db00c52ceef6d41a85ba0a5bd74c44e8e62c8aa4 -public = 3039301306072a8648ce3d020106082a8648ce3d0301070322000318f9bae7747cd844e98525b7ccd0daf6e1d20a818b2175a9a91e4eae5343bc98 -result = invalid -shared = -curve = secp256r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 227 -# public key is a low order point on twist -private = 0a8681ef67fb1f189647d95e8db00c52ceef6d41a85ba0a5bd74c44e8e62c8aa5 -public = 3039301306072a8648ce3d020106082a8648ce3d0301070322000218f9bae7747cd844e98525b7ccd0daf6e1d20a818b2175a9a91e4eae5343bc98 -result = invalid -shared = -curve = secp256r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 228 -# public key is a low order point on twist -private = 095ead84540c2d027aa3130ff1b47888cc1ed67e8dda46156e71ce0991791e834 -public = 3039301306072a8648ce3d020106082a8648ce3d03010703220003c49524b2adfd8f5f972ef554652836e2efb2d306c6d3b0689234cec93ae73db5 -result = invalid -shared = -curve = secp256r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -[curve = secp384r1] -[encoding = asn] - -# tcId = 229 -# normal case -private = 766e61425b2da9f846c09fc3564b93a6f8603b7392c785165bf20da948c49fd1fb1dee4edd64356b9f21c588b75dfd81 -public = 3076301006072a8648ce3d020106052b8104002203620004790a6e059ef9a5940163183d4a7809135d29791643fc43a2f17ee8bf677ab84f791b64a6be15969ffa012dd9185d8796d9b954baa8a75e82df711b3b56eadff6b0f668c3b26b4b1aeb308a1fcc1c680d329a6705025f1c98a0b5e5bfcb163caa -result = valid -shared = 6461defb95d996b24296f5a1832b34db05ed031114fbe7d98d098f93859866e4de1e229da71fef0c77fe49b249190135 -curve = secp384r1 - -# tcId = 230 -# compressed public key -private = 766e61425b2da9f846c09fc3564b93a6f8603b7392c785165bf20da948c49fd1fb1dee4edd64356b9f21c588b75dfd81 -public = 3046301006072a8648ce3d020106052b8104002203320002790a6e059ef9a5940163183d4a7809135d29791643fc43a2f17ee8bf677ab84f791b64a6be15969ffa012dd9185d8796 -result = acceptable -shared = 6461defb95d996b24296f5a1832b34db05ed031114fbe7d98d098f93859866e4de1e229da71fef0c77fe49b249190135 -curve = secp384r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 231 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004490e96d17f4c6ceccd45def408cea33e9704a5f1b01a3de2eaaa3409fd160d78d395d6b3b003d71fd1f590fad95bf1c9d8665efc2070d059aa847125c2f707435955535c7c5df6d6c079ec806dce6b6849d337140db7ca50616f9456de1323c4 -result = valid -shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -curve = secp384r1 - -# tcId = 232 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b81040022036200040161328909675213e32098d35a6b8308a8d500cca39dcee5e804e73bdb8deaf06fe417291fd9793b231ef5fe86945444a97a01f3ae3a8310c4af49b592cb291ef70ee5bc7f5534d3c23dc9eefde2304842c7737ae937ccf9bd215c28103e9fe2 -result = valid -shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002 -curve = secp384r1 - -# tcId = 233 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004af4ae964e3bcbd923accda5da3175d411fd62d17dd3c3a1c410bef1730985a6265d90e950ac0fc50743b1ed771906ff33b68cf4d3d83a885a87097fdd329ce83b189f98cec5be44c31d1a3a2bba10f471963232b8ba7610fa8c72179050eb86d -result = valid -shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003 -curve = secp384r1 - -# tcId = 234 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b81040022036200041478ab6e032b9545eda9ac2c264e57a11f08acbc76d16a0ab77b04dbdaf20f215c4183437b32afc471eaa603d14c7c5d8a4c84ee0e895bec5c37f0a1ca075e106ff6bf38801b5c697409d39675231108d33c4a5ea65aaa8c03e939c95d96c4c4 -result = valid -shared = 0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff00000000000000010000000000000001 -curve = secp384r1 - -# tcId = 235 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004f63208e34e7e90bb5fb036432467a89981444010663b8533b47bfa94bd2bc16f38aa516b930a4726e3876d3091bfb72ec783ed4da0cac06320817dc8bc64f59ccf06f48abc4386a150913fa95743a7b4601190e1c6ee8f8bf6354b254ecace45 -result = valid -shared = 00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff -curve = secp384r1 - -# tcId = 236 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004033271ef42d92ad47b273b09ea2f45401161baa52696590d0e175ff2d1c0dfa3fea40e4266d446546c05e480d57fabec7889f16a8bcc176602f6d46561614a2f4284abe697b7cb9ce79f7e2e71b155cb1f155ce925d16391a680eda23152e6e1 -result = valid -shared = 0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff -curve = secp384r1 - -# tcId = 237 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004737e8437e18683de2455b68945bba31daec3e754d72f0a0776d3192b2f9298bb95ca1464baa6687aabb679f804cf6ec6c2b4d47d61a60404df63b1e9ac0954b3419bbc2ad52a0409aeeb82f4703758588059165b20367dcb4b235b0caf71d727 -result = valid -shared = 007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0008000 -curve = secp384r1 - -# tcId = 238 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b810400220362000437f9004983156bbd9c47891e75237bb13016bd7fe6f4e0f71cef0e63f16a672f0d3b0e20165c33407e146b6a4ae6962dd3b57ccb99e7aaf1303240516d0ebe08e585513e3695d42c467dcab5340ef761990cadc8d8840aacc944481415c07feb -result = valid -shared = 3b5eed80727bcbc5113b8a9e4db1c81b1dddc2d99ff56d9c3c1054348913bde296311c4bd2fa899b4d0e66aaa1b6a0dd -curve = secp384r1 - -# tcId = 239 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b81040022036200049655d8e5622718b317cfbc09894357f75a6b13fa516bcd6630721b869a620196cf0c3dec8860b32d27ed9bac2cf263af17321698116d7d811ae8da9b9cbbf9382c1e36e2b67d6c6af9bcea7d9de00ca72b398606c098a0a0f0c4b8941943ed65 -result = valid -shared = 6a99a5acd4a7edb1c707d7f8be12e81140338e3e14ba563c703c681a319a3f9ce1f90f032bf840f3758e89cb852ceca6 -curve = secp384r1 - -# tcId = 240 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004ccb13d427b3c4bb33dd4f20cddabc68600eaf97eeb2c81e8c218ae90743e74ff38ca56f0c0224379db464dcf4a40f04350cd7a659b2c4851a5dcf8c990fc920c07d4d5aa50a2185750e6b84c42e83cff635050482decb4780f812e4c49fc7404 -result = valid -shared = 7c25a4f57f76ab13b25cab3c265db9d9bd925fecbf7bf93bef1308778646628decab067ed988a9755cd88e88de367104 -curve = secp384r1 - -# tcId = 241 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b81040022036200042664624307c02ef487030a632162c515f841d15ea3152d98ff2364232d7aab39343d5f703a4d5a31092aa7356c3a2f671c1cd603addfd8b5477552a3b32a18edaf3e33bec22ee2167f9da729636002a7974eaeb5ff082b2aabf8c7056b84c3ab -result = valid -shared = 7fffffe000000ffffffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff8000004000002 -curve = secp384r1 - -# tcId = 242 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004665f1f320b6ab1c1b52d144e52d87a154c2b4489838c9119de622c2d1b52b65b0a3955e44e0d4859175360c0f63dee813f14f69972f18caed7916c94a4d20ec344591e7536a4a7a4d8c9832818c96d60b1a81fabe64ea02c5f647e361bf5b60f -result = valid -shared = 800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002 -curve = secp384r1 - -# tcId = 243 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b810400220362000491357ca87dbb08e85d7b1acecfd1e086078a82d19f81474da389364a39fe2543eb934b440173c38e61a1d9407855b5d89ef0d9e920764b6d7765b084cf9541dacc43d1dabaa390b0fb856097b0c00a8556f4e3848568ab4ae790c3d346ca01b6 -result = valid -shared = fff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff -curve = secp384r1 - -# tcId = 244 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004d5a833bae33b2d10fdff6db7c5477adb614b191c70d97c6f130a14e93931cc1dc058053fee54a264a00fdd16d3166fdc42992276b79925bafcd183b03ed18235350980abfe67b814c6c11074c38f74cd4e734ad58cdb49d9fcd2181d1b8f1119 -result = valid -shared = fffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000004000000 -curve = secp384r1 - -# tcId = 245 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b810400220362000467547cda7fbe8f16be5a4477cbb02979f1af72fc0f39302773552fbcf4667a8e23abc0e12856ee6234deeca5f22ae0503a4df7c068e7432417260cb9fe0d68b9c7fcf7e16a2ada05687d8f8900b84723103edbff0a42b27517da2760b7d38843 -result = valid -shared = ffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff -curve = secp384r1 - -# tcId = 246 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b81040022036200041363e3b99008e09bb3f085949b9b6ea26a318f496de568a96630fdb9d4c72c2814df3087a1741f32f24989b428167f93c653cb3ae8c3ecfaec57efd54bb8ce9d79c7bf6cc70fb1114f939be8f1a99bf1e42b97431124ef9fa33450faa4e76839 -result = valid -shared = ffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff0000000000000100000000000001 -curve = secp384r1 - -# tcId = 247 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004ba2be8d7147e2417c2ec80b24b4c1aa94464ffd0aae1fa2e078b3afbc77c144489ca9d064acbb7a9cfa6196d0f467b7e65ee1ca1eb1351ff9968f553dfe2e4c59ff8ba34c22a42b3baa13a9a1adc7f13abd40f1fd25d46bc5330852b9371966a -result = valid -shared = ffffffffffffffffffffffffffffffff00000000000000000000000000000000ffffffffffffffffffffffffffffffff -curve = secp384r1 - -# tcId = 248 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004d69850ccbacc4736ea200ff2f8488f26247945a2ab48dd3708f494b293d8cba83417f48974881c7fb03854089bbf66cc1c773ec03cb8cd5f007ec3b03bdd05a409b352103f0decf25b41673ab8ca3d04334babee01219f15701f2bca22d40b37 -result = valid -shared = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe -curve = secp384r1 - -# tcId = 249 -# y-coordinate of the public key has many trailing 0's -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b81040022036200046fcaf82d982d222d6096ba83e55b1c7dcb71a41e88f323333f44284d95c4bd3616da7a1bef928f31c26f885ba7adb487826fde2ed9f5649c11cf8465f8bf8ad50f68914936fc39666f68219d066506bea4001fdc816c9a90e7e2afb19bea085f -result = valid -shared = 000000000000000000000000000000000000000000000000000000001f03123b00000000000000000000000000000000 -curve = secp384r1 - -# tcId = 250 -# y-coordinate of the public key has many trailing 1's -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b81040022036200046fcaf82d982d222d6096ba83e55b1c7dcb71a41e88f323333f44284d95c4bd3616da7a1bef928f31c26f885ba7adb4877d9021d1260a9b63ee307b9a0740752af0976eb6c903c6999097de62f99af9405bffe0227e93656f181d504f6415f7a0 -result = valid -shared = 000000000000000000000000000000000000000000000000000000001f03123b00000000000000000000000000000000 -curve = secp384r1 - -# tcId = 251 -# y-coordinate of the public key is small -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004bfeb47fb40a65878e6b642f40b8e15022ade9ecfa8cb618043063494e2bc5d2df10d36f37869b58ef12dcc35e3982835fd2e55ec41fdfe8cabbbb7bcd8163645a19e9dac59630f3fe93b208094ff87cd461b53cef53482e70e2e8ea87200cc3f -result = valid -shared = 0000000000000000000000000000000000000000000000000000000036a2907c00000000000000000000000000000000 -curve = secp384r1 - -# tcId = 252 -# y-coordinate of the public key is large -private = 0a2b6442a37f8a3759d2cb91df5eca75b14f5a6766da8035cc1943b15a8e4ebb6025f373be334080f22ab821a3535a6a7 -public = 3076301006072a8648ce3d020106052b8104002203620004bfeb47fb40a65878e6b642f40b8e15022ade9ecfa8cb618043063494e2bc5d2df10d36f37869b58ef12dcc35e398283502d1aa13be0201735444484327e9c9ba5e616253a69cf0c016c4df7f6b007831b9e4ac300acb7d18f1d171588dff33c0 -result = valid -shared = 0000000000000000000000000000000000000000000000000000000036a2907c00000000000000000000000000000000 -curve = secp384r1 - -# tcId = 253 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003cf99ef04f51a5ea630ba3f9f960dd593a14c9be39fd2bd215d3b4b08aaaf86bbf927f2c46e52ab06fb742b8850e521e -result = valid -shared = 6092a1757ddd43a04e185ff9472a0d18c7f7a7dc802f7e059e0c69ae16c802651719406e04de27652ff83da4a780ef2f -curve = secp384r1 - -# tcId = 254 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002732152442fb6ee5c3e6ce1d920c059bc623563814d79042b903ce60f1d4487fccd450a86da03f3e6ed525d02017bfdb3 -result = valid -shared = 89c804cb81443386b185bcd9e2e6c35ee6177c3b90298985c4e81a89d520cceb17d729540e56ecc343c26bf314f2d052 -curve = secp384r1 - -# tcId = 255 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036660041b1c7984620e8d7fd7ccdb50cc3ba816da14d41a4d8affaba8488867f0ca5a24f8d42dd7e44b530a27dc5b58da -result = valid -shared = 35513157e804bd918d04de202778b81a6fc7ad8aa541ee94116a0f18466725d75e71c6942bf044b1b0ecba19db33e0de -curve = secp384r1 - -# tcId = 256 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200040000000000000000ffffffffffffffff0000000000000000ffffffffffffffff00000000000000010000000000000001141b9ee5310ea8170131b604484a6d677ed42576045b7143c026710ae92b277afbbea0c4458c220d561e69404dc7d888 -result = valid -shared = 102080c047881d19aefb01c29c82a4fb328a8ea6e6d6c914af73100507c8ee499799aaa646de0ea8c2727c0b5ed2439b -curve = secp384r1 - -# tcId = 257 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b810400220362000400000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff70370385413d3eff6fa3407ba24f682c2b01b51445dbdf5ef7b0dd0979f17e713e09081571f1e94dfb66bf282002f39f -result = valid -shared = f689f6e475b4e15162521acab4637a3cdb9cb42aa92f9114b0ee300ddae89d5eafff3463a1f5004a2a1bd4aeffa47b78 -curve = secp384r1 - -# tcId = 258 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200040000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff112e191f1f78bbc54b6cc4f0b1e59ae8c6ff1a07f5128e41dfa2828e1b6538d4fa2ca2394c6aab3449dcb3fc4eb44c09 -result = valid -shared = f3486244119b3632fd55be9e6951eb5d9c8c62f6a27042f94b924155ecfd4ff8744ba3d25bcf85a7b925bd28a12b897f -curve = secp384r1 - -# tcId = 259 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b8104002203620004007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0008000028a4c8da5a05112fe6025ef41908969de20d05d9668e5c852ef2d492172ddc2a0a622fc488164fcc1a076b872942af2 -result = valid -shared = 8171b7c80d4c90bb58ae54393921ab9c5c0b3196f045e9fe5c8b168f0e5f6a77e1aa34ecedc5481ce55ab34c14e0f2e8 -curve = secp384r1 - -# tcId = 260 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200043b5eed80727bcbc5113b8a9e4db1c81b1dddc2d99ff56d9c3c1054348913bde296311c4bd2fa899b4d0e66aaa1b6a0dd7b7f0f28d55e2f3a50f1f1bef3976834a05b43418e979303bc0363ed16d2d0b4011cc37b3c06ad73154faeab7915cd87 -result = valid -shared = 1fe6fea5f00d3005abaae2267ff18e430915838d87909ab503885edf38be7618ecb321f0a4df71b0913fbf12c76fc1f0 -curve = secp384r1 - -# tcId = 261 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200046a99a5acd4a7edb1c707d7f8be12e81140338e3e14ba563c703c681a319a3f9ce1f90f032bf840f3758e89cb852ceca63cf99ef04f51a5ea630ba3f9f960dd593a14c9be39fd2bd215d3b4b08aaaf86bbf927f2c46e52ab06fb742b8850e521e -result = valid -shared = f58adc13ff997d38383910db7befb17670393a33d95b049c2aa19d760c8e728ecedd32168476b90b26a3742dcc121b07 -curve = secp384r1 - -# tcId = 262 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200047c25a4f57f76ab13b25cab3c265db9d9bd925fecbf7bf93bef1308778646628decab067ed988a9755cd88e88de367104562ee0c57e71d96cefe31b4c4045bd4086a38e8ab9adf2d5567be318051d70f3aa68b753f271ab032b6abcce919e2962 -result = valid -shared = 56299684ec5ceb09ba4d94d1231005a826c9c08a5219c757e0136cbe8b6430badd4925172f2939891da7c7893850512f -curve = secp384r1 - -# tcId = 263 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200047fffffe000000ffffffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff80000040000024480ab33cb4bf7cb79c024eeade3fd641e2f3003698400e8986a7343a5da59a3b26eea4b4176e53239371437d834a1a7 -result = valid -shared = 1911a0ee6aebe263fdcf3db073f2598cdafabec2123a2f24a28c3d9151c871f32d6dc2f31d25af9c498fd68da23e5bef -curve = secp384r1 - -# tcId = 264 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200048000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020797da4c0751ced16de80d16ab7c654a5dc27d092626d0865a192a1c5ea7c1b88c9fcab057946741e41cc28c80ec0b9a -result = valid -shared = 15900643e2e0583976974b05f83c7a96611425f7c4a6eb51916ab958a037fd9cc172bdcfff4540a2ff3ce64e6505557e -curve = secp384r1 - -# tcId = 265 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b8104002203620004fff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff6c70898ae6fb31fa2f086562af2d10486ba4c6fd5e41dfe4aa61598b4707a3bc276a62feb1b98557e3b17c025f7adf4e -result = valid -shared = 88a544a769d5c34a051416bd509dfac911863f604c83ea844bf0e4c5c272dec86d057a88b152a9274701938c705900c3 -curve = secp384r1 - -# tcId = 266 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b8104002203620004fffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff00000040000000eb1592858b6e6e3a199c0f3e7c5f0b4a92915936efb8bc0407680eb7274be7422156ce8cfc8b505b2d902c39992380f -result = valid -shared = b7db26b286e7527cb1f454782fe541862ff0f8d7eed960e22855deb7ac2a69611668c777c53bb74c2bcd40edfbf7944d -curve = secp384r1 - -# tcId = 267 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b8104002203620004ffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff4987abae412809c2fa48fd23b1bdf9e622f5a606c44117215ffa61b18ef46e54a7fbbf11f9a6ba59c991b4ae501fedce -result = valid -shared = b1e8aab1aa633d98dc6b768594e1e3edb801a9ef483f287c83e19744d2ad343ad3debdc4dc178213ad6876b52284f552 -curve = secp384r1 - -# tcId = 268 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b8104002203620004ffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff00000000000001000000000000013691fe493d4d28bf8ee1dfec812d6c306eae0842919eda6dc525f0d49ac2d26a992251912139a2936849f9d6fa949a68 -result = valid -shared = b0de006f80f6f89e4eea6e46dfe305153005612d1e903171ec2886230971961b5202a9f3187bdac413ac24c836adf7a0 -curve = secp384r1 - -# tcId = 269 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b8104002203620004ffffffffffffffffffffffffffffffff00000000000000000000000000000000ffffffffffffffffffffffffffffffff615842aa06b06f78f0a66f7bea88d4b6ee59653eeaa00dc5e0a2b658f969b71af90c9b4e96bd3ca33846955bdccbd359 -result = valid -shared = ca8cfa42c5e374914c14d6402b1a99208e47e02ec49818913694ea0822a2cc6c310259a8f3ab7559b9974bc4c2fa337e -curve = secp384r1 - -# tcId = 270 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe732152442fb6ee5c3e6ce1d920c059bc623563814d79042b903ce60f1d4487fccd450a86da03f3e6ed525d02017bfdb3 -result = valid -shared = edf040bace18d90bf9ce720df2a3b31d76d95b7ed9530a159ac0b24e82a871033eada40552f9e606f7115e6a78927511 -curve = secp384r1 - -# tcId = 271 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000001f03123b0000000000000000000000000000000071bd1e700c34075c3cade8ce29d33724af68a7672b265a4e157055360440ab7c461b8e9ac8024e63a8b9c17c00000000 -result = valid -shared = ea817dff44f1944a38444498f1b6c1a70a8b913aa326bc2acc5068805d8ddd7a5e41b8ee5b8371a1cf3f7a094258e3a6 -curve = secp384r1 - -# tcId = 272 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000001f03123b000000000000000000000000000000008e42e18ff3cbf8a3c3521731d62cc8db50975898d4d9a5b1ea8faac9fbbf5482b9e4716437fdb19c57463e84ffffffff -result = valid -shared = ea817dff44f1944a38444498f1b6c1a70a8b913aa326bc2acc5068805d8ddd7a5e41b8ee5b8371a1cf3f7a094258e3a6 -curve = secp384r1 - -# tcId = 273 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200040000000000000000000000000000000000000000000000000000000036a2907c00000000000000000000000000000000000000007f57b69a014783dbfa4967b2f9cfa678a6f0b6e9cfd41648cec5b3c498e72152da3f82d3da2e8e9f8ef37b11 -result = valid -shared = bfa93e184f76279fd707d53ddcb3628855cfafb111bcbd0b4df6ef77aee624924d681626a153fa4e59c923b71fc090b3 -curve = secp384r1 - -# tcId = 274 -# edge cases for ephemeral key -private = 2bc15cf3981eab6102c39f9a925aa1309db59c2c02a54411928d73c3945d157848dc36959efef7495c8528ea284c1c97 -public = 3076301006072a8648ce3d020106052b81040022036200040000000000000000000000000000000000000000000000000000000036a2907c00000000000000000000000000000000ffffffff80a84965feb87c2405b6984d06305987590f4916302be9b7313a4c3a6718deac25c07d2c25d17161710c84ee -result = valid -shared = bfa93e184f76279fd707d53ddcb3628855cfafb111bcbd0b4df6ef77aee624924d681626a153fa4e59c923b71fc090b3 -curve = secp384r1 - -# tcId = 275 -# edge case private key -private = 3 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = 455aea9924330bd6d2d6403478327900e172e93598e254cf6d8eb13f0a3d21be51a46107333844e61dfa3d80df6928e9 -curve = secp384r1 - -# tcId = 276 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = db1d8ef1117282870db8113aa4f58723c756ce598686eb8ea531aa4d39abb1b982b1e7bb2648a6c268d2d351204db8d5 -curve = secp384r1 - -# tcId = 277 -# edge case private key -private = 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = e98062df47ef884c9411e16466af84ad271d586008b1fbc50aeb3b36836a35a770dd42e0db84d39b26f4dcd2dc03d90b -curve = secp384r1 - -# tcId = 278 -# edge case private key -private = 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = 898aae0ebf1cb49fb6b1234d60f59006325421049a8a320820e1ad6af6593cdc2229a08c500aa55ca05999d12829db9c -curve = secp384r1 - -# tcId = 279 -# edge case private key -private = 0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = 83f862f496ab8af12b82a8a0c047d836bdfa36281324b3a1eb2e9c1d46699d81cb125cbe4b93939fd84e1ae86d8a83cb -curve = secp384r1 - -# tcId = 280 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a779ecec196accc52973 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = 9a26894887a0342ca559a74a4d4a8e1d6b2084f02e1c65b3097121a9a9af047d8810fb945dc25bbf02222b3b625f1e0a -curve = secp384r1 - -# tcId = 281 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecdc196accc52973 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = 8a8d9dc194a26910cbdae7908d185b6ad04b620c94c5ee331e584ed804e495bebc2290a2d7006a06e65b9bcace86c6f6 -curve = secp384r1 - -# tcId = 282 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aece4196accc52973 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = d57f6aa12d3f07e8958499f249e52cfbe5be58482e146c5414dbbf984fc5333710350e2ce96b33beb7678381f40f1dcb -curve = secp384r1 - -# tcId = 283 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec1969ccc52973 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = 188e8041d9a5f0b6cfdad315ada4823beda0146774fad65b500e6ef94376ebf8af7a40ff6f6b45019a09dde7d7fb5552 -curve = secp384r1 - -# tcId = 284 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52959 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = 2ecf9dc47e8b07ae61ddbd1680ead02698e9e8469f78d5a28328e48d0c9d7a2ac787e50cba58cc44a32fb1235d2d7027 -curve = secp384r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 285 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52969 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = 06ee9f55079d3d3c18c683ba33e0d2521be97c4fbf7917bf3b6287d58ffcde2df88842e3f5530b39549ac20974b1b60e -curve = secp384r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 286 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52970 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = 455aea9924330bd6d2d6403478327900e172e93598e254cf6d8eb13f0a3d21be51a46107333844e61dfa3d80df6928e9 -curve = secp384r1 - -# tcId = 287 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52971 -public = 3076301006072a8648ce3d020106052b8104002203620004e9dfaaab808b3aac1ccca7cc6242a7ee583249afe8ee8f66b904cc8eec34ad334456e00f33a94de8b5169cf0199550c020156e9651734ff999c5f3ea62b83d0083a6093f234457251ecf72c41e4df7cea2420b5454a7f690034380bac981e92e -result = valid -shared = 024c5281487216058270cd1cfe259e948310e4adc263a9edaa4da0bc3f5f8ce8ffc88ae41b2c050bf6dd9c8c66857237 -curve = secp384r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 288 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp384r1 - -# tcId = 289 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp384r1 - -# tcId = 290 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe -result = invalid -shared = -curve = secp384r1 - -# tcId = 291 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff -result = invalid -shared = -curve = secp384r1 - -# tcId = 292 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp384r1 - -# tcId = 293 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp384r1 - -# tcId = 294 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe -result = invalid -shared = -curve = secp384r1 - -# tcId = 295 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff -result = invalid -shared = -curve = secp384r1 - -# tcId = 296 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp384r1 - -# tcId = 297 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp384r1 - -# tcId = 298 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe -result = invalid -shared = -curve = secp384r1 - -# tcId = 299 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff -result = invalid -shared = -curve = secp384r1 - -# tcId = 300 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp384r1 - -# tcId = 301 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp384r1 - -# tcId = 302 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe -result = invalid -shared = -curve = secp384r1 - -# tcId = 303 -# point is not on curve -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3076301006072a8648ce3d020106052b8104002203620004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff -result = invalid -shared = -curve = secp384r1 - -# tcId = 304 -private = 0c6cafb74e2a50c82c7a63d13294bfea13d0bc504ba2b08a392c9081bf3815d9e44d969ed7f05ffd1d8594355053c6147 -public = 3015301006072a8648ce3d020106052b81040022030100 -result = invalid -shared = -curve = secp384r1 - -# tcId = 305 -# public point not on curve -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 3076301006072a8648ce3d020106052b81040022036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c8 -result = invalid -shared = -curve = secp384r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 306 -# public point = (0,0) -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 3076301006072a8648ce3d020106052b8104002203620004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp384r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 307 -# order = -# -39402006196394479212279040100143613805079739270465446667946905279627659399113263569398956308152294913554433653942643 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f0231ff000000000000000000000000000000000000000000000000389cb27e0bc8d220a7e5f24db74f58851313e695333ad68d020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = invalid -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 308 -# order = 0 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201853082011d06072a8648ce3d020130820110020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f020100020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = invalid -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 309 -# order = 1 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201853082011d06072a8648ce3d020130820110020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f020101020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = acceptable -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 310 -# order = -# 9173994463960286046443283581208347763186259956673124494950032159599396260248791326163093631191247821216106 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201b13082014906072a8648ce3d02013082013c020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f022d00ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196a020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = acceptable -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 311 -# generator = (0,0) -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = acceptable -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 312 -# generator not on curve -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e61023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = acceptable -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 313 -# cofactor = -1 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc529730201ff036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = invalid -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 314 -# cofactor = 0 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973020100036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = invalid -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 315 -# cofactor = 2 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973020102036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = acceptable -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 316 -# cofactor = -# 39402006196394479212279040100143613805079739270465446667946905279627659399113263569398956308152294913554433653942643 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201e53082017d06072a8648ce3d020130820170020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = invalid -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 317 -# cofactor = None -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201b23082014a06072a8648ce3d02013082013d020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff30640430fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef046104aa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab73617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = acceptable -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 318 -# modified prime -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100f47e533e4e43e4bf04e901db0eea6efba14bbcdc3b1c5753a7c141487e4f43784e57a72310202323361f44760c8368bf306404300b81acc1b1bc1b40fb16fe24f11591045eb44323c4e3a8ac583ebeb781b0bc86b1a858dbefdfdcdcc9e0bb8af37c973d0430b3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef04610400000000000000000000000000000000fffffffffffd38000000000000000000000000000000000000000000000001cf3646298bba2f24e84189cf0d1e75188fc4fcf5b0844281822e789e3d534b159f4c419342260197625ad924a2c72c4d0f023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc529730201010362000400000000000000000000000000000000fffffffffffd38000000000000000000000000000000000000000000000001cf3646298bba2f24e84189cf0d1e75188fc4fcf5b0844281822e789e3d534b159f4c419342260197625ad924a2c72c4d0f -result = invalid -shared = 5df0762488bc0a7be1121508949382861f781c331676048c2d45d245be6f476c872113e6710bc746c3d06970510193ce -curve = secp384r1 -# The modulus of the public key has been modified. The public point of the -# public key has been chosen so that it is both a point on both the curve of the -# modified public key and the private key. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 319 -# using secp224r1 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 304e301006072a8648ce3d020106052b81040021033a0004074f56dc2ea648ef89c3b72e23bbd2da36f60243e4d2067b70604af1c2165cec2f86603d60c8a611d5b84ba3d91dfe1a480825bcc4af3bcf -result = invalid -shared = -curve = secp384r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 320 -# using secp256r1 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004cbf6606595a3ee50f9fceaa2798c2740c82540516b4e5a7d361ff24e9dd15364e5408b2e679f9d5310d1f6893b36ce16b4a507509175fcb52aea53b781556b39 -result = invalid -shared = -curve = secp384r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 321 -# using secp256k1 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 3056301006072a8648ce3d020106052b8104000a03420004a1263e75b87ae0937060ff1472f330ee55cdf8f4329d6284a9ebfbcc856c11684225e72cbebff41e54fb6f00e11afe53a17937bedbf2df787f8ef9584f775838 -result = invalid -shared = -curve = secp384r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 322 -# a = 0 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201863082011e06072a8648ce3d020130820111020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff303504010004304fcc45ccf5e23ee407b9291d2e85523962a2a79a50da3facca04b7267ad316db202cb07c24905740d201ded3028881090461042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973020101036200042121a348f9743855859c496f91d0f39fe728fc46e48d007713051b22f1c0257fe20dd85b21df7e1ec82bf8b39b2138a2ae74f80e6257778f8cca9f279b57d25eeeb155960642972f0567e204514f0ac1eb1e27db5115053211914961d09644c6 -result = acceptable -shared = 455cf3c0b0090688599825522ef3312878201514f6330ccc7f42ec1945204adfe419b2dbbfb942dc98b16d8323150cf6 -curve = secp384r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 323 -# public key of order 3 -private = 0de44e63fd924f177340d780af6aaaea271f52d2cb9a5c519b6020e06c3cf0baafbc0b801c6508c2e1483b15cfef7afc2 -public = 308201b53082014d06072a8648ce3d020130820140020101303c06072a8648ce3d0101023100fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff3064043072b3656874104b18a53149d3f2eb372f2569f3639e90d8a720cd240a2dfb8102731a7158f093a41c394020346bbf1335043037250f23c44a0cd5d2f4bc5c4b961d4aa4c3d0b3de9152212325ac17ea696a8c3f38a1f1b5249ed2d4befcbdf39659ab046104e6adb603e0fdf32aa11eaf97ddff6ce802ec2aae39a37c980fe4cd12da5bc51a7f71cad00068ada13922958a70b5cef94110ec8f85947c796e5ab0a2c1844673ac6d979fd2456fb7c5715fbbf87273079dfb83886357b434cb400b0b711ffa13023100ffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc5297302010103620004e6adb603e0fdf32aa11eaf97ddff6ce802ec2aae39a37c980fe4cd12da5bc51a7f71cad00068ada13922958a70b5cef9beef13707a6b838691a54f5d3e7bb98c539268602dba90483a8ea044078d8cf762047c769ca84bcb34bff4f58ee005ec -result = invalid -shared = 22a50194a6b08255b20b998db62c86a097d2c03d9bc1e76d337364c8e7a3bac82680c5aa4d58be543378ab5a3876abc7 -curve = secp384r1 -# The vector contains a weak public key. The curve is not a named curve, the -# public key point has order 3 and has been chosen to be on the same curve as -# the private key. This test vector is used to check ECC implementations for -# missing steps in the verification of the public key. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 324 -# Public key uses wrong curve: secp224r1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 304e301006072a8648ce3d020106052b81040021033a00040710b0c6f4675459f3df2bdf7ca02819f8086198d15c69b8abda37639e6031caca8a0121894d2491d8b3dce093703c70705bc5dbc8fa17c8 -result = invalid -shared = -curve = secp384r1 - -# tcId = 325 -# Public key uses wrong curve: secp256r1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 3059301306072a8648ce3d020106082a8648ce3d030107034200045fa4fa0b235c21e5c9f3baea9303bf86eccb7d31d0b998e141bc54b5dc43b23eef7fc5cf56308ed595eee99ade6aaf74d591c3d00aa1b438abc59c9607c22c36 -result = invalid -shared = -curve = secp384r1 - -# tcId = 326 -# Public key uses wrong curve: secp521r1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 30819b301006072a8648ce3d020106052b810400230381860004005bce61fe27c440fedbad47d88bccf645db9c1d30daa086e592e8b6a0a173b87991b619801907b420fa558c7953ab97badd9c6c1d85859d9ebef7441a088ff57ed5008d7638de703faabeb5a78e83e8fcd4eb786144a75d79bd4cc8cfa8be66612d756c7b65c67f72c6acbade6f0d59e9752e845205b2a560d4f8d6a9e84bf812f94d18 -result = invalid -shared = -curve = secp384r1 - -# tcId = 327 -# Public key uses wrong curve: secp256k1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 3056301006072a8648ce3d020106052b8104000a03420004a69ced11a8bf7a907bfa47cba3368f2498b465a2407c90649c8da224d2a85bf445ad2df3d0113e72aedccf92ba6b8529ed6faa154bc27aba25f49371981e3b38 -result = invalid -shared = -curve = secp384r1 - -# tcId = 328 -# Public key uses wrong curve: brainpoolP224r1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 3052301406072a8648ce3d020106092b2403030208010105033a0004a9b0f90e49a57fbe508847bf16e4a7b565dfe870a50164bc2862fe6e4d54bd8b109939f7dbbf800522722b9c0b309ace3884abb69c927ad0 -result = invalid -shared = -curve = secp384r1 - -# tcId = 329 -# Public key uses wrong curve: brainpoolP256r1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 305a301406072a8648ce3d020106092b240303020801010703420004512fe17172db1125a49f9dbb85e387869adf015e4899c06f66ef870d72092d4d195e1d21b4a4647bf734468bee802ddad5449202eba1041df2fd8cde04697237 -result = invalid -shared = -curve = secp384r1 - -# tcId = 330 -# Public key uses wrong curve: brainpoolP320r1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 306a301406072a8648ce3d020106092b240303020801010903520004c391dc7a817d47a3961ea1857895e101c0f5a8767d3a9c7cad49f7af8029f24c67309373cedd0831ccc0a0f45d344f3ab5923d2452507a980301a283848ae31574a57db51ce5e61d35aee483f1bb8e66 -result = invalid -shared = -curve = secp384r1 - -# tcId = 331 -# Public key uses wrong curve: brainpoolP384r1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 307a301406072a8648ce3d020106092b240303020801010b0362000419d3c811c04c5c0990d0258386195b2e29fdaba58d3f12b0bac8d3d53828c66c7a35e3d1eb0bdf2c08f23d0e4ab6a3246e456bf0fb863d03423dbe431baf799657c7816a619662fe5b900b754107ba5cc06b1d62c9a927891efee1a1fd404d7e -result = invalid -shared = -curve = secp384r1 - -# tcId = 332 -# Public key uses wrong curve: brainpoolP512r1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 30819b301406072a8648ce3d020106092b240303020801010d0381820004216eb619457f1168ac873f5b560a75df80749f2bdf9abac31d6580e521ad70368013c3db74f663263b61eb12d4dcd597ad6c77cef6a5d6d2240b1e244d76403f693fb317ffc602a7ac313991b0a62f7bf469bbc95b3ff35003d972eb8ebcc8d4833e6c24ad52d49c1ce6244c7889ab67a8818232e192944542763fc667e5799d -result = invalid -shared = -curve = secp384r1 - -# tcId = 333 -# Public key uses wrong curve: brainpoolP224t1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 3052301406072a8648ce3d020106092b2403030208010106033a0004691b24004380a599770214d0c60ab37cfc804cfaa7aedd11cbf0a05467ebec5e33322cda707b848086fd740244f62cdeb867fc057207fde2 -result = invalid -shared = -curve = secp384r1 - -# tcId = 334 -# Public key uses wrong curve: brainpoolP256t1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 305a301406072a8648ce3d020106092b24030302080101080342000422bf69f3a81dfa1ed8a97301943626e20377b78f7e7d714b880deb5a4a9c63a11591c2e47b777488990771855768b9a4050d61bf02d84cc6aa40447a07507285 -result = invalid -shared = -curve = secp384r1 - -# tcId = 335 -# Public key uses wrong curve: brainpoolP320t1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 306a301406072a8648ce3d020106092b240303020801010a0352000476568300e2b4c68861589b4966e67bc414811e4011260cb8be5f884869fa179ca8af40f80009e0a58b17ac3e551a772e76683c32e6e09112572542d7c1fe3d49abb56da56d669186e2623dc797129dc0 -result = invalid -shared = -curve = secp384r1 - -# tcId = 336 -# Public key uses wrong curve: brainpoolP384t1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 307a301406072a8648ce3d020106092b240303020801010c036200043345dffded3c33f7dcc19bb8997a39f2d6230abcb765d6142c30bf320c1fadff535feafd8505eb3e614db71826c1e258077a1e6057add7474f6d35dce68417812e7b919b1c673032b28c45d0a9251c43a2a73ab152f64ff8eba4eab312fa73bd -result = invalid -shared = -curve = secp384r1 - -# tcId = 337 -# Public key uses wrong curve: brainpoolP512t1 -private = 0d6331a5a968e4d3bd7336a423b41055b68edd100b8b998d00eb9ed93881c21e3912bb2ee08e71327be205898675ef7a4 -public = 30819b301406072a8648ce3d020106092b240303020801010e0381820004a3677c646cd887685940c28076f55cda7469032845f2cb2af51c61492dc435aaa5b771d8e1528417cdeb89b5f629e06b234e21236b9edf46c7025177ee65a8e940f670d10c722cea355bd3a5c8847a38324b9a06a50a95da4e70bb492cd00194a8830975dd1e115e19315575ff841b30fd4a3f8a44725dfe280d0af57fc80cc3 -result = invalid -shared = -curve = secp384r1 - -# tcId = 338 -# invalid public key -private = 2b9e57572da6cf4fb58cb94eab8df19383a136f219f2a515776a8bf48e1538dd1d811946c16d9f0184c9ce5cdf1dac51 -public = 3046301006072a8648ce3d020106052b81040022033200024424530ea70bace90601f8d5869e4179a6cd689b6a18fdfec50cecf17cb836d24820211ada67815b42c2c2606303f69e -result = invalid -shared = -curve = secp384r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -[curve = secp521r1] -[encoding = asn] - -# tcId = 339 -# normal case -private = 1939982b529596ce77a94bc6efd03e92c21a849eb4f87b8f619d506efc9bb22e7c61640c90d598f795b64566dc6df43992ae34a1341d458574440a7371f611c7dcd -public = 30819b301006072a8648ce3d020106052b8104002303818600040064da3e94733db536a74a0d8a5cb2265a31c54a1da6529a198377fbd38575d9d79769ca2bdf2d4c972642926d444891a652e7f492337251adf1613cf3077999b5ce00e04ad19cf9fd4722b0c824c069f70c3c0e7ebc5288940dfa92422152ae4a4f79183ced375afb54db1409ddf338b85bb6dbfc5950163346bb63a90a70c5aba098f7 -result = valid -shared = 01f1e410f2c6262bce6879a3f46dfb7dd11d30eeee9ab49852102e1892201dd10f27266c2cf7cbccc7f6885099043dad80ff57f0df96acf283fb090de53df95f7d87 -curve = secp521r1 - -# tcId = 340 -# compressed public key -private = 1939982b529596ce77a94bc6efd03e92c21a849eb4f87b8f619d506efc9bb22e7c61640c90d598f795b64566dc6df43992ae34a1341d458574440a7371f611c7dcd -public = 3058301006072a8648ce3d020106052b81040023034400030064da3e94733db536a74a0d8a5cb2265a31c54a1da6529a198377fbd38575d9d79769ca2bdf2d4c972642926d444891a652e7f492337251adf1613cf3077999b5ce -result = acceptable -shared = 01f1e410f2c6262bce6879a3f46dfb7dd11d30eeee9ab49852102e1892201dd10f27266c2cf7cbccc7f6885099043dad80ff57f0df96acf283fb090de53df95f7d87 -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 341 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b810400230381860004014c643329691ba27459a40dfe7c4ce17b3ea14d0cd7aa47b01f1315404db51436fbbfe6de0842e0f7e1265f6ff3aca28750677d3370b2fb2a6ef497356f4b95811201051b14178639a09a41465c72d3743436ee1c191ff7388a40140b34d5317de5911ea03cdbb0329fdeb446695a3b92d437271a9f3c318b02dec4d473908158140e97 -result = valid -shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -curve = secp521r1 - -# tcId = 342 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b8104002303818600040029cd32125c23a41af24fd4b729da0faacbc35516ef0ba59096602571693cd282e26d67e18ef4643d0f6f158d7370d3394ca9a8de7938032ac178c6fd34e3702b8d008649834e2b41be3a8b7510bfe570f4c67075943cd0cbb9d9e1d1da52618b5b96d6aec9b650daf1ca6624c13e5116302b9c79c8c4d3d351915d1e8e1ab6ad76098e -result = valid -shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -curve = secp521r1 - -# tcId = 343 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b8104002303818600040032c6f06ce6a15ea064464d35aa368d299c9a9e1e368f694aefb603876248f898f223ce0217bef37d61eb09b27c93187cf8e61ba7b14e3c9bee692b06ac6d95f836019fd19f8480e21c63211d48d45f96f6365cf55f958e1a0fe7ea6b6b9ff230a87b70bb1b14d3a5fb6669a91641c6acf4570c1d3a9e709913b7fe6b35ff81c394d6a7 -result = valid -shared = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002 -curve = secp521r1 - -# tcId = 344 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b81040023038186000401f7eb96e64b1a62daf9e0801bfd96a0b15b68e5f5cb3e90b434495a473907338e53098e1c2e493335d09c6aae6fdda0345b98aaed588f2abe82910713fb6c20252901396b17cf250bc018f4cead097e7e09863f14cf1239b065e57d884949eee141926f7e7c9f7f34cf0536368767bc0e1ab5142877293a4c722693a73fe14a5390af93 -result = valid -shared = 000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000 -curve = secp521r1 - -# tcId = 345 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b810400230381860004006ddf9b10965d5fc129e96f7a37667ccf66cc44384772906fedb21f9de4629e01aaa09ac7c9866112064bbc9bd58ebc123ab2fe19d8fed1a056d27bfef0630509c7001c441311ef20a16346332ea42d5c65788d68f6817b0267fcab11ea9c948ed108115dda8e823a380b601460742d3772d6424c67b240da24772ff0d2ccd9a1e0cea6 -result = valid -shared = 000000ffffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff0000000000000100000000000000 -curve = secp521r1 - -# tcId = 346 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b810400230381860004007a8c547268c948b626da636cf54428ea2ab23861d499a84ad7be1cf691b92872a06e26c6dba08ca9ed386f83d396156d5fa023f57d5ea6440ec7401dad2c08ad70018c3815b1b9a2e42555419a6c19043fa2b0ddcc4b5a6e372fee9fcb227d85bad704687e7e1a818b612d5c046cd75972f7a2dd5c9a200ac5582cd59fec47ac525ecf -result = valid -shared = 00003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff -curve = secp521r1 - -# tcId = 347 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b8104002303818600040029153cf062f88f303e5d6f9aac968bd901076d5994ea7f831833b1e69b67e9e9fe20cf9c5623e00e0b9e3592fca2a03324b5df7c93186aff697aca864600d44ecc002801a62e2f4106f34106da23dc93d50e3e975a1d47510021835290649b7a4125109f656b6b0b5bd00b24d84ea1ba4e1ed49e61c526fb1011005131caee7ee0501e -result = valid -shared = 010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -curve = secp521r1 - -# tcId = 348 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b81040023038186000400a61eb994e28722c59b3c6007dfdf8b37893f6350f461b26a00e1a45104314aae9989da87e4facb2c4ef721185b7d96d9a45a28a102756501a1acc5d329a21bbf73010e8d0e12f5a9a40e0d59c90ce73043d39730aeadd3788e31d7c2bb62a1166161994664afa658ce2e60a13f45f27f914307c8d6f8d4ed16ab041b8f69908a62782f -result = valid -shared = 010000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff -curve = secp521r1 - -# tcId = 349 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b810400230381860004011dd497b30c73709906b164a9a79dc7f2a98c0148ed63016bb95243834fbcdf8eb74b0ff652d54f59f31aef51da6e8974d363655b1da138dc4de0f2a8d800f475ae0057bd4b84607400d863ffbf45a3cf58999ee24ba05e93eca7b0e4ae760eb1733559a45d15579d3370d716ffa3ec4bfdae418e32fb06138dfca213720a938577610e -result = valid -shared = 01ff00000000000000000000000000000000ffffffffffffffffffffffffffffffff0000000000000000000000000000000100000000000000000000000000000000 -curve = secp521r1 - -# tcId = 350 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b81040023038186000401283eb93fa369fe7012b647d21e0a97cf9950e5fbed819ef56158f20c8a9473a418eccbca4dc2b47f4cb6d322f917005859bf221e84ac9827cab82a801c627fb1ec0075c480cbafb352fcaf93baf23a1405fd81febe09729a908d1077e177dd8993d94b251a0d52652da3edb6fdf864e80cd51540e73d0b5107e3433576dcaa4e18db43 -result = valid -shared = 01ff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff -curve = secp521r1 - -# tcId = 351 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b81040023038186000400173beefe35ee868d497ff6601628f65ce18a1591f7e4a3a406622f3f508e2da68f101ed02febc38418c6ddfc26a5ec9848c42792463b1e945f9e167db34bdf2d660053070647aba7cd60eb295ab81a268a3903f393c5d28bbc5e022351c377cd84f02c19deb36442372cae1332e92f95ba60b6c852e0de0718e89d24e43cd479c9fb11 -result = valid -shared = 01ff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff -curve = secp521r1 - -# tcId = 352 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b810400230381860004009829cd5432687739ab6ae10af8ea73d2cb53b81ebb06b5961b7badc1676b3ef7b00454f7cde56774a01312d574a9193c1a5fe5336fbe62623ad9bf81143789f9f90012f955697ed578207197bf9aac3896521615dbacc8dc665d4f1715b08439f49c2aa6ed337023ffccc5075a85944936826db92f919737ca3afeadba1847084bdef7 -result = valid -shared = 01ff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff00010000 -curve = secp521r1 - -# tcId = 353 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b8104002303818600040126e3c959cd41120bb83693b1d6a034b385137c1bb3213b776122fed96056e329885718a73bee639c0ba4b68818682f498ce5496925002bd7652516405fcc4fecad0073a9c6e3b0c694bf7cc8ccbbd09800e81e3548ba44a0c2381cef0b07bf702a19054bb5d717a1b79294609cbdafd4e2018064f7b2c4c204d818eb7ce521c3268ce5 -result = valid -shared = 01ffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff8000004000001 -curve = secp521r1 - -# tcId = 354 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b8104002303818600040153dc481ab3c5dc8decd24ceaee1bec77f59f21f7f31c19538af047d281ac9e2567933fd3d21096b185d4098919571931bb9b0be7197995e2fbaf21c8a10007ade001ad69f08fcae164390be826256b50fae47502ce0e9ca46af0c490cb4033c886f88661a99ff2bd3c9c8e7da30faf2b4c769edc5831810ac05054c97e41063f496e1f -result = valid -shared = 01ffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff -curve = secp521r1 - -# tcId = 355 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b81040023038186000401f586611c87150288c3e86116c5db94a26718978829d701ddac05e9b0ce22dee4b18e95f60cba783ed3384da373deaefc57b8265d3a34eeb458bf24b9d82be32819008456e0f1d80492ef0078cc246d32fc7c7fb6720b4d458b51b2098d35746752b0ef0345bd0d342dfee6dd2f12ed12b34bd95d058c2811fd479d2dde32180e6c9ef2 -result = valid -shared = 01ffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc000000080000002 -curve = secp521r1 - -# tcId = 356 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b810400230381860004015edc87fd499a73eabffd14d2b6a70a8fb69b6a39d0d9c4dda2337b53cc72e49a9e3d5a2d9e8930cfa11852dac33443227fba6684bd74732e6879884b6ef9dae98f010eeb8d2e3360ea9726628085268af3f2a05ad41235d0a892098bd661b636f7ef0a820282906eda3f1ff1980b98fb5937228e9edcd6332e3641216c7307e7f3f452 -result = valid -shared = 01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd -curve = secp521r1 - -# tcId = 357 -# edge case for shared secret -private = 0a2b6442a37f8a3759d2cb91df5eca75af6b89e27baf2f6cbf971dee5058ffa9d8dac805c7bc72f3718489d6a9cb2787af8c93a17ddeb1a19211ab23604d47b7646 -public = 30819b301006072a8648ce3d020106052b8104002303818600040131b43002f7e687eec1ecf6a253c2ccc9e48f04d86fccd18fee0d2d22191f1ea539c40d521970b4709dc03986f647e0e8bb3340cf8a3e643a3541035437cf25f01500b27a55ac45f0296f8c9656bcfd52b5cea9f4115c06e4c64319609847d45e92418400e7868672c0d3e6e5e6e004a7190476ed77cfc33ad19a4bd2c615ad9950f374 -result = valid -shared = 01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe -curve = secp521r1 - -# tcId = 358 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d20ec9fea6b577c10d26ca1bb446f40b299e648b1ad508aad068896fee3f8e614bc63054d5772bf01a65d412e0bcaa8e965d2f5d332d7f39f846d440ae001f4f87 -result = valid -shared = 0053bf137fee8922769f8d0fe279caa4dac9c6054ad0460995588a845d0a959e24bc0fc2391a2b92f7bd400f50a11a9db37f07bef7fa8dad2a903fcf534abc8736f7 -curve = secp521r1 - -# tcId = 359 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b8104002303818600040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010010e59be93c4f269c0269c79e2afd65d6aeaa9b701eacc194fb3ee03df47849bf550ec636ebee0ddd4a16f1cd9406605af38f584567770e3f272d688c832e843564 -result = valid -shared = 01c95ac417c90a520149b29105cdab36f528a23efb5621520dbdafea95a7d43499c4c8be02cd1c2de000da18104fa84a1e9ece6386f0e0efa5234a24595d7c4c96f4 -curve = secp521r1 - -# tcId = 360 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200d9254fdf800496acb33790b103c5ee9fac12832fe546c632225b0f7fce3da4574b1a879b623d722fa8fc34d5fc2a8731aad691a9a8bb8b554c95a051d6aa505acf -result = valid -shared = 01b47ec41e3a5abd9dd9808fc04d9078cbed72b9eba98d3c1ded70a29938f0efd5a27a7113ff721f122cb17411de307a355c685074f5766b6d1a033d2fa188c945b6 -curve = secp521r1 - -# tcId = 361 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000005f880f50ec94bfac6658fa2fce05945c6a36b266407b6fbd5437a83e2f2f9b9c50a734872e48e70df65457f13e47d06c6b8b29f4735acf105ea63e051904d18aea -result = valid -shared = 013aefe3245728a08c904fe7d61cd9c2fdac63f29cf664d8f161bebacb93f8a710e9692f9689480ad498de00f00061e40e46e76e4754c1130ef4217a58933e0b1dc6 -curve = secp521r1 - -# tcId = 362 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b810400230381860004000000ffffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff00000000000000ffffffffffffff000000000000010000000000000000f33ffc45da3eac1baab727ab8fd355cfa134c42047d55262651654fb50df7e9a5a75f179c8c86c4388213b5687dc43dfebb37f30128703c44ccd5c3284833b8717 -result = valid -shared = 0168df272d53e3161926168c4aeab5f355b8d2a6689cfd567f2b6eb2011a18c775ac2a21f8dd497f6957217020b3b1afcb7021f24fccc2523be76a2bff44596e5a14 -curve = secp521r1 - -# tcId = 363 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000400003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00000003fffffff00cd2839d857b4699f5c8e8a0194786e26a862f086b4ba80746ae5225ed3aa68f96b7aaec55225830bb98f52d75221141897ba49d7a31ebbf0b6d7d31352e5266190 -result = valid -shared = 013db1b9241b23d33860d32dec37a79e4546a41afdfdd9c438d04e1f8b566ac8d9d3f572c293e96943722a4ee290e113fffaa82a61867d9ca28d349982354c9b256f -curve = secp521r1 - -# tcId = 364 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b810400230381860004010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000813d9829119f42ffa95fea8ba9e81e4cd6a6ca97fb0778e12e5f5dfe35201dd4cca8eca0d2e395555997041381e6ac1f18ddf4c74e0b6e9041cfdca1d1c103091 -result = valid -shared = 01d2bbe9f754584ebbc7c7ad74136d1c8a144948948aa8be49989dd9b4c514db2e2ab1e0713ad1699f632dd2cea53da218ed549f030a113e282fd9e3be462d9aba84 -curve = secp521r1 - -# tcId = 365 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b810400230381860004010000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff0000003ffffff00878ad597d290db2cf660594aeed0f9b7c8dd68451d2d1b2cbc816b1ec4f35465b3964aff2edf1255163f5fca580132f85cade2887a017e7cd0b37196ad85221107 -result = valid -shared = 000f37a2e2caef54fff4126c0fa96e7c47f0cad74626ef91e589e12d2e1e8c221be7295be9dc2712b87bb0aa0f5880b738bc1242f2ba773bf9eb2a54e3c1ca4758d7 -curve = secp521r1 - -# tcId = 366 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ff00000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000000000000010000000000000000000000000000000000b5e1191b449fa1ebdbd677daa48f90e2d1d6c058c877087cafd9364d99dbb283c68402e6e6c5f5411b2ed42824d8b280ceb910aba6847883a7e3780e2132af41c1 -result = valid -shared = 017aeb254d9c8c8ee06215ff33811357da73bf7f6dd6d7f8f176d62c065a88a9005f680c630e9f2763585ea2ee76b6e4ab45e673f814ebfa95947c0c63fb24fa6e9b -curve = secp521r1 - -# tcId = 367 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff0000000000000000ffffffffffffffff00207513d615656a1cc7505c18aa21b08e2b1d5a841de0816cc29c004efdb2d902ac1a7bb05e20722b576b64a3ddf4d2486421ac706bf4a424f252386368a5340fb6 -result = valid -shared = 0061bed42248a37b4625ef04c4f9c7ef69ee3c6f9503378351fcab1b8ce1343206997eec1b88449eb6f7355711ea1a818a486ee30a24126241a7e2289267cf5dd61f -curve = secp521r1 - -# tcId = 368 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffffff001fe800c50e54012b75a33e4be7d07c8d60f29680a395e951a6a31c5096b0ea928fc2cbf327dd784dc0a7ca46ea73992b758b5641364b4aba39e93798a4d925a008 -result = valid -shared = 001067d9104e296ef42b944587de11b10df05d2d959ed44cac9e7ef1c7a05d90819c43bc79c7397918f957cc98db931763bbeb1bdfc35865e8a359a013f13d60c433 -curve = secp521r1 - -# tcId = 369 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff00010000008dd18a1f5e482140be79bb65a21ad60c8987e532c84345f0135affd46ec71ef02b1ca3ad56f301d955fa306c122d441d6fedcf8b855ef256350bf69d23a7207ad9 -result = valid -shared = 00b779d83035cf7bb0bb04c7b2f46d08f6791f0d1542c9bcce7250e772b12ad8e38fce1d2b063a06f0fa3a1b072dd976f5f8542979903075162f1f5c6ba3b76cc45d -curve = secp521r1 - -# tcId = 370 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff8000003ffffff0000007fffffe000000ffffffc000001ffffff800000400000100566203dd325a081c4441f001f780365874fd3d0c9bc47227481afe76a93ae1bfde63af972203abfe22c63b80e83f7cc2184c3cb8cfd0152c54324c4759fd1f9a50 -result = valid -shared = 01afe5d23733728b79c743933b9ba7dfec5ed19b7737e393908a1d000918aa795d1ce0ad533983d018f927b35d2af6463356573f387febd75911a49486202ca69d3a -curve = secp521r1 - -# tcId = 371 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff0001fffc0007fff00b11c668fbd549f36889f7b63434051da26f15705839136b1b14a09152d7a182ea7806c35478a32d3aa3c9c1627a61519ebec71b36fa77449025b8829e27f307834 -result = valid -shared = 019612aeb386febb1a28096fe5b2f682dead02389785225b80a27df439510d08349a193839525f248b7f9bcabfd3dc8da8cc1724022299b7b5e72399d89464b82e44 -curve = secp521r1 - -# tcId = 372 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc00000007fffffff00000001fffffffc00000008000000200aa75efc0a8daac1d73f32c9c552414bccf44af8e74331b47439e7dcc49a135b3ee61e9f69717d89b4bba3567a195aeda13fbec634bf2984b5ec6b6f80f5978ed5a -result = valid -shared = 00570673f87adcef49c1f011e8b9f1e11f7fd3b3c93114d08d3f515aa4a895a6c701c523063bdc13ad1db0a54f6e7b476fe10db2070441befc58c8cff3c08ef76e59 -curve = secp521r1 - -# tcId = 373 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0010e59be93c4f269c0269c79e2afd65d6aeaa9b701eacc194fb3ee03df47849bf550ec636ebee0ddd4a16f1cd9406605af38f584567770e3f272d688c832e843564 -result = valid -shared = 0016aaf228b0aec190d4e4e5b8138ff9cc46d705da1bf002901c6ab420f59314d5b641712b14ef3e4fb125652c47888676804fb5575b741a8408c5625bfccff4fdda -curve = secp521r1 - -# tcId = 374 -# edge cases for ephemeral key -private = 12bc15cf3981eab6102c39f9a925aa130763d01ed6edaf14306eb0a14dd75dff504070def7b88d8b165082f69992de0ffa5ee922cb3ab39917da8524cac73f0a09c -public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00d9254fdf800496acb33790b103c5ee9fac12832fe546c632225b0f7fce3da4574b1a879b623d722fa8fc34d5fc2a8731aad691a9a8bb8b554c95a051d6aa505acf -result = valid -shared = 00a5d6dfda2b269f4ab895a41c3b71b6ba10d5c9f0d9b3e730275345e4721594abfd39464c227716ded8ef3e60bb1ca0b551716e3f6eebb48d5ce8e0ab58cb1b73c9 -curve = secp521r1 - -# tcId = 375 -# edge case private key -private = 3 -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 00f2246431b597930f2eae61e9aabbd39f8f6ae97c3cf2521a6aeecedda10b5ef5f3b2eb3a8906d02f51d244710aa9e19cc0be21db920132be1c91deb85e466c28df -curve = secp521r1 - -# tcId = 376 -# edge case private key -private = 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 00347c51f587c726070bdeb9173d0a547427ead3f2c8de62d9ecc3013285f645d220931520bcef85d08cfb6786045745fbfbfb1924c44a89d06676131a965677272a -curve = secp521r1 - -# tcId = 377 -# edge case private key -private = 200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 01c41dc4437c2f2b94a940711b3a691723397a1f83d6bc0c67ddc7a657160925c7f85bb4eb3842b60b2610ddb7c0b8676267710e58359a8750843c6d8e25d48d1cd9 -curve = secp521r1 - -# tcId = 378 -# edge case private key -private = 0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 006a239cdb7a783840658d5f314bfe5c51e806a4bf1236f8421265bcc503c673eb16c5c2b38b5717fa04ee7dbcdeb15c871711507abb7557a8a8c7b3250141e854d5 -curve = secp521r1 - -# tcId = 379 -# edge case private key -private = 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 0112dbf9713aadd478e4f2ebcb058f05b512b1959c7da1994f851f373ce8c341d39c6843373f6fe559905953e1147640159437953c571961c09bad157a8e1a5bf476 -curve = secp521r1 - -# tcId = 380 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47adbb6fb71e91386409 -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 003eca2210c8623105085aa284d119f3d716730595c6291aa89bf32a95e8a5fdc64f3d76e92494a43a9dced12d05b6dca4ffe649b32ac12cb0202e702dc83a2cb277 -curve = secp521r1 - -# tcId = 381 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb5fb71e91386409 -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 01c4cae9fbfdd45de51d8525e8447a7553c35cf358f1346f1d79666887bb749a3ba0de62e1866b47a447d53b6f1ca5a33ec94507e2cfb65544f5a1195fc6b4dc5810 -curve = secp521r1 - -# tcId = 382 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb67b71e91386409 -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 008073b4796e748f3d0de5e85b22aed463f1a6aecdb336bc287b50d139e3591ef5f86b78c3f6051467755f059f295d758075347d657aaae02383838bb96071eacbd4 -curve = secp521r1 - -# tcId = 383 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71d91386409 -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 01f11ff8983792d4a790d0de4b56d078b9033ad6318a440e8119342937cc48a39375150ab2cf98273b0fe35d5a3af5d84322a685e89f2cb378a99b9b7bac87e44952 -curve = secp521r1 - -# tcId = 384 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e9138631b -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 00286cefaaf38ca4c6657eb9b187d8614d51775fd71c1a79b4c0ef1a0d4ce72b6f5b2bc854a4e78283530942a3f4fd2a8586d5ea51513c89d3d29de5de06321e118e -curve = secp521r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 385 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e9138639b -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 014790de14c481f1336fcb7d33a8bf8e23eb594cc48608e9edfe0e326e106b67e7eaa3f04ec9985599178f632a5ee6419e11217060e9fcd5958a43882bf8cd3be6ba -curve = secp521r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 386 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e913863db -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 01ae775dbc4096a3aea7977b1a0af4b2830ecf9ca927a6247fba4cccb46b3f71d0e7abb8dda72d1c1ee7bb5b875b4773cc8df40f732819c4147da330775d1742ea35 -curve = secp521r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 387 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e913863fb -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 01979fb05e068a12a3f20cfdfb9eaee9f22b356edcc7655383ed38124b86814f86a6f2216a34f3fc2299d403ee42408f95d08c5c6cd11db72cbf299a4a3c2545be25 -curve = secp521r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 388 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386403 -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 0197ebe26798bf67f06ff0282773af75115531f41d94c093d87481b76bef707bc222f2d6672f84a00fa20c5ed27027ab4006b68d93ee2151016c9ddbe014346272e2 -curve = secp521r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 389 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386406 -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 00f2246431b597930f2eae61e9aabbd39f8f6ae97c3cf2521a6aeecedda10b5ef5f3b2eb3a8906d02f51d244710aa9e19cc0be21db920132be1c91deb85e466c28df -curve = secp521r1 - -# tcId = 390 -# edge case private key -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386407 -public = 30819b301006072a8648ce3d020106052b81040023038186000401ad5043591dbe81657fe3d1c3d7a516606ad9d320a35fce8aaec8a950fb53f95388f3fc48be998e99334ad9e9234cded14471fe86caccaa07d058ee8771733ac3b900854de36366590b9ee4d0370ea6b00f7ebd8156ccf14e99f1a5344a9b4964fbb8348b081a8840c6b64be77997ad8bebfea5e7d9f7a6a7fa6d7655c50b2b7835f314 -result = valid -shared = 01c168314cdc85757ade34a52a9e5379ffa5968f084b7e404939a8033a0fc698e26211754b9b2c04cf8a1420abe6e986ef1a238bbb91dd402b72e0ed50a876f1a83e -curve = secp521r1 -# The private key has a special value. Implementations using addition -# subtraction chains for the point multiplication may get the point at infinity -# as an intermediate result. See CVE_2017_10176 - -# tcId = 391 -# CVE-2017-10176: Issue with elliptic curve addition -private = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e913863f7 -public = 30819b301006072a8648ce3d020106052b81040023038186000400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650 -result = valid -shared = 01bc33425e72a12779eacb2edcc5b63d1281f7e86dbc7bf99a7abd0cfe367de4666d6edbb8525bffe5222f0702c3096dec0884ce572f5a15c423fdf44d01dd99c61d -curve = secp521r1 -# This test vector leads to an EC point multiplication where an intermediate -# result can be the point at infinity, if addition-subtraction chains are used -# to speed up the point multiplication. - -# tcId = 392 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp521r1 - -# tcId = 393 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp521r1 - -# tcId = 394 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe -result = invalid -shared = -curve = secp521r1 - -# tcId = 395 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -result = invalid -shared = -curve = secp521r1 - -# tcId = 396 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp521r1 - -# tcId = 397 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp521r1 - -# tcId = 398 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe -result = invalid -shared = -curve = secp521r1 - -# tcId = 399 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -result = invalid -shared = -curve = secp521r1 - -# tcId = 400 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp521r1 - -# tcId = 401 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp521r1 - -# tcId = 402 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe -result = invalid -shared = -curve = secp521r1 - -# tcId = 403 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000401fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -result = invalid -shared = -curve = secp521r1 - -# tcId = 404 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp521r1 - -# tcId = 405 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 -result = invalid -shared = -curve = secp521r1 - -# tcId = 406 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe -result = invalid -shared = -curve = secp521r1 - -# tcId = 407 -# point is not on curve -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 30819b301006072a8648ce3d020106052b81040023038186000401ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -result = invalid -shared = -curve = secp521r1 - -# tcId = 408 -private = 1c6cafb74e2a50c82c7a63d13294bfea113f271e01ae305f79af43203cd32115ecdf2fee5fedba2ad3126783db0c3c4d3029a14369e8f80dbd15d512f13e51c503c -public = 3015301006072a8648ce3d020106052b81040023030100 -result = invalid -shared = -curve = secp521r1 - -# tcId = 409 -# public point not on curve -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30819b301006072a8648ce3d020106052b81040023038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fe1 -result = invalid -shared = -curve = secp521r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 410 -# public point = (0,0) -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30819b301006072a8648ce3d020106052b810400230381860004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 -result = invalid -shared = -curve = secp521r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 411 -# order = -# -6864797660130609714981900799081393217269435300143305409394463459185543183397655394245057746333217197532963996371363321113864768612440380340372808892707005449 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd166500242fe000000000000000000000000000000000000000000000000000000000000000005ae79787c40d069948033feb708f65a2fc44a36477663b851449048e16ec79bf7020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = invalid -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 412 -# order = 0 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 308202043082017706072a8648ce3d02013082016a020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650020100020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = invalid -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 413 -# order = 1 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 308202043082017706072a8648ce3d02013082016a020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650020101020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = acceptable -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 414 -# order = -# 1598335257761788022467377781654101148543282249044465229239888363328190330275719844327554513312228302828260696579553960150541916632196023208175974174 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820241308201b406072a8648ce3d0201308201a7020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650023e01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = acceptable -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# The order of the public key has been modified. If this order is used in a -# cryptographic primitive instead of the correct order then private keys may -# leak. E.g. ECDHC in BC 1.52 suffered from this. -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 415 -# generator = (0,0) -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f0004818504000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = acceptable -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 416 -# generator not on curve -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16652024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = acceptable -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 417 -# cofactor = -1 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e913864090201ff038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = invalid -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 418 -# cofactor = 0 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020100038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = invalid -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 419 -# cofactor = 2 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820245308201b806072a8648ce3d0201308201ab020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020102038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = acceptable -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 420 -# cofactor = -# 6864797660130609714981900799081393217269435300143305409394463459185543183397655394245057746333217197532963996371363321113864768612440380340372808892707005449 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820286308201f906072a8648ce3d0201308201ec020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = invalid -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 421 -# cofactor = None -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820242308201b506072a8648ce3d0201308201a8020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff308187044201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f000481850400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = acceptable -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 422 -# modified prime -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820244308201b706072a8648ce3d0201308201aa020101304d06072a8648ce3d0101024201e99d17d498f3c68ed8e50430ec4f36c14dbeeaf7652e985636bf0548ffb981e9e011607fd0059cd4fe51e882f19a3839ebe7f1d7376cb761431b214ed76970cc0130818604411662e82b670c3971271afbcf13b0c93eb24115089ad167a9c940fab700467e161fee9f802ffa632b01ae177d0e65c7c614180e28c893489ebce4deb128968f33fb044151953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f0004818504000000000000000000000000000000000000000000000a14517cc6b91f8000000000000000000000000000000000000000000000000000000000000000000000032c006b0f530bec5bed532357d436727699f0e3c5b9366f1a435be640b97cd43d937655b1f157c7d0c7df25011fef7c3ab7d8e556e6125b59b847fcdd89a4051796a797024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e913864090201010381860004000000000000000000000000000000000000000000000a14517cc6b91f8000000000000000000000000000000000000000000000000000000000000000000000032c006b0f530bec5bed532357d436727699f0e3c5b9366f1a435be640b97cd43d937655b1f157c7d0c7df25011fef7c3ab7d8e556e6125b59b847fcdd89a4051796a797 -result = invalid -shared = 00ebef6771455911ee573c183e990f7086650f9bafdb722c896751bd2c0f87959c78a39382d10fdfb46fd3515c8feb590943dd79778b13adbc7f670ba2a009753483 -curve = secp521r1 -# The modulus of the public key has been modified. The public point of the -# public key has been chosen so that it is both a point on both the curve of the -# modified public key and the private key. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 423 -# using secp224r1 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 304e301006072a8648ce3d020106052b81040021033a0004074f56dc2ea648ef89c3b72e23bbd2da36f60243e4d2067b70604af1c2165cec2f86603d60c8a611d5b84ba3d91dfe1a480825bcc4af3bcf -result = invalid -shared = -curve = secp521r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 424 -# using secp256r1 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 3059301306072a8648ce3d020106082a8648ce3d03010703420004cbf6606595a3ee50f9fceaa2798c2740c82540516b4e5a7d361ff24e9dd15364e5408b2e679f9d5310d1f6893b36ce16b4a507509175fcb52aea53b781556b39 -result = invalid -shared = -curve = secp521r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 425 -# using secp256k1 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 3056301006072a8648ce3d020106052b8104000a03420004a1263e75b87ae0937060ff1472f330ee55cdf8f4329d6284a9ebfbcc856c11684225e72cbebff41e54fb6f00e11afe53a17937bedbf2df787f8ef9584f775838 -result = invalid -shared = -curve = secp521r1 -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. - -# tcId = 426 -# a = 0 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 308202033082017606072a8648ce3d020130820169020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3046040100044109a88e6f050cfefa0b49fac45689b6b93ad4fa3b65db7d2f4cb31b67fe056a100066dd80dc5f785d27f82e3369eb22ab2c5729a9e5d9906a1dc31e02f84026484a0481850400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020101038186000400c2a43ac3742b09e006c2dfc9c36444d7e699f567a73f674ce257330b312dd7a8a04fbe92d1d9acbcc65f6184711ada5bf39f6e11e0cbde98f1640d099eb90dfce701802d7755c2fe3180848d4a70b170096ec64eba99b478ba7f6fc129b0566279b8e1ab7962fa912fc4ae53b5202a03520617843dc63e5cb5f956ec7f1453d0865fdf -result = acceptable -shared = 00fb8542487cbd45e609632f681db6b48fdabed9b97a2467a34205eadadad9dedb54a2a647d23dca68e929a2041888b091f4bb4023a0517be669a6c9f9c847ef89de -curve = secp521r1 -# A parameter that is typically not used for ECDH has been modified. Sometimes -# libraries ignore small differences between public and private key. For -# example, a library might ignore an incorrect cofactor in the public key. We -# consider ignoring such changes as acceptable as long as these differences do -# not change the outcome of the ECDH computation, i.e. as long as the -# computation is done on the curve from the private key. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 427 -# public key of order 3 -private = 1396a99a337821d8c92d75f562793c70afa4074ae5e6dad2bd2cc6aea8f36f6c45ddde73931440d229f340093ab8c6fb3f20d20999a37371fe92104692136d019b7 -public = 30820244308201b706072a8648ce3d0201308201aa020101304d06072a8648ce3d0101024201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff30818604417af4d9fe89294169daf9b160f39a91e120a861b73b3b76e7dc745fb0db95f971ee0ccd362449d3802622e716c7a8252adbdaddbccd2c623bb0c97f437490317df2044111a7799ad8e7166fa74133f989d562e50415238e23c826974fdfa7a72251416b496215439ba73718ccb0616ff9f843550900acb6af5c15d30a7e92c59c1a638c0c0481850401583fa37fa9816eb3cfdcf0dea0b50d09bfd22bff366051f05de03daa4efdbd85a01af7e490d24ad2f1d1f58b1f8f0619ac48c2f46cd4497de599c1aa546b6408d2006bc40579920af44644406cce075c2f0d71534b5a090a208d1324cc360932b1a5a98a3c3144c3b713ce0625365a926c2fc43f578a15e82cb6eb7923ce2b4ddad062024201fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409020101038186000401583fa37fa9816eb3cfdcf0dea0b50d09bfd22bff366051f05de03daa4efdbd85a01af7e490d24ad2f1d1f58b1f8f0619ac48c2f46cd4497de599c1aa546b6408d201943bfa866df50bb9bbbf9331f8a3d0f28eacb4a5f6f5df72ecdb33c9f6cd4e5a5675c3cebb3c48ec31f9dac9a56d93d03bc0a875ea17d3491486dc31d4b2252f9d -result = invalid -shared = 01bca56f9c0ade0485006f1bcfc7a95a95dcad50e8768483cf97de9ecc89de4f0abae22895b3deb6b088bd7f2596fd7d1c0d5ea84789d3e110e1e4c3de75b0b92750 -curve = secp521r1 -# The vector contains a weak public key. The curve is not a named curve, the -# public key point has order 3 and has been chosen to be on the same curve as -# the private key. This test vector is used to check ECC implementations for -# missing steps in the verification of the public key. -# The public key has been modified and is invalid. An implementation should -# always check whether the public key is valid and on the same curve as the -# private key. The test vector includes the shared secret computed with the -# original public key if the public point is on the curve of the private key. -# Generating a shared secret other than the one with the original key likely -# indicates that the bug is exploitable. -# The public key does not use a named curve. RFC 3279 allows to encode such -# curves by explicitly encoding, the parameters of the curve equation, modulus, -# generator, order and cofactor. However, many crypto libraries only support -# named curves. Modifying some of the EC parameters and encoding the -# corresponding public key as an unnamed curve is a potential attack vector. - -# tcId = 428 -# Public key uses wrong curve: secp224r1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 304e301006072a8648ce3d020106052b81040021033a0004af6dd5b71a8c1cf921e36854ae091aaa589d337e740e8579f816eb9e36b03eec5cf956d0fdd2fc1687335507fc1c4a5717d3b5b8ea8340d1 -result = invalid -shared = -curve = secp521r1 - -# tcId = 429 -# Public key uses wrong curve: secp256r1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 3059301306072a8648ce3d020106082a8648ce3d0301070342000453366db79b320781936df61bb55d4499949d813ee5abaa5dda70da4f97f68228ccc69d7cd0b7266cfc28d0dcafdf3e83738cc611acb08f8b896c4ecf82dd65ae -result = invalid -shared = -curve = secp521r1 - -# tcId = 430 -# Public key uses wrong curve: secp384r1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 3076301006072a8648ce3d020106052b8104002203620004aa45c13ce3cfea8538422712903edc0ce56df74ede0776e843555a786f9738de1943dffd729addfd4772169751d7765a45b5bb540a47d198f4c8c7c21e67560c1e12f70b64520109bb8858a3f8d6bb4012003431db0778633313fdb9464c47ec -result = invalid -shared = -curve = secp521r1 - -# tcId = 431 -# Public key uses wrong curve: secp256k1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 3056301006072a8648ce3d020106052b8104000a0342000475e01a1555380be188d69aac340a4675e4a6f73d63976a1075249827d8ecc2a31e65ed1eb591954e33a38f68ef8aa6c930229d8755e53257602b3eaa87de6f02 -result = invalid -shared = -curve = secp521r1 - -# tcId = 432 -# Public key uses wrong curve: brainpoolP224r1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 3052301406072a8648ce3d020106092b2403030208010105033a0004905a06d5bc093697155aaff67305976a769b904d8db9573c4be361626def2ffe1d5ec14462c02e5ffb24fb3edb2b6c77a5cfee2492db757b -result = invalid -shared = -curve = secp521r1 - -# tcId = 433 -# Public key uses wrong curve: brainpoolP256r1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 305a301406072a8648ce3d020106092b2403030208010107034200042b87df1b6a5cbc4c4a184b7eec9b6c0483f7b80e6477b29649630c37481876bb0e3423f7a00d469320b7e60c88370979064efb9ceb8b387aa87a7c6941ccd9ed -result = invalid -shared = -curve = secp521r1 - -# tcId = 434 -# Public key uses wrong curve: brainpoolP320r1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 306a301406072a8648ce3d020106092b24030302080101090352000470df62394ee036eefbc8ef11a9a5f3a8af659016f29e7125e52cfda0a74e52c7b21d18ac4375f5e4164c5338fa2f545a3fb2022f0e0686d5b4882958f72b1bb626e37093e3f19673968c237823327fd6 -result = invalid -shared = -curve = secp521r1 - -# tcId = 435 -# Public key uses wrong curve: brainpoolP384r1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 307a301406072a8648ce3d020106092b240303020801010b03620004808dc7b1c6d3ec470a7fe5d6144c9c3a8c92b116103aa2edbfce0b2c827312eebcd1350d09a739eac901af341487861b195270f671e0a758deb23222db4fe7983d42a785b35fd158344cd6483c4da5b409e77d0a284dfa9c3e0d91a4d275fce9 -result = invalid -shared = -curve = secp521r1 - -# tcId = 436 -# Public key uses wrong curve: brainpoolP512r1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 30819b301406072a8648ce3d020106092b240303020801010d0381820004aa11b560dc1e572f2374e5869210304d66d95b1d8ce40940157f5f5b4a7dc8a340f7c305d6bea289f5c430eb888e2a03528336aaf4680d9d153cd162e2229df330425025df2625b147568927f6acf704e4936f8989ff9d44f33ee22196e70dfd8711e8934d8d42abb4b67afcfee213c3ad5e5c83fcf4283d253d6c5c0e581970 -result = invalid -shared = -curve = secp521r1 - -# tcId = 437 -# Public key uses wrong curve: brainpoolP224t1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 3052301406072a8648ce3d020106092b2403030208010106033a00048d7a746de095728a8d83219e587040cb6e794d088ab6eab426638202579850b0f235edcf4eb8adcb51bf41878f6b71a1f2d4101022964340 -result = invalid -shared = -curve = secp521r1 - -# tcId = 438 -# Public key uses wrong curve: brainpoolP256t1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 305a301406072a8648ce3d020106092b24030302080101080342000424ad316bf41e4102dd7ae16311b64464df2d13ea68a11dd27a4445ed900962180ff8c627ed73f0c667863ee3a671e6ed1fa2781b51a229ee2cd21fbf69437d60 -result = invalid -shared = -curve = secp521r1 - -# tcId = 439 -# Public key uses wrong curve: brainpoolP320t1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 306a301406072a8648ce3d020106092b240303020801010a03520004548ce4997cc618800d3834dd4b3346e4559be066ab5d0cecd7123c4de940c168fecd3bae067fe3fc7aee875c9da0a86932f0779f42344470860c22dbc6f305eab792fc0874157e175c7d3c4d3bf54c4b -result = invalid -shared = -curve = secp521r1 - -# tcId = 440 -# Public key uses wrong curve: brainpoolP384t1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 307a301406072a8648ce3d020106092b240303020801010c036200044fc2b35e3019a57a8ca6efe2ec1f72072c599a78c2725f7cfc2d9edf220b5f6abdb0c0d8d160182de451e26bcbb4e8c18726263e21ce56fb4bafaa1f186c745e2c8392ef8c5a1c03f5462ebbbcde0ffcc31e9a0b3e898ddb9c1c79e420fd7a35 -result = invalid -shared = -curve = secp521r1 - -# tcId = 441 -# Public key uses wrong curve: brainpoolP512t1 -private = 2b0d77cd5c47890a52612fc9b38d804266b9784abca2b94de99bdc67475aecc2abc31e72a6dada0cf1d4d776b002c8d2dbd601ab8a0cae4157370846b20e8dd657 -public = 30819b301406072a8648ce3d020106092b240303020801010e03818200047122f743122681ac73b0d611af86847d8bec654cf99e7eaf5d4f684e4078a8e61dc6d07e831ad02cd40d41dbdb6b0e877d960b78a5ac34c1e6ce7c483503d6de2eaddeffbfb3f144d29d13535a05815934186707146e45f64476bbdbc8645be973270a4c5e35d70ffd5eab2f08d1fb04762bc8aa80e999da14f744be9ff8c923 -result = invalid -shared = -curve = secp521r1 - -# tcId = 442 -# invalid public key -private = 1c1fb2cac9087a3397814b198a80e2ea5b437aac1b41e8a2bd8fef8700e4812aa817320e6e1e3865bd2cf75e43a78be5c27ff1c4b5f5019333cb37d0c9c4ff3ec61 -public = 3058301006072a8648ce3d020106052b810400230344000200429cb431c18f5f4e4e502f74214e6ac5ec2c3f86b830bac24de95feae142ca7d9aa8aa5b34f55af4b2848f2e6ba6df4c3ecd401a1d7b2a8287a332b202196fadbb -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 443 -# public key is a low order point on twist -private = 6619644155c449758f65e2dfe7ba89dee1e090c1d68b6342f43cb1ac000090a7f0408138c1de217990bb015cd1d95f1d884cf659f7324f2fe21eeba63ea988aacd -public = 3058301006072a8648ce3d020106052b81040023034400020108cbf3c9bf8e42135d87127556831076d84d5e549e645afda8a099249231b59b6c508dee4e91c9a543e90ebc82613f86cb1290e29102a0f2fdeb57bf4193fb4639 -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 444 -# public key is a low order point on twist -private = 0a257d97aa4e5195e2919c147c1639bb0da0cce479a036489006b7b8e7e885096066e5adc8fe7c45940c5a6b94d5065b966a45f099a0cecfe9cce1b3e99dca479f2 -public = 3058301006072a8648ce3d020106052b8104002303440003011f2dca6b686e2141c11822e2d5439261583ce98cd6c4041c6d1be9e17dee33ea4a65c3e8cca6de50a30a39c788a585f1188bef0680a9c0264b3c8dcf494d0eb948 -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 445 -# public key is a low order point on twist -private = 0a257d97aa4e5195e2919c147c1639bb0da0cce479a036489006b7b8e7e885096066e5adc8fe7c45940c5a6b94d5065b966a45f099a0cecfe9cce1b3e99dca479f3 -public = 3058301006072a8648ce3d020106052b8104002303440002011f2dca6b686e2141c11822e2d5439261583ce98cd6c4041c6d1be9e17dee33ea4a65c3e8cca6de50a30a39c788a585f1188bef0680a9c0264b3c8dcf494d0eb948 -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 446 -# public key is a low order point on twist -private = 6619644155c449758f65e2dfe7ba89dee1e090c1d68b6342f43cb1ac000090a7f0408138c1de217990bb015cd1d95f1d884cf659f7324f2fe21eeba63ea988aacc -public = 3058301006072a8648ce3d020106052b81040023034400030108cbf3c9bf8e42135d87127556831076d84d5e549e645afda8a099249231b59b6c508dee4e91c9a543e90ebc82613f86cb1290e29102a0f2fdeb57bf4193fb4639 -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 447 -# public key is a low order point on twist -private = 2a35258787f91ad0bd3432c3022e4d3ed349c8768a7e7caa1836022fc0c89a9073f6ce14d0990d5b7bb413061c7160e7bd566a5c89f14901b2cc19f1ad531f41e2 -public = 3058301006072a8648ce3d020106052b81040023034400020009cc73141cf1843d2b2c95dc5cbc4d615c6da4814c1c7208615d8e78c7a8666aba1852faaa45a45d32bd0fde6ea78f262a96bf1e02949cea48c33c695103683048 -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 448 -# public key is a low order point on twist -private = 1afe5c77a626161fb2c25964c7895b9fff787099db83f077f05a4bfa320fb61f9315bb44d3fb9dd72225d9d993a18df82ac53fb4a5f86b23cb650e5e4778066f677 -public = 3058301006072a8648ce3d020106052b81040023034400030047b9cf28e04b38796858545d60d6133fbdc20ede086e5d95111c982b8c276628235e536c075637a97c0a6c30d02b83b19e578203473eea16dfdeaeccb1dc0d9b19 -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 449 -# public key is a low order point on twist -private = 24ae709e1644e3087b52470c565268becbdbf97de59916763507d109c2e5b7c21727c64e9b560aa248d7bc9fe0ac95720d507263b7b2859b056ea165301cd599d5 -public = 3058301006072a8648ce3d020106052b810400230344000300c18410f5727ee0101a52ef95c0ac455cbc65bf9967f0a2c419aa0a291cabad569f2337e102d0a9128f4212dbf9fa9e5a8f14ca7f28e82977281facdd9ca7a92c78 -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 450 -# public key is a low order point on twist -private = 24ae709e1644e3087b52470c565268becbdbf97de59916763507d109c2e5b7c21727c64e9b560aa248d7bc9fe0ac95720d507263b7b2859b056ea165301cd599d6 -public = 3058301006072a8648ce3d020106052b810400230344000200c18410f5727ee0101a52ef95c0ac455cbc65bf9967f0a2c419aa0a291cabad569f2337e102d0a9128f4212dbf9fa9e5a8f14ca7f28e82977281facdd9ca7a92c78 -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 451 -# public key is a low order point on twist -private = 1afe5c77a626161fb2c25964c7895b9fff787099db83f077f05a4bfa320fb61f9315bb44d3fb9dd72225d9d993a18df82ac53fb4a5f86b23cb650e5e4778066f678 -public = 3058301006072a8648ce3d020106052b81040023034400020047b9cf28e04b38796858545d60d6133fbdc20ede086e5d95111c982b8c276628235e536c075637a97c0a6c30d02b83b19e578203473eea16dfdeaeccb1dc0d9b19 -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. - -# tcId = 452 -# public key is a low order point on twist -private = 2a35258787f91ad0bd3432c3022e4d3ed349c8768a7e7caa1836022fc0c89a9073f6ce14d0990d5b7bb413061c7160e7bd566a5c89f14901b2cc19f1ad531f41e1 -public = 3058301006072a8648ce3d020106052b81040023034400030009cc73141cf1843d2b2c95dc5cbc4d615c6da4814c1c7208615d8e78c7a8666aba1852faaa45a45d32bd0fde6ea78f262a96bf1e02949cea48c33c695103683048 -result = invalid -shared = -curve = secp521r1 -# The point in the public key is compressed. Not every library supports points -# in compressed format. -
diff --git a/util/convert_wycheproof.go b/util/convert_wycheproof.go index 0d1432a..530b31b 100644 --- a/util/convert_wycheproof.go +++ b/util/convert_wycheproof.go
@@ -121,17 +121,6 @@ return nil } -func isSupportedCurve(curve string) bool { - switch curve { - case "brainpoolP224r1", "brainpoolP224t1", "brainpoolP256r1", "brainpoolP256t1", "brainpoolP320r1", "brainpoolP320t1", "brainpoolP384r1", "brainpoolP384t1", "brainpoolP512r1", "brainpoolP512t1", "secp256k1": - return false - case "edwards25519", "curve25519", "secp224r1", "secp256r1", "secp384r1", "secp521r1": - return true - default: - panic("Unknown curve: " + curve) - } -} - func convertWycheproof(f io.Writer, jsonPath string) error { jsonData, err := ioutil.ReadFile(jsonPath) if err != nil { @@ -154,21 +143,6 @@ } for _, group := range w.TestGroups { - // Skip tests with unsupported curves. We filter these out at - // conversion time to avoid unnecessarily inflating - // crypto_test_data.cc. - groupCurve := group["curve"] - if groupCurve != nil && !isSupportedCurve(groupCurve.(string)) { - continue - } - if keyI, ok := group["key"]; ok { - if key, ok := keyI.(map[string]interface{}); ok { - if curve, ok := key["curve"]; ok && !isSupportedCurve(curve.(string)) { - continue - } - } - } - for _, k := range sortedKeys(group) { // Wycheproof files always include both keyPem and // keyDer. Skip keyPem as they contain newlines. We @@ -184,12 +158,6 @@ tests := group["tests"].([]interface{}) for _, testI := range tests { test := testI.(map[string]interface{}) - - curve := test["curve"] - // Skip tests with unsupported curves. - if curve != nil && !isSupportedCurve(curve.(string)) { - continue - } if _, err := fmt.Fprintf(f, "# tcId = %d\n", int(test["tcId"].(float64))); err != nil { return err } @@ -206,13 +174,6 @@ return err } } - // If the curve was only specified at the group level then copy it into - // each test. - if curve == nil && groupCurve != nil { - if err := printAttribute(f, "curve", groupCurve, false); err != nil { - return err - } - } if flags, ok := test["flags"]; ok { for _, flag := range flags.([]interface{}) { if note, ok := w.Notes[flag.(string)]; ok { @@ -237,7 +198,10 @@ "aes_gcm_test.json", "chacha20_poly1305_test.json", "dsa_test.json", - "ecdh_test.json", + "ecdh_secp224r1_test.json", + "ecdh_secp256r1_test.json", + "ecdh_secp384r1_test.json", + "ecdh_secp521r1_test.json", "ecdsa_secp224r1_sha224_test.json", "ecdsa_secp224r1_sha256_test.json", "ecdsa_secp256r1_sha256_test.json",