From 8e4cf060796582da2242851f23f9a21bc69057f3 Mon Sep 17 00:00:00 2001 From: Simon Warta Date: Wed, 24 Jan 2024 22:36:20 +0100 Subject: [PATCH 1/3] Add test vectors from Project Wycheproof --- Cargo.lock | 20 + packages/crypto/Cargo.toml | 1 + packages/crypto/testdata/wycheproof/README.md | 21 + .../ecdsa_secp256r1_sha256_test.json | 6502 +++++++++++++++ .../ecdsa_secp256r1_sha3_256_test.json | 6582 +++++++++++++++ .../ecdsa_secp256r1_sha3_512_test.json | 7246 +++++++++++++++++ .../ecdsa_secp256r1_sha512_test.json | 7206 ++++++++++++++++ packages/crypto/tests/wycheproof_secp256r1.rs | 394 + 8 files changed, 27972 insertions(+) create mode 100644 packages/crypto/testdata/wycheproof/README.md create mode 100644 packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha256_test.json create mode 100644 packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha3_256_test.json create mode 100644 packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha3_512_test.json create mode 100644 packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha512_test.json create mode 100644 packages/crypto/tests/wycheproof_secp256r1.rs diff --git a/Cargo.lock b/Cargo.lock index 2e33ce2f9e..75bea72e57 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -434,6 +434,7 @@ dependencies = [ "serde", "serde_json", "sha2 0.10.6", + "sha3", "thiserror", ] @@ -1342,6 +1343,15 @@ dependencies = [ "signature", ] +[[package]] +name = "keccak" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +dependencies = [ + "cpufeatures", +] + [[package]] name = "lazy_static" version = "1.4.0" @@ -2103,6 +2113,16 @@ dependencies = [ "digest 0.10.6", ] +[[package]] +name = "sha3" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" +dependencies = [ + "digest 0.10.6", + "keccak", +] + [[package]] name = "shared-buffer" version = "0.1.4" diff --git a/packages/crypto/Cargo.toml b/packages/crypto/Cargo.toml index 9569dd9dff..035c3cbbbe 100644 --- a/packages/crypto/Cargo.toml +++ b/packages/crypto/Cargo.toml @@ -29,6 +29,7 @@ criterion = "0.5.1" serde = { version = "1.0.103", default-features = false, features = ["derive", "alloc"] } serde_json = "1.0.40" sha2 = "0.10" +sha3 = "0.10" hex = "0.4" hex-literal = "0.3.1" english-numbers = "0.3" diff --git a/packages/crypto/testdata/wycheproof/README.md b/packages/crypto/testdata/wycheproof/README.md new file mode 100644 index 0000000000..077ea37b8b --- /dev/null +++ b/packages/crypto/testdata/wycheproof/README.md @@ -0,0 +1,21 @@ +# Wycheproof test data + +This folder contains test vectors from +[Project Wycheproof](https://github.com/google/wycheproof) to increase the test +coverage of signature verification implementations. + +This test data is used by integration tests in `test/wycheproof_*.rs`. + +## Update + +To ensure integrety if the files and update them to the latest version, run this +from the repo root: + +```sh +(cd packages/crypto/testdata/wycheproof \ + && curl -sSL https://github.com/google/wycheproof/raw/master/testvectors_v1/ecdsa_secp256r1_sha256_test.json > ecdsa_secp256r1_sha256_test.json \ + && curl -sSL https://github.com/google/wycheproof/raw/master/testvectors_v1/ecdsa_secp256r1_sha512_test.json > ecdsa_secp256r1_sha512_test.json \ + && curl -sSL https://github.com/google/wycheproof/raw/master/testvectors_v1/ecdsa_secp256r1_sha3_256_test.json > ecdsa_secp256r1_sha3_256_test.json \ + && curl -sSL https://github.com/google/wycheproof/raw/master/testvectors_v1/ecdsa_secp256r1_sha3_512_test.json > ecdsa_secp256r1_sha3_512_test.json \ + ) +``` diff --git a/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha256_test.json b/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha256_test.json new file mode 100644 index 0000000000..684042f6f4 --- /dev/null +++ b/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha256_test.json @@ -0,0 +1,6502 @@ +{ + "algorithm" : "ECDSA", + "schema" : "ecdsa_verify_schema.json", + "generatorVersion" : "0.9rc5", + "numberOfTests" : 471, + "header" : [ + "Test vectors of type EcdsaVerify are meant for the verification", + "of ASN encoded ECDSA signatures." + ], + "notes" : { + "ArithmeticError" : { + "bugType" : "EDGE_CASE", + "description" : "Some implementations of ECDSA have arithmetic errors that occur when intermediate results have extreme values. This test vector has been constructed to test such occurences.", + "cves" : [ + "CVE-2017-18146" + ] + }, + "BerEncodedSignature" : { + "bugType" : "BER_ENCODING", + "description" : "ECDSA signatures are usually DER encoded. This signature contains valid values for r and s, but it uses alternative BER encoding.", + "effect" : "Accepting alternative BER encodings may be benign in some cases, or be an issue if protocol requires signature malleability.", + "cves" : [ + "CVE-2020-14966", + "CVE-2020-13822", + "CVE-2019-14859", + "CVE-2016-1000342" + ] + }, + "EdgeCasePublicKey" : { + "bugType" : "EDGE_CASE", + "description" : "The test vector uses a special case public key. " + }, + "EdgeCaseShamirMultiplication" : { + "bugType" : "EDGE_CASE", + "description" : "Shamir proposed a fast method for computing the sum of two scalar multiplications efficiently. This test vector has been constructed so that an intermediate result is the point at infinity if Shamir's method is used." + }, + "IntegerOverflow" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified, so that the original value is restored if the implementation ignores the most significant bits.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "InvalidEncoding" : { + "bugType" : "CAN_OF_WORMS", + "description" : "ECDSA signatures are encoded using ASN.1. This test vector contains an incorrectly encoded signature. The test vector itself was generated from a valid signature by modifying its encoding.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "InvalidSignature" : { + "bugType" : "AUTH_BYPASS", + "description" : "The signature contains special case values such as r=0 and s=0. Buggy implementations may accept such values, if the implementation does not check boundaries and computes s^(-1) == 0.", + "effect" : "Accepting such signatures can have the effect that an adversary can forge signatures without even knowning the message to sign.", + "cves" : [ + "CVE-2022-21449", + "CVE-2021-43572", + "CVE-2022-24884" + ] + }, + "InvalidTypesInSignature" : { + "bugType" : "AUTH_BYPASS", + "description" : "The signature contains invalid types. Dynamic typed languages sometime coerce such values of different types into integers. If an implementation is careless and has additional bugs, such as not checking integer boundaries then it may be possible that such signatures are accepted.", + "effect" : "Accepting such signatures can have the effect that an adversary can forge signatures without even knowning the message to sign.", + "cves" : [ + "CVE-2022-21449" + ] + }, + "MissingZero" : { + "bugType" : "LEGACY", + "description" : "Some implementations of ECDSA and DSA incorrectly encode r and s by not including leading zeros in the ASN encoding of integers when necessary. Hence, some implementations (e.g. jdk) allow signatures with incorrect ASN encodings assuming that the signature is otherwise valid.", + "effect" : "While signatures are more malleable if such signatures are accepted, this typically leads to no vulnerability, since a badly encoded signature can be reencoded correctly." + }, + "ModifiedInteger" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified. The goal is to check for arithmetic errors.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "ModifiedSignature" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an invalid signature that was generated from a valid signature by modifying it.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "ModularInverse" : { + "bugType" : "EDGE_CASE", + "description" : "The test vectors contains a signature where computing the modular inverse of s hits an edge case.", + "effect" : "While the signature in this test vector is constructed and similar cases are unlikely to occur, it is important to determine if the underlying arithmetic error can be used to forge signatures.", + "cves" : [ + "CVE-2019-0865" + ] + }, + "PointDuplication" : { + "bugType" : "EDGE_CASE", + "description" : "Some implementations of ECDSA do not handle duplication and points at infinity correctly. This is a test vector that has been specially crafted to check for such an omission.", + "cves" : [ + "2020-12607", + "CVE-2015-2730" + ] + }, + "RangeCheck" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified. By adding or subtracting the order of the group (or other values) the test vector checks whether signature verification verifies the range of r and s.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "SmallRandS" : { + "bugType" : "EDGE_CASE", + "description" : "The test vectors contains a signature where both r and s are small integers. Some libraries cannot verify such signatures.", + "effect" : "While the signature in this test vector is constructed and similar cases are unlikely to occur, it is important to determine if the underlying arithmetic error can be used to forge signatures.", + "cves" : [ + "2020-13895" + ] + }, + "SpecialCaseHash" : { + "bugType" : "EDGE_CASE", + "description" : "The test vector contains a signature where the hash of the message is a special case, e.g., contains a long run of 0 or 1 bits." + }, + "ValidSignature" : { + "bugType" : "BASIC", + "description" : "The test vector contains a valid signature that was generated pseudorandomly. Such signatures should not fail to verify unless some of the parameters (e.g. curve or hash function) are not supported." + } + }, + "testGroups" : [ + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0404aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad587d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d", + "wx" : "04aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad5", + "wy" : "0087d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000404aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad587d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEBKrsc2NXJvIT+4qeZNo7hjLkFJWp\nRNAEW1IuunJA+tWH2TFXmKqjpboBd1eHztBeqve04J/IHW0apUboNl1SXQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 1, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "", + "sig" : "3045022100b292a619339f6e567a305c951c0dcbcc42d16e47f219f9e98e76e09d8770b34a02200177e60492c5a8242f76f07bfe3661bde59ec2a17ce5bd2dab2abebdf89a62e2", + "result" : "valid" + }, + { + "tcId" : 2, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "4d7367", + "sig" : "30450220530bd6b0c9af2d69ba897f6b5fb59695cfbf33afe66dbadcf5b8d2a2a6538e23022100d85e489cb7a161fd55ededcedbf4cc0c0987e3e3f0f242cae934c72caa3f43e9", + "result" : "valid" + }, + { + "tcId" : 3, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100a8ea150cb80125d7381c4c1f1da8e9de2711f9917060406a73d7904519e51388022100f3ab9fa68bd47973a73b2d40480c2ba50c22c9d76ec217257288293285449b86", + "result" : "valid" + }, + { + "tcId" : 4, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "0000000000000000000000000000000000000000", + "sig" : "3045022100986e65933ef2ed4ee5aada139f52b70539aaf63f00a91f29c69178490d57fb7102203dafedfb8da6189d372308cbf1489bbbdabf0c0217d1c0ff0f701aaa7a694b9c", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e", + "wx" : "2927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838", + "wy" : "00c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKSexBRK64+3c/kZ4KBKLrSkDJpkZ\n9whgacjE32xzKDjHeHlk6qwA5ZIfsUmKYPRgZ2az2WhQAVWNGpdOc0FRPg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 5, + "comment" : "signature malleability", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "304402202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1802204cd60b855d442f5b3c7b11eb6c4e0ae7525fe710fab9aa7c77a67f79e6fadd76", + "result" : "valid" + }, + { + "tcId" : 6, + "comment" : "Legacy: ASN encoding of s misses leading 0", + "flags" : [ + "MissingZero" + ], + "msg" : "313233343030", + "sig" : "304402202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180220b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 7, + "comment" : "valid", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "valid" + }, + { + "tcId" : 8, + "comment" : "length of sequence [r, s] uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "30814502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 9, + "comment" : "length of sequence [r, s] contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "3082004502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 10, + "comment" : "length of sequence [r, s] uses 70 instead of 69", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304602202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 11, + "comment" : "length of sequence [r, s] uses 68 instead of 69", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304402202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 12, + "comment" : "uint32 overflow in length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3085010000004502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 13, + "comment" : "uint64 overflow in length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308901000000000000004502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 14, + "comment" : "length of sequence [r, s] = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30847fffffff02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 15, + "comment" : "length of sequence [r, s] = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30848000000002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 16, + "comment" : "length of sequence [r, s] = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3084ffffffff02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 17, + "comment" : "length of sequence [r, s] = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3085ffffffffff02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 18, + "comment" : "length of sequence [r, s] = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3088ffffffffffffffff02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 19, + "comment" : "incorrect length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30ff02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 20, + "comment" : "replaced sequence [r, s] by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 21, + "comment" : "removing sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "", + "result" : "invalid" + }, + { + "tcId" : 22, + "comment" : "lonely sequence tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30", + "result" : "invalid" + }, + { + "tcId" : 23, + "comment" : "appending 0's to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000", + "result" : "invalid" + }, + { + "tcId" : 24, + "comment" : "prepending 0's to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3047000002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 25, + "comment" : "appending unused 0's to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000", + "result" : "invalid" + }, + { + "tcId" : 26, + "comment" : "appending null value to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0500", + "result" : "invalid" + }, + { + "tcId" : 27, + "comment" : "prepending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a498177304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 28, + "comment" : "prepending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30492500304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 29, + "comment" : "appending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3047304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0004deadbeef", + "result" : "invalid" + }, + { + "tcId" : 30, + "comment" : "including undefined tags", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304daa00bb00cd00304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 31, + "comment" : "including undefined tags", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d2228aa00bb00cd0002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 32, + "comment" : "including undefined tags", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e182229aa00bb00cd00022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 33, + "comment" : "truncated length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3081", + "result" : "invalid" + }, + { + "tcId" : 34, + "comment" : "including undefined tags to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304baa02aabb304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 35, + "comment" : "using composition with indefinite length for sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3080304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000", + "result" : "invalid" + }, + { + "tcId" : 36, + "comment" : "using composition with wrong tag for sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3080314502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000", + "result" : "invalid" + }, + { + "tcId" : 37, + "comment" : "Replacing sequence [r, s] with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "0500", + "result" : "invalid" + }, + { + "tcId" : 38, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "2e4502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 39, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "2f4502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 40, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "314502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 41, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "324502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 42, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "ff4502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 43, + "comment" : "dropping value of sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3000", + "result" : "invalid" + }, + { + "tcId" : 44, + "comment" : "using composition for sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30493001023044202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 45, + "comment" : "truncated sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304402202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847", + "result" : "invalid" + }, + { + "tcId" : 46, + "comment" : "truncated sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3044202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 47, + "comment" : "sequence [r, s] of size 4166 to check for overflows", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3082104602202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 48, + "comment" : "indefinite length", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "308002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000", + "result" : "invalid" + }, + { + "tcId" : 49, + "comment" : "indefinite length with truncated delimiter", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db00", + "result" : "invalid" + }, + { + "tcId" : 50, + "comment" : "indefinite length with additional element", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "308002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db05000000", + "result" : "invalid" + }, + { + "tcId" : 51, + "comment" : "indefinite length with truncated element", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db060811220000", + "result" : "invalid" + }, + { + "tcId" : 52, + "comment" : "indefinite length with garbage", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000fe02beef", + "result" : "invalid" + }, + { + "tcId" : 53, + "comment" : "indefinite length with nonempty EOC", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0002beef", + "result" : "invalid" + }, + { + "tcId" : 54, + "comment" : "prepend empty sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3047300002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 55, + "comment" : "append empty sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db3000", + "result" : "invalid" + }, + { + "tcId" : 56, + "comment" : "append zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304802202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db020100", + "result" : "invalid" + }, + { + "tcId" : 57, + "comment" : "append garbage with high tag number", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304802202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847dbbf7f00", + "result" : "invalid" + }, + { + "tcId" : 58, + "comment" : "append null with explicit tag", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304902202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847dba0020500", + "result" : "invalid" + }, + { + "tcId" : 59, + "comment" : "append null with implicit tag", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847dba000", + "result" : "invalid" + }, + { + "tcId" : 60, + "comment" : "sequence of sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3047304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 61, + "comment" : "truncated sequence: removed last 1 elements", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302202202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18", + "result" : "invalid" + }, + { + "tcId" : 62, + "comment" : "repeating element in sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "306802202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 63, + "comment" : "flipped bit 0 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30432ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e19022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 64, + "comment" : "flipped bit 32 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30432ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af8bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 65, + "comment" : "flipped bit 48 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30432ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cd6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 66, + "comment" : "flipped bit 64 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30432ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee858b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 67, + "comment" : "length of r uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "30460281202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 68, + "comment" : "length of r contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "3047028200202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 69, + "comment" : "length of r uses 33 instead of 32", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502212ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 70, + "comment" : "length of r uses 31 instead of 32", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3045021f2ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 71, + "comment" : "uint32 overflow in length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a028501000000202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 72, + "comment" : "uint64 overflow in length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e02890100000000000000202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 73, + "comment" : "length of r = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902847fffffff2ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 74, + "comment" : "length of r = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490284800000002ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 75, + "comment" : "length of r = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490284ffffffff2ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 76, + "comment" : "length of r = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a0285ffffffffff2ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 77, + "comment" : "length of r = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d0288ffffffffffffffff2ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 78, + "comment" : "incorrect length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502ff2ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 79, + "comment" : "replaced r by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502802ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 80, + "comment" : "removing r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3023022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 81, + "comment" : "lonely integer tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "302402022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 82, + "comment" : "lonely integer tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "302302202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1802", + "result" : "invalid" + }, + { + "tcId" : 83, + "comment" : "appending 0's to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702222ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180000022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 84, + "comment" : "prepending 0's to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3047022200002ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 85, + "comment" : "appending unused 0's to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180000022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 86, + "comment" : "appending null value to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702222ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180500022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 87, + "comment" : "prepending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a222549817702202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 88, + "comment" : "prepending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30492224250002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 89, + "comment" : "appending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d222202202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180004deadbeef022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 90, + "comment" : "truncated length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30250281022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 91, + "comment" : "including undefined tags to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b2226aa02aabb02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 92, + "comment" : "using composition with indefinite length for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3049228002202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180000022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 93, + "comment" : "using composition with wrong tag for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3049228003202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180000022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 94, + "comment" : "Replacing r with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30250500022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 95, + "comment" : "changing tag value of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304500202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 96, + "comment" : "changing tag value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304501202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 97, + "comment" : "changing tag value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304503202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 98, + "comment" : "changing tag value of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304504202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 99, + "comment" : "changing tag value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3045ff202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 100, + "comment" : "dropping value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30250200022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 101, + "comment" : "using composition for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3049222402012b021fa3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 102, + "comment" : "modifying first byte of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3045022029a3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 103, + "comment" : "modifying last byte of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e98022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 104, + "comment" : "truncated r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3044021f2ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 105, + "comment" : "truncated r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3044021fa3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 106, + "comment" : "r of size 4129 to check for overflows", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30821048028210212ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 107, + "comment" : "leading ff in r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30460221ff2ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 108, + "comment" : "replaced r by infinity", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3026090180022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 109, + "comment" : "replacing r with zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 110, + "comment" : "flipped bit 0 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304302202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1800b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847da", + "result" : "invalid" + }, + { + "tcId" : 111, + "comment" : "flipped bit 32 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304302202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1800b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b48156847db", + "result" : "invalid" + }, + { + "tcId" : 112, + "comment" : "flipped bit 48 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304302202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1800b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c124b49156847db", + "result" : "invalid" + }, + { + "tcId" : 113, + "comment" : "flipped bit 64 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304302202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1800b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4097c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 114, + "comment" : "length of s uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "304602202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1802812100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 115, + "comment" : "length of s contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180282002100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 116, + "comment" : "length of s uses 34 instead of 33", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022200b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 117, + "comment" : "length of s uses 32 instead of 33", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022000b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 118, + "comment" : "uint32 overflow in length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180285010000002100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 119, + "comment" : "uint64 overflow in length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18028901000000000000002100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 120, + "comment" : "length of s = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1802847fffffff00b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 121, + "comment" : "length of s = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1802848000000000b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 122, + "comment" : "length of s = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180284ffffffff00b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 123, + "comment" : "length of s = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180285ffffffffff00b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 124, + "comment" : "length of s = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180288ffffffffffffffff00b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 125, + "comment" : "incorrect length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1802ff00b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 126, + "comment" : "replaced s by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18028000b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 127, + "comment" : "appending 0's to s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022300b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000", + "result" : "invalid" + }, + { + "tcId" : 128, + "comment" : "prepending 0's to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304702202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180223000000b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 129, + "comment" : "appending null value to s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022300b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0500", + "result" : "invalid" + }, + { + "tcId" : 130, + "comment" : "prepending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e182226498177022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 131, + "comment" : "prepending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1822252500022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 132, + "comment" : "appending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e182223022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0004deadbeef", + "result" : "invalid" + }, + { + "tcId" : 133, + "comment" : "truncated length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "302402202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180281", + "result" : "invalid" + }, + { + "tcId" : 134, + "comment" : "including undefined tags to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b02202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e182227aa02aabb022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 135, + "comment" : "using composition with indefinite length for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e182280022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000", + "result" : "invalid" + }, + { + "tcId" : 136, + "comment" : "using composition with wrong tag for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e182280032100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000", + "result" : "invalid" + }, + { + "tcId" : 137, + "comment" : "Replacing s with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302402202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180500", + "result" : "invalid" + }, + { + "tcId" : 138, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18002100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 139, + "comment" : "changing tag value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18012100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 140, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18032100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 141, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18042100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 142, + "comment" : "changing tag value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18ff2100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 143, + "comment" : "dropping value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "302402202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180200", + "result" : "invalid" + }, + { + "tcId" : 144, + "comment" : "using composition for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1822250201000220b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 145, + "comment" : "modifying first byte of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022102b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 146, + "comment" : "modifying last byte of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b491568475b", + "result" : "invalid" + }, + { + "tcId" : 147, + "comment" : "truncated s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304402202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022000b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847", + "result" : "invalid" + }, + { + "tcId" : 148, + "comment" : "s of size 4130 to check for overflows", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3082104802202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180282102200b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 149, + "comment" : "leading ff in s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304602202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e180222ff00b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 150, + "comment" : "replaced s by infinity", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18090180", + "result" : "invalid" + }, + { + "tcId" : 151, + "comment" : "replacing s with zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302502202ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18020100", + "result" : "invalid" + }, + { + "tcId" : 152, + "comment" : "replaced r by r + n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30460221012ba3a8bd6b94d5ed80a6d9d1190a436ebccc0833490686deac8635bcb9bf5369022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 153, + "comment" : "replaced r by r - n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30460221ff2ba3a8bf6b94d5eb80a6d9d1190a436f42fe12d7fad749d4c512a036c0f908c7022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 154, + "comment" : "replaced r by r + 256 * n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "3047022201002ba3a7be6b94d6ec80a6d9d1190a432be6dfbb2cb98d6d4d72972df620817f18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 155, + "comment" : "replaced r by -r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30450220d45c5741946b2a137f59262ee6f5bc91001af27a5e1117a64733950642a3d1e8022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 156, + "comment" : "replaced r by n - r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "3046022100d45c5740946b2a147f59262ee6f5bc90bd01ed280528b62b3aed5fc93f06f739022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 157, + "comment" : "replaced r by -n - r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30460221fed45c5742946b2a127f59262ee6f5bc914333f7ccb6f979215379ca434640ac97022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 158, + "comment" : "replaced r by r + 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "30460221012ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 159, + "comment" : "replaced r by r + 2**320", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "304e02290100000000000000002ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e18022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 160, + "comment" : "replaced s by s + n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "3046022101b329f478a2bbd0a6c384ee1493b1f518276e0e4a5375928d6fcd160c11cb6d2c022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 161, + "comment" : "replaced s by s - n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30450220b329f47aa2bbd0a4c384ee1493b1f518ada018ef05465583885980861905228a022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 162, + "comment" : "replaced s by s + 256 * n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "304702220100b329f379a2bbd1a5c384ee1493b1f4d55181c143c3fc78fc35de0e45788d98db022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 163, + "comment" : "replaced s by -s", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30460221ff4cd60b865d442f5a3c7b11eb6c4e0ae79578ec6353a20bf783ecb4b6ea97b825022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 164, + "comment" : "replaced s by -n - s", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30460221fe4cd60b875d442f593c7b11eb6c4e0ae7d891f1b5ac8a6d729032e9f3ee3492d4022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 165, + "comment" : "replaced s by s + 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "3046022101b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 166, + "comment" : "replaced s by s - 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "30450220b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 167, + "comment" : "replaced s by s + 2**320", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "304e0229010000000000000000b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db022100b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db", + "result" : "invalid" + }, + { + "tcId" : 168, + "comment" : "Signature with special case values r=0 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100020100", + "result" : "invalid" + }, + { + "tcId" : 169, + "comment" : "Signature with special case values r=0 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100020101", + "result" : "invalid" + }, + { + "tcId" : 170, + "comment" : "Signature with special case values r=0 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201000201ff", + "result" : "invalid" + }, + { + "tcId" : 171, + "comment" : "Signature with special case values r=0 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 172, + "comment" : "Signature with special case values r=0 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 173, + "comment" : "Signature with special case values r=0 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 174, + "comment" : "Signature with special case values r=0 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 175, + "comment" : "Signature with special case values r=0 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 176, + "comment" : "Signature with special case values r=1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101020100", + "result" : "invalid" + }, + { + "tcId" : 177, + "comment" : "Signature with special case values r=1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101020101", + "result" : "invalid" + }, + { + "tcId" : 178, + "comment" : "Signature with special case values r=1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201010201ff", + "result" : "invalid" + }, + { + "tcId" : 179, + "comment" : "Signature with special case values r=1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 180, + "comment" : "Signature with special case values r=1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 181, + "comment" : "Signature with special case values r=1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 182, + "comment" : "Signature with special case values r=1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 183, + "comment" : "Signature with special case values r=1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 184, + "comment" : "Signature with special case values r=-1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff020100", + "result" : "invalid" + }, + { + "tcId" : 185, + "comment" : "Signature with special case values r=-1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff020101", + "result" : "invalid" + }, + { + "tcId" : 186, + "comment" : "Signature with special case values r=-1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff0201ff", + "result" : "invalid" + }, + { + "tcId" : 187, + "comment" : "Signature with special case values r=-1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 188, + "comment" : "Signature with special case values r=-1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 189, + "comment" : "Signature with special case values r=-1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 190, + "comment" : "Signature with special case values r=-1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 191, + "comment" : "Signature with special case values r=-1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 192, + "comment" : "Signature with special case values r=n and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020100", + "result" : "invalid" + }, + { + "tcId" : 193, + "comment" : "Signature with special case values r=n and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101", + "result" : "invalid" + }, + { + "tcId" : 194, + "comment" : "Signature with special case values r=n and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510201ff", + "result" : "invalid" + }, + { + "tcId" : 195, + "comment" : "Signature with special case values r=n and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 196, + "comment" : "Signature with special case values r=n and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 197, + "comment" : "Signature with special case values r=n and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 198, + "comment" : "Signature with special case values r=n and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 199, + "comment" : "Signature with special case values r=n and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 200, + "comment" : "Signature with special case values r=n - 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550020100", + "result" : "invalid" + }, + { + "tcId" : 201, + "comment" : "Signature with special case values r=n - 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550020101", + "result" : "invalid" + }, + { + "tcId" : 202, + "comment" : "Signature with special case values r=n - 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325500201ff", + "result" : "invalid" + }, + { + "tcId" : 203, + "comment" : "Signature with special case values r=n - 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 204, + "comment" : "Signature with special case values r=n - 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 205, + "comment" : "Signature with special case values r=n - 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 206, + "comment" : "Signature with special case values r=n - 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 207, + "comment" : "Signature with special case values r=n - 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 208, + "comment" : "Signature with special case values r=n + 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552020100", + "result" : "invalid" + }, + { + "tcId" : 209, + "comment" : "Signature with special case values r=n + 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552020101", + "result" : "invalid" + }, + { + "tcId" : 210, + "comment" : "Signature with special case values r=n + 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325520201ff", + "result" : "invalid" + }, + { + "tcId" : 211, + "comment" : "Signature with special case values r=n + 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 212, + "comment" : "Signature with special case values r=n + 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 213, + "comment" : "Signature with special case values r=n + 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 214, + "comment" : "Signature with special case values r=n + 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 215, + "comment" : "Signature with special case values r=n + 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 216, + "comment" : "Signature with special case values r=p and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff020100", + "result" : "invalid" + }, + { + "tcId" : 217, + "comment" : "Signature with special case values r=p and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff020101", + "result" : "invalid" + }, + { + "tcId" : 218, + "comment" : "Signature with special case values r=p and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0201ff", + "result" : "invalid" + }, + { + "tcId" : 219, + "comment" : "Signature with special case values r=p and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 220, + "comment" : "Signature with special case values r=p and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 221, + "comment" : "Signature with special case values r=p and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 222, + "comment" : "Signature with special case values r=p and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 223, + "comment" : "Signature with special case values r=p and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 224, + "comment" : "Signature with special case values r=p + 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000001000000000000000000000000020100", + "result" : "invalid" + }, + { + "tcId" : 225, + "comment" : "Signature with special case values r=p + 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000001000000000000000000000000020101", + "result" : "invalid" + }, + { + "tcId" : 226, + "comment" : "Signature with special case values r=p + 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff000000010000000000000000000000010000000000000000000000000201ff", + "result" : "invalid" + }, + { + "tcId" : 227, + "comment" : "Signature with special case values r=p + 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 228, + "comment" : "Signature with special case values r=p + 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 229, + "comment" : "Signature with special case values r=p + 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 230, + "comment" : "Signature with special case values r=p + 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 231, + "comment" : "Signature with special case values r=p + 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 232, + "comment" : "Signature encoding contains incorrect types: r=0, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008020100090380fe01", + "result" : "invalid" + }, + { + "tcId" : 233, + "comment" : "Signature encoding contains incorrect types: r=0, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100090142", + "result" : "invalid" + }, + { + "tcId" : 234, + "comment" : "Signature encoding contains incorrect types: r=0, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100010101", + "result" : "invalid" + }, + { + "tcId" : 235, + "comment" : "Signature encoding contains incorrect types: r=0, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100010100", + "result" : "invalid" + }, + { + "tcId" : 236, + "comment" : "Signature encoding contains incorrect types: r=0, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201000500", + "result" : "invalid" + }, + { + "tcId" : 237, + "comment" : "Signature encoding contains incorrect types: r=0, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201000c00", + "result" : "invalid" + }, + { + "tcId" : 238, + "comment" : "Signature encoding contains incorrect types: r=0, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201000c0130", + "result" : "invalid" + }, + { + "tcId" : 239, + "comment" : "Signature encoding contains incorrect types: r=0, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201003000", + "result" : "invalid" + }, + { + "tcId" : 240, + "comment" : "Signature encoding contains incorrect types: r=0, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201003003020100", + "result" : "invalid" + }, + { + "tcId" : 241, + "comment" : "Signature encoding contains incorrect types: r=1, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008020101090380fe01", + "result" : "invalid" + }, + { + "tcId" : 242, + "comment" : "Signature encoding contains incorrect types: r=1, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101090142", + "result" : "invalid" + }, + { + "tcId" : 243, + "comment" : "Signature encoding contains incorrect types: r=1, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101010101", + "result" : "invalid" + }, + { + "tcId" : 244, + "comment" : "Signature encoding contains incorrect types: r=1, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101010100", + "result" : "invalid" + }, + { + "tcId" : 245, + "comment" : "Signature encoding contains incorrect types: r=1, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201010500", + "result" : "invalid" + }, + { + "tcId" : 246, + "comment" : "Signature encoding contains incorrect types: r=1, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201010c00", + "result" : "invalid" + }, + { + "tcId" : 247, + "comment" : "Signature encoding contains incorrect types: r=1, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201010c0130", + "result" : "invalid" + }, + { + "tcId" : 248, + "comment" : "Signature encoding contains incorrect types: r=1, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201013000", + "result" : "invalid" + }, + { + "tcId" : 249, + "comment" : "Signature encoding contains incorrect types: r=1, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201013003020100", + "result" : "invalid" + }, + { + "tcId" : 250, + "comment" : "Signature encoding contains incorrect types: r=-1, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201ff090380fe01", + "result" : "invalid" + }, + { + "tcId" : 251, + "comment" : "Signature encoding contains incorrect types: r=-1, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff090142", + "result" : "invalid" + }, + { + "tcId" : 252, + "comment" : "Signature encoding contains incorrect types: r=-1, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff010101", + "result" : "invalid" + }, + { + "tcId" : 253, + "comment" : "Signature encoding contains incorrect types: r=-1, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff010100", + "result" : "invalid" + }, + { + "tcId" : 254, + "comment" : "Signature encoding contains incorrect types: r=-1, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff0500", + "result" : "invalid" + }, + { + "tcId" : 255, + "comment" : "Signature encoding contains incorrect types: r=-1, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff0c00", + "result" : "invalid" + }, + { + "tcId" : 256, + "comment" : "Signature encoding contains incorrect types: r=-1, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff0c0130", + "result" : "invalid" + }, + { + "tcId" : 257, + "comment" : "Signature encoding contains incorrect types: r=-1, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff3000", + "result" : "invalid" + }, + { + "tcId" : 258, + "comment" : "Signature encoding contains incorrect types: r=-1, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201ff3003020100", + "result" : "invalid" + }, + { + "tcId" : 259, + "comment" : "Signature encoding contains incorrect types: r=n, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551090380fe01", + "result" : "invalid" + }, + { + "tcId" : 260, + "comment" : "Signature encoding contains incorrect types: r=n, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551090142", + "result" : "invalid" + }, + { + "tcId" : 261, + "comment" : "Signature encoding contains incorrect types: r=n, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551010101", + "result" : "invalid" + }, + { + "tcId" : 262, + "comment" : "Signature encoding contains incorrect types: r=n, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551010100", + "result" : "invalid" + }, + { + "tcId" : 263, + "comment" : "Signature encoding contains incorrect types: r=n, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510500", + "result" : "invalid" + }, + { + "tcId" : 264, + "comment" : "Signature encoding contains incorrect types: r=n, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510c00", + "result" : "invalid" + }, + { + "tcId" : 265, + "comment" : "Signature encoding contains incorrect types: r=n, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510c0130", + "result" : "invalid" + }, + { + "tcId" : 266, + "comment" : "Signature encoding contains incorrect types: r=n, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325513000", + "result" : "invalid" + }, + { + "tcId" : 267, + "comment" : "Signature encoding contains incorrect types: r=n, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325513003020100", + "result" : "invalid" + }, + { + "tcId" : 268, + "comment" : "Signature encoding contains incorrect types: r=p, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff090380fe01", + "result" : "invalid" + }, + { + "tcId" : 269, + "comment" : "Signature encoding contains incorrect types: r=p, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff090142", + "result" : "invalid" + }, + { + "tcId" : 270, + "comment" : "Signature encoding contains incorrect types: r=p, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff010101", + "result" : "invalid" + }, + { + "tcId" : 271, + "comment" : "Signature encoding contains incorrect types: r=p, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff010100", + "result" : "invalid" + }, + { + "tcId" : 272, + "comment" : "Signature encoding contains incorrect types: r=p, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0500", + "result" : "invalid" + }, + { + "tcId" : 273, + "comment" : "Signature encoding contains incorrect types: r=p, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0c00", + "result" : "invalid" + }, + { + "tcId" : 274, + "comment" : "Signature encoding contains incorrect types: r=p, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0c0130", + "result" : "invalid" + }, + { + "tcId" : 275, + "comment" : "Signature encoding contains incorrect types: r=p, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff3000", + "result" : "invalid" + }, + { + "tcId" : 276, + "comment" : "Signature encoding contains incorrect types: r=p, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff3003020100", + "result" : "invalid" + }, + { + "tcId" : 277, + "comment" : "Signature encoding contains incorrect types: r=0.25, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300a090380fe01090380fe01", + "result" : "invalid" + }, + { + "tcId" : 278, + "comment" : "Signature encoding contains incorrect types: r=nan, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006090142090142", + "result" : "invalid" + }, + { + "tcId" : 279, + "comment" : "Signature encoding contains incorrect types: r=True, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010101010101", + "result" : "invalid" + }, + { + "tcId" : 280, + "comment" : "Signature encoding contains incorrect types: r=False, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010100010100", + "result" : "invalid" + }, + { + "tcId" : 281, + "comment" : "Signature encoding contains incorrect types: r=Null, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300405000500", + "result" : "invalid" + }, + { + "tcId" : 282, + "comment" : "Signature encoding contains incorrect types: r=empyt UTF-8 string, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30040c000c00", + "result" : "invalid" + }, + { + "tcId" : 283, + "comment" : "Signature encoding contains incorrect types: r=\"0\", s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060c01300c0130", + "result" : "invalid" + }, + { + "tcId" : 284, + "comment" : "Signature encoding contains incorrect types: r=empty list, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300430003000", + "result" : "invalid" + }, + { + "tcId" : 285, + "comment" : "Signature encoding contains incorrect types: r=list containing 0, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300a30030201003003020100", + "result" : "invalid" + }, + { + "tcId" : 286, + "comment" : "Signature encoding contains incorrect types: r=0.25, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008090380fe01020100", + "result" : "invalid" + }, + { + "tcId" : 287, + "comment" : "Signature encoding contains incorrect types: r=nan, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006090142020100", + "result" : "invalid" + }, + { + "tcId" : 288, + "comment" : "Signature encoding contains incorrect types: r=True, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010101020100", + "result" : "invalid" + }, + { + "tcId" : 289, + "comment" : "Signature encoding contains incorrect types: r=False, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010100020100", + "result" : "invalid" + }, + { + "tcId" : 290, + "comment" : "Signature encoding contains incorrect types: r=Null, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050500020100", + "result" : "invalid" + }, + { + "tcId" : 291, + "comment" : "Signature encoding contains incorrect types: r=empyt UTF-8 string, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050c00020100", + "result" : "invalid" + }, + { + "tcId" : 292, + "comment" : "Signature encoding contains incorrect types: r=\"0\", s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060c0130020100", + "result" : "invalid" + }, + { + "tcId" : 293, + "comment" : "Signature encoding contains incorrect types: r=empty list, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30053000020100", + "result" : "invalid" + }, + { + "tcId" : 294, + "comment" : "Signature encoding contains incorrect types: r=list containing 0, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30083003020100020100", + "result" : "invalid" + }, + { + "tcId" : 295, + "comment" : "Edge case for Shamir multiplication", + "flags" : [ + "EdgeCaseShamirMultiplication" + ], + "msg" : "3639383139", + "sig" : "3044022064a1aab5000d0e804f3e2fc02bdee9be8ff312334e2ba16d11547c97711c898e02206af015971cc30be6d1a206d4e013e0997772a2f91d73286ffd683b9bb2cf4f1b", + "result" : "valid" + }, + { + "tcId" : 296, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "343236343739373234", + "sig" : "3044022016aea964a2f6506d6f78c81c91fc7e8bded7d397738448de1e19a0ec580bf2660220252cd762130c6667cfe8b7bc47d27d78391e8e80c578d1cd38c3ff033be928e9", + "result" : "valid" + }, + { + "tcId" : 297, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37313338363834383931", + "sig" : "30450221009cc98be2347d469bf476dfc26b9b733df2d26d6ef524af917c665baccb23c8820220093496459effe2d8d70727b82462f61d0ec1b7847929d10ea631dacb16b56c32", + "result" : "valid" + }, + { + "tcId" : 298, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130333539333331363638", + "sig" : "3044022073b3c90ecd390028058164524dde892703dce3dea0d53fa8093999f07ab8aa4302202f67b0b8e20636695bb7d8bf0a651c802ed25a395387b5f4188c0c4075c88634", + "result" : "valid" + }, + { + "tcId" : 299, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33393439343031323135", + "sig" : "3046022100bfab3098252847b328fadf2f89b95c851a7f0eb390763378f37e90119d5ba3dd022100bdd64e234e832b1067c2d058ccb44d978195ccebb65c2aaf1e2da9b8b4987e3b", + "result" : "valid" + }, + { + "tcId" : 300, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31333434323933303739", + "sig" : "30440220204a9784074b246d8bf8bf04a4ceb1c1f1c9aaab168b1596d17093c5cd21d2cd022051cce41670636783dc06a759c8847868a406c2506fe17975582fe648d1d88b52", + "result" : "valid" + }, + { + "tcId" : 301, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33373036323131373132", + "sig" : "3046022100ed66dc34f551ac82f63d4aa4f81fe2cb0031a91d1314f835027bca0f1ceeaa0302210099ca123aa09b13cd194a422e18d5fda167623c3f6e5d4d6abb8953d67c0c48c7", + "result" : "valid" + }, + { + "tcId" : 302, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "333433363838373132", + "sig" : "30450220060b700bef665c68899d44f2356a578d126b062023ccc3c056bf0f60a237012b0221008d186c027832965f4fcc78a3366ca95dedbb410cbef3f26d6be5d581c11d3610", + "result" : "valid" + }, + { + "tcId" : 303, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31333531353330333730", + "sig" : "30460221009f6adfe8d5eb5b2c24d7aa7934b6cf29c93ea76cd313c9132bb0c8e38c96831d022100b26a9c9e40e55ee0890c944cf271756c906a33e66b5bd15e051593883b5e9902", + "result" : "valid" + }, + { + "tcId" : 304, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36353533323033313236", + "sig" : "3045022100a1af03ca91677b673ad2f33615e56174a1abf6da168cebfa8868f4ba273f16b7022020aa73ffe48afa6435cd258b173d0c2377d69022e7d098d75caf24c8c5e06b1c", + "result" : "valid" + }, + { + "tcId" : 305, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31353634333436363033", + "sig" : "3045022100fdc70602766f8eed11a6c99a71c973d5659355507b843da6e327a28c11893db902203df5349688a085b137b1eacf456a9e9e0f6d15ec0078ca60a7f83f2b10d21350", + "result" : "valid" + }, + { + "tcId" : 306, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34343239353339313137", + "sig" : "3046022100b516a314f2fce530d6537f6a6c49966c23456f63c643cf8e0dc738f7b876e675022100d39ffd033c92b6d717dd536fbc5efdf1967c4bd80954479ba66b0120cd16fff2", + "result" : "valid" + }, + { + "tcId" : 307, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130393533323631333531", + "sig" : "304402203b2cbf046eac45842ecb7984d475831582717bebb6492fd0a485c101e29ff0a802204c9b7b47a98b0f82de512bc9313aaf51701099cac5f76e68c8595fc1c1d99258", + "result" : "valid" + }, + { + "tcId" : 308, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35393837333530303431", + "sig" : "3044022030c87d35e636f540841f14af54e2f9edd79d0312cfa1ab656c3fb15bfde48dcf022047c15a5a82d24b75c85a692bd6ecafeb71409ede23efd08e0db9abf6340677ed", + "result" : "valid" + }, + { + "tcId" : 309, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33343633303036383738", + "sig" : "3044022038686ff0fda2cef6bc43b58cfe6647b9e2e8176d168dec3c68ff262113760f520220067ec3b651f422669601662167fa8717e976e2db5e6a4cf7c2ddabb3fde9d67d", + "result" : "valid" + }, + { + "tcId" : 310, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "39383137333230323837", + "sig" : "3044022044a3e23bf314f2b344fc25c7f2de8b6af3e17d27f5ee844b225985ab6e2775cf02202d48e223205e98041ddc87be532abed584f0411f5729500493c9cc3f4dd15e86", + "result" : "valid" + }, + { + "tcId" : 311, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33323232303431303436", + "sig" : "304402202ded5b7ec8e90e7bf11f967a3d95110c41b99db3b5aa8d330eb9d638781688e902207d5792c53628155e1bfc46fb1a67e3088de049c328ae1f44ec69238a009808f9", + "result" : "valid" + }, + { + "tcId" : 312, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36363636333037313034", + "sig" : "3046022100bdae7bcb580bf335efd3bc3d31870f923eaccafcd40ec2f605976f15137d8b8f022100f6dfa12f19e525270b0106eecfe257499f373a4fb318994f24838122ce7ec3c7", + "result" : "valid" + }, + { + "tcId" : 313, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31303335393531383938", + "sig" : "3045022050f9c4f0cd6940e162720957ffff513799209b78596956d21ece251c2401f1c6022100d7033a0a787d338e889defaaabb106b95a4355e411a59c32aa5167dfab244726", + "result" : "valid" + }, + { + "tcId" : 314, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31383436353937313935", + "sig" : "3045022100f612820687604fa01906066a378d67540982e29575d019aabe90924ead5c860d02203f9367702dd7dd4f75ea98afd20e328a1a99f4857b316525328230ce294b0fef", + "result" : "valid" + }, + { + "tcId" : 315, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33313336303436313839", + "sig" : "30460221009505e407657d6e8bc93db5da7aa6f5081f61980c1949f56b0f2f507da5782a7a022100c60d31904e3669738ffbeccab6c3656c08e0ed5cb92b3cfa5e7f71784f9c5021", + "result" : "valid" + }, + { + "tcId" : 316, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32363633373834323534", + "sig" : "3046022100bbd16fbbb656b6d0d83e6a7787cd691b08735aed371732723e1c68a40404517d0221009d8e35dba96028b7787d91315be675877d2d097be5e8ee34560e3e7fd25c0f00", + "result" : "valid" + }, + { + "tcId" : 317, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31363532313030353234", + "sig" : "304402202ec9760122db98fd06ea76848d35a6da442d2ceef7559a30cf57c61e92df327e02207ab271da90859479701fccf86e462ee3393fb6814c27b760c4963625c0a19878", + "result" : "valid" + }, + { + "tcId" : 318, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35373438303831363936", + "sig" : "3044022054e76b7683b6650baa6a7fc49b1c51eed9ba9dd463221f7a4f1005a89fe00c5902202ea076886c773eb937ec1cc8374b7915cfd11b1c1ae1166152f2f7806a31c8fd", + "result" : "valid" + }, + { + "tcId" : 319, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36333433393133343638", + "sig" : "304402205291deaf24659ffbbce6e3c26f6021097a74abdbb69be4fb10419c0c496c9466022065d6fcf336d27cc7cdb982bb4e4ecef5827f84742f29f10abf83469270a03dc3", + "result" : "valid" + }, + { + "tcId" : 320, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31353431313033353938", + "sig" : "30450220207a3241812d75d947419dc58efb05e8003b33fc17eb50f9d15166a88479f107022100cdee749f2e492b213ce80b32d0574f62f1c5d70793cf55e382d5caadf7592767", + "result" : "valid" + }, + { + "tcId" : 321, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130343738353830313238", + "sig" : "304502206554e49f82a855204328ac94913bf01bbe84437a355a0a37c0dee3cf81aa7728022100aea00de2507ddaf5c94e1e126980d3df16250a2eaebc8be486effe7f22b4f929", + "result" : "valid" + }, + { + "tcId" : 322, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130353336323835353638", + "sig" : "3046022100a54c5062648339d2bff06f71c88216c26c6e19b4d80a8c602990ac82707efdfc022100e99bbe7fcfafae3e69fd016777517aa01056317f467ad09aff09be73c9731b0d", + "result" : "valid" + }, + { + "tcId" : 323, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "393533393034313035", + "sig" : "3045022100975bd7157a8d363b309f1f444012b1a1d23096593133e71b4ca8b059cff37eaf02207faa7a28b1c822baa241793f2abc930bd4c69840fe090f2aacc46786bf919622", + "result" : "valid" + }, + { + "tcId" : 324, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "393738383438303339", + "sig" : "304402205694a6f84b8f875c276afd2ebcfe4d61de9ec90305afb1357b95b3e0da43885e02200dffad9ffd0b757d8051dec02ebdf70d8ee2dc5c7870c0823b6ccc7c679cbaa4", + "result" : "valid" + }, + { + "tcId" : 325, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33363130363732343432", + "sig" : "3045022100a0c30e8026fdb2b4b4968a27d16a6d08f7098f1a98d21620d7454ba9790f1ba602205e470453a8a399f15baf463f9deceb53acc5ca64459149688bd2760c65424339", + "result" : "valid" + }, + { + "tcId" : 326, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31303534323430373035", + "sig" : "30440220614ea84acf736527dd73602cd4bb4eea1dfebebd5ad8aca52aa0228cf7b99a880220737cc85f5f2d2f60d1b8183f3ed490e4de14368e96a9482c2a4dd193195c902f", + "result" : "valid" + }, + { + "tcId" : 327, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35313734343438313937", + "sig" : "3045022100bead6734ebe44b810d3fb2ea00b1732945377338febfd439a8d74dfbd0f942fa02206bb18eae36616a7d3cad35919fd21a8af4bbe7a10f73b3e036a46b103ef56e2a", + "result" : "valid" + }, + { + "tcId" : 328, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31393637353631323531", + "sig" : "30440220499625479e161dacd4db9d9ce64854c98d922cbf212703e9654fae182df9bad2022042c177cf37b8193a0131108d97819edd9439936028864ac195b64fca76d9d693", + "result" : "valid" + }, + { + "tcId" : 329, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33343437323533333433", + "sig" : "3045022008f16b8093a8fb4d66a2c8065b541b3d31e3bfe694f6b89c50fb1aaa6ff6c9b20221009d6455e2d5d1779748573b611cb95d4a21f967410399b39b535ba3e5af81ca2e", + "result" : "valid" + }, + { + "tcId" : 330, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "333638323634333138", + "sig" : "3046022100be26231b6191658a19dd72ddb99ed8f8c579b6938d19bce8eed8dc2b338cb5f8022100e1d9a32ee56cffed37f0f22b2dcb57d5c943c14f79694a03b9c5e96952575c89", + "result" : "valid" + }, + { + "tcId" : 331, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33323631313938363038", + "sig" : "3045022015e76880898316b16204ac920a02d58045f36a229d4aa4f812638c455abe0443022100e74d357d3fcb5c8c5337bd6aba4178b455ca10e226e13f9638196506a1939123", + "result" : "valid" + }, + { + "tcId" : 332, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "39363738373831303934", + "sig" : "30440220352ecb53f8df2c503a45f9846fc28d1d31e6307d3ddbffc1132315cc07f16dad02201348dfa9c482c558e1d05c5242ca1c39436726ecd28258b1899792887dd0a3c6", + "result" : "valid" + }, + { + "tcId" : 333, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34393538383233383233", + "sig" : "304402204a40801a7e606ba78a0da9882ab23c7677b8642349ed3d652c5bfa5f2a9558fb02203a49b64848d682ef7f605f2832f7384bdc24ed2925825bf8ea77dc5981725782", + "result" : "valid" + }, + { + "tcId" : 334, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "383234363337383337", + "sig" : "3045022100eacc5e1a8304a74d2be412b078924b3bb3511bac855c05c9e5e9e44df3d61e9602207451cd8e18d6ed1885dd827714847f96ec4bb0ed4c36ce9808db8f714204f6d1", + "result" : "valid" + }, + { + "tcId" : 335, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3131303230383333373736", + "sig" : "304502202f7a5e9e5771d424f30f67fdab61e8ce4f8cd1214882adb65f7de94c31577052022100ac4e69808345809b44acb0b2bd889175fb75dd050c5a449ab9528f8f78daa10c", + "result" : "valid" + }, + { + "tcId" : 336, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "313333383731363438", + "sig" : "3045022100ffcda40f792ce4d93e7e0f0e95e1a2147dddd7f6487621c30a03d710b3300219022079938b55f8a17f7ed7ba9ade8f2065a1fa77618f0b67add8d58c422c2453a49a", + "result" : "valid" + }, + { + "tcId" : 337, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "333232313434313632", + "sig" : "304602210081f2359c4faba6b53d3e8c8c3fcc16a948350f7ab3a588b28c17603a431e39a8022100cd6f6a5cc3b55ead0ff695d06c6860b509e46d99fccefb9f7f9e101857f74300", + "result" : "valid" + }, + { + "tcId" : 338, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130363836363535353436", + "sig" : "3045022100dfc8bf520445cbb8ee1596fb073ea283ea130251a6fdffa5c3f5f2aaf75ca8080220048e33efce147c9dd92823640e338e68bfd7d0dc7a4905b3a7ac711e577e90e7", + "result" : "valid" + }, + { + "tcId" : 339, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3632313535323436", + "sig" : "3046022100ad019f74c6941d20efda70b46c53db166503a0e393e932f688227688ba6a576202210093320eb7ca0710255346bdbb3102cdcf7964ef2e0988e712bc05efe16c199345", + "result" : "valid" + }, + { + "tcId" : 340, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37303330383138373734", + "sig" : "3046022100ac8096842e8add68c34e78ce11dd71e4b54316bd3ebf7fffdeb7bd5a3ebc1883022100f5ca2f4f23d674502d4caf85d187215d36e3ce9f0ce219709f21a3aac003b7a8", + "result" : "valid" + }, + { + "tcId" : 341, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35393234353233373434", + "sig" : "30440220677b2d3a59b18a5ff939b70ea002250889ddcd7b7b9d776854b4943693fb92f702206b4ba856ade7677bf30307b21f3ccda35d2f63aee81efd0bab6972cc0795db55", + "result" : "valid" + }, + { + "tcId" : 342, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31343935353836363231", + "sig" : "30450220479e1ded14bcaed0379ba8e1b73d3115d84d31d4b7c30e1f05e1fc0d5957cfb0022100918f79e35b3d89487cf634a4f05b2e0c30857ca879f97c771e877027355b2443", + "result" : "valid" + }, + { + "tcId" : 343, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34303035333134343036", + "sig" : "3044022043dfccd0edb9e280d9a58f01164d55c3d711e14b12ac5cf3b64840ead512a0a302201dbe33fa8ba84533cd5c4934365b3442ca1174899b78ef9a3199f49584389772", + "result" : "valid" + }, + { + "tcId" : 344, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33303936343537353132", + "sig" : "304402205b09ab637bd4caf0f4c7c7e4bca592fea20e9087c259d26a38bb4085f0bbff11022045b7eb467b6748af618e9d80d6fdcd6aa24964e5a13f885bca8101de08eb0d75", + "result" : "valid" + }, + { + "tcId" : 345, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32373834303235363230", + "sig" : "304502205e9b1c5a028070df5728c5c8af9b74e0667afa570a6cfa0114a5039ed15ee06f022100b1360907e2d9785ead362bb8d7bd661b6c29eeffd3c5037744edaeb9ad990c20", + "result" : "valid" + }, + { + "tcId" : 346, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32363138373837343138", + "sig" : "304502200671a0a85c2b72d54a2fb0990e34538b4890050f5a5712f6d1a7a5fb8578f32e022100db1846bab6b7361479ab9c3285ca41291808f27fd5bd4fdac720e5854713694c", + "result" : "valid" + }, + { + "tcId" : 347, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31363432363235323632", + "sig" : "304402207673f8526748446477dbbb0590a45492c5d7d69859d301abbaedb35b2095103a02203dc70ddf9c6b524d886bed9e6af02e0e4dec0d417a414fed3807ef4422913d7c", + "result" : "valid" + }, + { + "tcId" : 348, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36383234313839343336", + "sig" : "304402207f085441070ecd2bb21285089ebb1aa6450d1a06c36d3ff39dfd657a796d12b50220249712012029870a2459d18d47da9aa492a5e6cb4b2d8dafa9e4c5c54a2b9a8b", + "result" : "valid" + }, + { + "tcId" : 349, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "343834323435343235", + "sig" : "3046022100914c67fb61dd1e27c867398ea7322d5ab76df04bc5aa6683a8e0f30a5d287348022100fa07474031481dda4953e3ac1959ee8cea7e66ec412b38d6c96d28f6d37304ea", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040ad99500288d466940031d72a9f5445a4d43784640855bf0a69874d2de5fe103c5011e6ef2c42dcd50d5d3d29f99ae6eba2c80c9244f4c5422f0979ff0c3ba5e", + "wx" : "0ad99500288d466940031d72a9f5445a4d43784640855bf0a69874d2de5fe103", + "wy" : "00c5011e6ef2c42dcd50d5d3d29f99ae6eba2c80c9244f4c5422f0979ff0c3ba5e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040ad99500288d466940031d72a9f5445a4d43784640855bf0a69874d2de5fe103c5011e6ef2c42dcd50d5d3d29f99ae6eba2c80c9244f4c5422f0979ff0c3ba5e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECtmVACiNRmlAAx1yqfVEWk1DeEZA\nhVvwpph00t5f4QPFAR5u8sQtzVDV09Kfma5uuiyAySRPTFQi8Jef8MO6Xg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 350, + "comment" : "k*G has a large x-coordinate", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "303502104319055358e8617b0c46353d039cdaab022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "valid" + }, + { + "tcId" : 351, + "comment" : "r too large", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000fffffffffffffffffffffffc022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ab05fd9d0de26b9ce6f4819652d9fc69193d0aa398f0fba8013e09c58220455419235271228c786759095d12b75af0692dd4103f19f6a8c32f49435a1e9b8d45", + "wx" : "00ab05fd9d0de26b9ce6f4819652d9fc69193d0aa398f0fba8013e09c582204554", + "wy" : "19235271228c786759095d12b75af0692dd4103f19f6a8c32f49435a1e9b8d45" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ab05fd9d0de26b9ce6f4819652d9fc69193d0aa398f0fba8013e09c58220455419235271228c786759095d12b75af0692dd4103f19f6a8c32f49435a1e9b8d45", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqwX9nQ3ia5zm9IGWUtn8aRk9CqOY\n8PuoAT4JxYIgRVQZI1JxIox4Z1kJXRK3WvBpLdQQPxn2qMMvSUNaHpuNRQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 352, + "comment" : "r,s are large", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0480984f39a1ff38a86a68aa4201b6be5dfbfecf876219710b07badf6fdd4c6c5611feb97390d9826e7a06dfb41871c940d74415ed3cac2089f1445019bb55ed95", + "wx" : "0080984f39a1ff38a86a68aa4201b6be5dfbfecf876219710b07badf6fdd4c6c56", + "wy" : "11feb97390d9826e7a06dfb41871c940d74415ed3cac2089f1445019bb55ed95" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000480984f39a1ff38a86a68aa4201b6be5dfbfecf876219710b07badf6fdd4c6c5611feb97390d9826e7a06dfb41871c940d74415ed3cac2089f1445019bb55ed95", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEgJhPOaH/OKhqaKpCAba+Xfv+z4di\nGXELB7rfb91MbFYR/rlzkNmCbnoG37QYcclA10QV7TysIInxRFAZu1XtlQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 353, + "comment" : "r and s^-1 have a large Hamming weight", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100909135bdb6799286170f5ead2de4f6511453fe50914f3df2de54a36383df8dd4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044201b4272944201c3294f5baa9a3232b6dd687495fcc19a70a95bc602b4f7c0595c37eba9ee8171c1bb5ac6feaf753bc36f463e3aef16629572c0c0a8fb0800e", + "wx" : "4201b4272944201c3294f5baa9a3232b6dd687495fcc19a70a95bc602b4f7c05", + "wy" : "0095c37eba9ee8171c1bb5ac6feaf753bc36f463e3aef16629572c0c0a8fb0800e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044201b4272944201c3294f5baa9a3232b6dd687495fcc19a70a95bc602b4f7c0595c37eba9ee8171c1bb5ac6feaf753bc36f463e3aef16629572c0c0a8fb0800e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQgG0JylEIBwylPW6qaMjK23Wh0lf\nzBmnCpW8YCtPfAWVw366nugXHBu1rG/q91O8NvRj467xZilXLAwKj7CADg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 354, + "comment" : "r and s^-1 have a large Hamming weight", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022027b4577ca009376f71303fd5dd227dcef5deb773ad5f5a84360644669ca249a5", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a71af64de5126a4a4e02b7922d66ce9415ce88a4c9d25514d91082c8725ac9575d47723c8fbe580bb369fec9c2665d8e30a435b9932645482e7c9f11e872296b", + "wx" : "00a71af64de5126a4a4e02b7922d66ce9415ce88a4c9d25514d91082c8725ac957", + "wy" : "5d47723c8fbe580bb369fec9c2665d8e30a435b9932645482e7c9f11e872296b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a71af64de5126a4a4e02b7922d66ce9415ce88a4c9d25514d91082c8725ac9575d47723c8fbe580bb369fec9c2665d8e30a435b9932645482e7c9f11e872296b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEpxr2TeUSakpOAreSLWbOlBXOiKTJ\n0lUU2RCCyHJayVddR3I8j75YC7Np/snCZl2OMKQ1uZMmRUgufJ8R6HIpaw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 355, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020101", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046627cec4f0731ea23fc2931f90ebe5b7572f597d20df08fc2b31ee8ef16b15726170ed77d8d0a14fc5c9c3c4c9be7f0d3ee18f709bb275eaf2073e258fe694a5", + "wx" : "6627cec4f0731ea23fc2931f90ebe5b7572f597d20df08fc2b31ee8ef16b1572", + "wy" : "6170ed77d8d0a14fc5c9c3c4c9be7f0d3ee18f709bb275eaf2073e258fe694a5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046627cec4f0731ea23fc2931f90ebe5b7572f597d20df08fc2b31ee8ef16b15726170ed77d8d0a14fc5c9c3c4c9be7f0d3ee18f709bb275eaf2073e258fe694a5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZifOxPBzHqI/wpMfkOvlt1cvWX0g\n3wj8KzHujvFrFXJhcO132NChT8XJw8TJvn8NPuGPcJuyderyBz4lj+aUpQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 356, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020103", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045a7c8825e85691cce1f5e7544c54e73f14afc010cb731343262ca7ec5a77f5bfef6edf62a4497c1bd7b147fb6c3d22af3c39bfce95f30e13a16d3d7b2812f813", + "wx" : "5a7c8825e85691cce1f5e7544c54e73f14afc010cb731343262ca7ec5a77f5bf", + "wy" : "00ef6edf62a4497c1bd7b147fb6c3d22af3c39bfce95f30e13a16d3d7b2812f813" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045a7c8825e85691cce1f5e7544c54e73f14afc010cb731343262ca7ec5a77f5bfef6edf62a4497c1bd7b147fb6c3d22af3c39bfce95f30e13a16d3d7b2812f813", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWnyIJehWkczh9edUTFTnPxSvwBDL\ncxNDJiyn7Fp39b/vbt9ipEl8G9exR/tsPSKvPDm/zpXzDhOhbT17KBL4Ew==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 357, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020105", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04cbe0c29132cd738364fedd603152990c048e5e2fff996d883fa6caca7978c73770af6a8ce44cb41224b2603606f4c04d188e80bff7cc31ad5189d4ab0d70e8c1", + "wx" : "00cbe0c29132cd738364fedd603152990c048e5e2fff996d883fa6caca7978c737", + "wy" : "70af6a8ce44cb41224b2603606f4c04d188e80bff7cc31ad5189d4ab0d70e8c1" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cbe0c29132cd738364fedd603152990c048e5e2fff996d883fa6caca7978c73770af6a8ce44cb41224b2603606f4c04d188e80bff7cc31ad5189d4ab0d70e8c1", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEy+DCkTLNc4Nk/t1gMVKZDASOXi//\nmW2IP6bKynl4xzdwr2qM5Ey0EiSyYDYG9MBNGI6Av/fMMa1RidSrDXDowQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 358, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020106", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042ef747671c97d9c7f9cb2f6a30d678c3d84757ba241ef7183d51a29f52d87c2ea8fb2ea635b761baefc1c4ded2099281b844e13e044c328553bbbafa337d8a76", + "wx" : "2ef747671c97d9c7f9cb2f6a30d678c3d84757ba241ef7183d51a29f52d87c2e", + "wy" : "00a8fb2ea635b761baefc1c4ded2099281b844e13e044c328553bbbafa337d8a76" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042ef747671c97d9c7f9cb2f6a30d678c3d84757ba241ef7183d51a29f52d87c2ea8fb2ea635b761baefc1c4ded2099281b844e13e044c328553bbbafa337d8a76", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELvdHZxyX2cf5yy9qMNZ4w9hHV7ok\nHvcYPVGin1LYfC6o+y6mNbdhuu/BxN7SCZKBuEThPgRMMoVTu7r6M32Kdg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 359, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020101", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04931cc49cda4d87d25b1601c56c3b83b4f45e44971998f2d3e7d3c55152214edf058dc140abbba42fc1ddbf30dab8eb9b46ee7338b3f7ee96242bf45e1df5e995", + "wx" : "00931cc49cda4d87d25b1601c56c3b83b4f45e44971998f2d3e7d3c55152214edf", + "wy" : "058dc140abbba42fc1ddbf30dab8eb9b46ee7338b3f7ee96242bf45e1df5e995" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004931cc49cda4d87d25b1601c56c3b83b4f45e44971998f2d3e7d3c55152214edf058dc140abbba42fc1ddbf30dab8eb9b46ee7338b3f7ee96242bf45e1df5e995", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkxzEnNpNh9JbFgHFbDuDtPReRJcZ\nmPLT59PFUVIhTt8FjcFAq7ukL8HdvzDauOubRu5zOLP37pYkK/ReHfXplQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 360, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020103", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04899a4af61867e3f3c190dbb48f8bc9fc74b70a467a4a1f06477b3af2f39ab8ed47ac000f9ea8a3034939bf48ad5d061a69fc8495ae4df2dbec7effa03a0062b3", + "wx" : "00899a4af61867e3f3c190dbb48f8bc9fc74b70a467a4a1f06477b3af2f39ab8ed", + "wy" : "47ac000f9ea8a3034939bf48ad5d061a69fc8495ae4df2dbec7effa03a0062b3" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004899a4af61867e3f3c190dbb48f8bc9fc74b70a467a4a1f06477b3af2f39ab8ed47ac000f9ea8a3034939bf48ad5d061a69fc8495ae4df2dbec7effa03a0062b3", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEiZpK9hhn4/PBkNu0j4vJ/HS3CkZ6\nSh8GR3s68vOauO1HrAAPnqijA0k5v0itXQYaafyEla5N8tvsfv+gOgBisw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 361, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020106", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d03eb09913cc20c6a8d0070f0d8d2a7f63527fafa44117fce6bd1ef2aa4ae3c46d5df3f45ac58fa334c6d102381b3120b7a2455600dcaff3d1a845514f12bf46", + "wx" : "00d03eb09913cc20c6a8d0070f0d8d2a7f63527fafa44117fce6bd1ef2aa4ae3c4", + "wy" : "6d5df3f45ac58fa334c6d102381b3120b7a2455600dcaff3d1a845514f12bf46" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d03eb09913cc20c6a8d0070f0d8d2a7f63527fafa44117fce6bd1ef2aa4ae3c46d5df3f45ac58fa334c6d102381b3120b7a2455600dcaff3d1a845514f12bf46", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0D6wmRPMIMao0AcPDY0qf2NSf6+k\nQRf85r0e8qpK48RtXfP0WsWPozTG0QI4GzEgt6JFVgDcr/PRqEVRTxK/Rg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 362, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020107", + "result" : "valid" + }, + { + "tcId" : 363, + "comment" : "r is larger than n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632557020107", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043a72476291571193b4d109b2c37b59f2807e8fe9cffd804eacded903e77ca0da592dbc74fee0ca7508cc7bc282b0c51a143286ff53c60131668e7a0929e4ed04", + "wx" : "3a72476291571193b4d109b2c37b59f2807e8fe9cffd804eacded903e77ca0da", + "wy" : "592dbc74fee0ca7508cc7bc282b0c51a143286ff53c60131668e7a0929e4ed04" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043a72476291571193b4d109b2c37b59f2807e8fe9cffd804eacded903e77ca0da592dbc74fee0ca7508cc7bc282b0c51a143286ff53c60131668e7a0929e4ed04", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEOnJHYpFXEZO00Qmyw3tZ8oB+j+nP\n/YBOrN7ZA+d8oNpZLbx0/uDKdQjMe8KCsMUaFDKG/1PGATFmjnoJKeTtBA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 364, + "comment" : "s is larger than n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3026020106022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc75fbd8", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d0f73792203716afd4be4329faa48d269f15313ebbba379d7783c97bf3e890d9971f4a3206605bec21782bf5e275c714417e8f566549e6bc68690d2363c89cc1", + "wx" : "00d0f73792203716afd4be4329faa48d269f15313ebbba379d7783c97bf3e890d9", + "wy" : "00971f4a3206605bec21782bf5e275c714417e8f566549e6bc68690d2363c89cc1" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d0f73792203716afd4be4329faa48d269f15313ebbba379d7783c97bf3e890d9971f4a3206605bec21782bf5e275c714417e8f566549e6bc68690d2363c89cc1", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0Pc3kiA3Fq/UvkMp+qSNJp8VMT67\nujedd4PJe/PokNmXH0oyBmBb7CF4K/XidccUQX6PVmVJ5rxoaQ0jY8icwQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 365, + "comment" : "small r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3027020201000221008f1e3c7862c58b16bb76eddbb76eddbb516af4f63f2d74d76e0d28c9bb75ea88", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044838b2be35a6276a80ef9e228140f9d9b96ce83b7a254f71ccdebbb8054ce05ffa9cbc123c919b19e00238198d04069043bd660a828814051fcb8aac738a6c6b", + "wx" : "4838b2be35a6276a80ef9e228140f9d9b96ce83b7a254f71ccdebbb8054ce05f", + "wy" : "00fa9cbc123c919b19e00238198d04069043bd660a828814051fcb8aac738a6c6b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044838b2be35a6276a80ef9e228140f9d9b96ce83b7a254f71ccdebbb8054ce05ffa9cbc123c919b19e00238198d04069043bd660a828814051fcb8aac738a6c6b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAESDiyvjWmJ2qA754igUD52bls6Dt6\nJU9xzN67uAVM4F/6nLwSPJGbGeACOBmNBAaQQ71mCoKIFAUfy4qsc4psaw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 366, + "comment" : "smallish r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302c02072d9b4d347952d6022100ef3043e7329581dbb3974497710ab11505ee1c87ff907beebadd195a0ffe6d7a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "047393983ca30a520bbc4783dc9960746aab444ef520c0a8e771119aa4e74b0f64e9d7be1ab01a0bf626e709863e6a486dbaf32793afccf774e2c6cd27b1857526", + "wx" : "7393983ca30a520bbc4783dc9960746aab444ef520c0a8e771119aa4e74b0f64", + "wy" : "00e9d7be1ab01a0bf626e709863e6a486dbaf32793afccf774e2c6cd27b1857526" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200047393983ca30a520bbc4783dc9960746aab444ef520c0a8e771119aa4e74b0f64e9d7be1ab01a0bf626e709863e6a486dbaf32793afccf774e2c6cd27b1857526", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEc5OYPKMKUgu8R4PcmWB0aqtETvUg\nwKjncRGapOdLD2Tp174asBoL9ibnCYY+akhtuvMnk6/M93Tixs0nsYV1Jg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 367, + "comment" : "100-bit r and small s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3032020d1033e67e37b32b445580bf4eff0221008b748b74000000008b748b748b748b7466e769ad4a16d3dcd87129b8e91d1b4d", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045ac331a1103fe966697379f356a937f350588a05477e308851b8a502d5dfcdc5fe9993df4b57939b2b8da095bf6d794265204cfe03be995a02e65d408c871c0b", + "wx" : "5ac331a1103fe966697379f356a937f350588a05477e308851b8a502d5dfcdc5", + "wy" : "00fe9993df4b57939b2b8da095bf6d794265204cfe03be995a02e65d408c871c0b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045ac331a1103fe966697379f356a937f350588a05477e308851b8a502d5dfcdc5fe9993df4b57939b2b8da095bf6d794265204cfe03be995a02e65d408c871c0b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWsMxoRA/6WZpc3nzVqk381BYigVH\nfjCIUbilAtXfzcX+mZPfS1eTmyuNoJW/bXlCZSBM/gO+mVoC5l1AjIccCw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 368, + "comment" : "small r and 100 bit s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302702020100022100ef9f6ba4d97c09d03178fa20b4aaad83be3cf9cb824a879fec3270fc4b81ef5b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041d209be8de2de877095a399d3904c74cc458d926e27bb8e58e5eae5767c41509dd59e04c214f7b18dce351fc2a549893a6860e80163f38cc60a4f2c9d040d8c9", + "wx" : "1d209be8de2de877095a399d3904c74cc458d926e27bb8e58e5eae5767c41509", + "wy" : "00dd59e04c214f7b18dce351fc2a549893a6860e80163f38cc60a4f2c9d040d8c9" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041d209be8de2de877095a399d3904c74cc458d926e27bb8e58e5eae5767c41509dd59e04c214f7b18dce351fc2a549893a6860e80163f38cc60a4f2c9d040d8c9", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEHSCb6N4t6HcJWjmdOQTHTMRY2Sbi\ne7jljl6uV2fEFQndWeBMIU97GNzjUfwqVJiTpoYOgBY/OMxgpPLJ0EDYyQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 369, + "comment" : "100-bit r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3032020d062522bbd3ecbe7c39e93e7c25022100ef9f6ba4d97c09d03178fa20b4aaad83be3cf9cb824a879fec3270fc4b81ef5b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04083539fbee44625e3acaafa2fcb41349392cef0633a1b8fabecee0c133b10e99915c1ebe7bf00df8535196770a58047ae2a402f26326bb7d41d4d7616337911e", + "wx" : "083539fbee44625e3acaafa2fcb41349392cef0633a1b8fabecee0c133b10e99", + "wy" : "00915c1ebe7bf00df8535196770a58047ae2a402f26326bb7d41d4d7616337911e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004083539fbee44625e3acaafa2fcb41349392cef0633a1b8fabecee0c133b10e99915c1ebe7bf00df8535196770a58047ae2a402f26326bb7d41d4d7616337911e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECDU5++5EYl46yq+i/LQTSTks7wYz\nobj6vs7gwTOxDpmRXB6+e/AN+FNRlncKWAR64qQC8mMmu31B1NdhYzeRHg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 370, + "comment" : "r and s^-1 are close to n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3045022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6324d50220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e075effd9607d08d5f34e3652f64cfa3bd6d20c58d0a232f058491260ab212a4cc61760ac8b0680c1b644c03cc628ba9dc4a3c0561368489c692bd40f43aa3ca", + "wx" : "00e075effd9607d08d5f34e3652f64cfa3bd6d20c58d0a232f058491260ab212a4", + "wy" : "00cc61760ac8b0680c1b644c03cc628ba9dc4a3c0561368489c692bd40f43aa3ca" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e075effd9607d08d5f34e3652f64cfa3bd6d20c58d0a232f058491260ab212a4cc61760ac8b0680c1b644c03cc628ba9dc4a3c0561368489c692bd40f43aa3ca", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE4HXv/ZYH0I1fNONlL2TPo71tIMWN\nCiMvBYSRJgqyEqTMYXYKyLBoDBtkTAPMYoup3Eo8BWE2hInGkr1A9Dqjyg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 371, + "comment" : "r and s are 64-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30160209009c44febf31c3594f020900839ed28247c2b06b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04cffb758c3073ea3c08efd9f7f17a85b6ae385c5a140c146ad5f1f5a826718bc8dfdc6bebc894144c6d418ac5d97339726ad2ae925df868426e5628e9f4e62342", + "wx" : "00cffb758c3073ea3c08efd9f7f17a85b6ae385c5a140c146ad5f1f5a826718bc8", + "wy" : "00dfdc6bebc894144c6d418ac5d97339726ad2ae925df868426e5628e9f4e62342" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cffb758c3073ea3c08efd9f7f17a85b6ae385c5a140c146ad5f1f5a826718bc8dfdc6bebc894144c6d418ac5d97339726ad2ae925df868426e5628e9f4e62342", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEz/t1jDBz6jwI79n38XqFtq44XFoU\nDBRq1fH1qCZxi8jf3GvryJQUTG1BisXZczlyatKukl34aEJuVijp9OYjQg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 372, + "comment" : "r and s are 100-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "301e020d09df8b682430beef6f5fd7c7cd020d0fd0a62e13778f4222a0d61c8a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b98740e69e61a325d5f772e3b5c4f67fb7150b16a9afeca9ddc4afcbb6fa0549c446e814138e4ebc82dbf86a390056d4595dcf45e381fef217a4597d7bd51498", + "wx" : "00b98740e69e61a325d5f772e3b5c4f67fb7150b16a9afeca9ddc4afcbb6fa0549", + "wy" : "00c446e814138e4ebc82dbf86a390056d4595dcf45e381fef217a4597d7bd51498" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b98740e69e61a325d5f772e3b5c4f67fb7150b16a9afeca9ddc4afcbb6fa0549c446e814138e4ebc82dbf86a390056d4595dcf45e381fef217a4597d7bd51498", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEuYdA5p5hoyXV93LjtcT2f7cVCxap\nr+yp3cSvy7b6BUnERugUE45OvILb+Go5AFbUWV3PReOB/vIXpFl9e9UUmA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 373, + "comment" : "r and s are 128-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30260211008a598e563a89f526c32ebec8de26367c02110084f633e2042630e99dd0f1e16f7a04bf", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0484536a270c3932bb2084732adf2c768efc6d3977e5220229ea9a44888b8f9d7b1766398cdac2fc8000017b29a7ba15a58f196037f35f7008ed4286ddff00fd46", + "wx" : "0084536a270c3932bb2084732adf2c768efc6d3977e5220229ea9a44888b8f9d7b", + "wy" : "1766398cdac2fc8000017b29a7ba15a58f196037f35f7008ed4286ddff00fd46" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000484536a270c3932bb2084732adf2c768efc6d3977e5220229ea9a44888b8f9d7b1766398cdac2fc8000017b29a7ba15a58f196037f35f7008ed4286ddff00fd46", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhFNqJww5MrsghHMq3yx2jvxtOXfl\nIgIp6ppEiIuPnXsXZjmM2sL8gAABeymnuhWljxlgN/NfcAjtQobd/wD9Rg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 374, + "comment" : "r and s are 160-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302e021500aa6eeb5823f7fa31b466bb473797f0d0314c0bdf021500e2977c479e6d25703cebbc6bd561938cc9d1bfb9", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048aeb368a7027a4d64abdea37390c0c1d6a26f399e2d9734de1eb3d0e1937387405bd13834715e1dbae9b875cf07bd55e1b6691c7f7536aef3b19bf7a4adf576d", + "wx" : "008aeb368a7027a4d64abdea37390c0c1d6a26f399e2d9734de1eb3d0e19373874", + "wy" : "05bd13834715e1dbae9b875cf07bd55e1b6691c7f7536aef3b19bf7a4adf576d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048aeb368a7027a4d64abdea37390c0c1d6a26f399e2d9734de1eb3d0e1937387405bd13834715e1dbae9b875cf07bd55e1b6691c7f7536aef3b19bf7a4adf576d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEius2inAnpNZKveo3OQwMHWom85ni\n2XNN4es9Dhk3OHQFvRODRxXh266bh1zwe9VeG2aRx/dTau87Gb96St9XbQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 375, + "comment" : "s == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70020101", + "result" : "valid" + }, + { + "tcId" : 376, + "comment" : "s == 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70020100", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0461722eaba731c697c7a9ba4d0afdbb5713d8aa12b0eab601bb33dbaf792c5adc272cd993b2b663aba5b3a26c101182ff178684945e83879e71598b95fe647dfc", + "wx" : "61722eaba731c697c7a9ba4d0afdbb5713d8aa12b0eab601bb33dbaf792c5adc", + "wy" : "272cd993b2b663aba5b3a26c101182ff178684945e83879e71598b95fe647dfc" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000461722eaba731c697c7a9ba4d0afdbb5713d8aa12b0eab601bb33dbaf792c5adc272cd993b2b663aba5b3a26c101182ff178684945e83879e71598b95fe647dfc", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYXIuq6cxxpfHqbpNCv27VxPYqhKw\n6rYBuzPbr3ksWtwnLNmTsrZjq6WzomwQEYL/F4aElF6Dh55xWYuV/mR9/A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 377, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022002f676969f451a8ccafa4c4f09791810e6d632dbd60b1d5540f3284fbe1889b0", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04c4c91981e720e20d7e478ff19d09b95a98f58c0f469b72801a8ce844a347316594afcd4188182e7779889b3258d0368ece1e66797fe7c648c6f0b9e26bd71871", + "wx" : "00c4c91981e720e20d7e478ff19d09b95a98f58c0f469b72801a8ce844a3473165", + "wy" : "0094afcd4188182e7779889b3258d0368ece1e66797fe7c648c6f0b9e26bd71871" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c4c91981e720e20d7e478ff19d09b95a98f58c0f469b72801a8ce844a347316594afcd4188182e7779889b3258d0368ece1e66797fe7c648c6f0b9e26bd71871", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExMkZgecg4g1+R4/xnQm5Wpj1jA9G\nm3KAGozoRKNHMWWUr81BiBgud3mImzJY0DaOzh5meX/nxkjG8Lnia9cYcQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 378, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002204e260962e33362ef0046126d2d5a4edc6947ab20e19b8ec19cf79e5908b6e628", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d58d47bf49bc8f416641f6f760fcbca80aa52a814e56a5fa40bab44fd6f6317216deaa84d45d8e0e29cc9ecf5653f8ee6444750813becae8deb42b04ba07a634", + "wx" : "00d58d47bf49bc8f416641f6f760fcbca80aa52a814e56a5fa40bab44fd6f63172", + "wy" : "16deaa84d45d8e0e29cc9ecf5653f8ee6444750813becae8deb42b04ba07a634" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d58d47bf49bc8f416641f6f760fcbca80aa52a814e56a5fa40bab44fd6f6317216deaa84d45d8e0e29cc9ecf5653f8ee6444750813becae8deb42b04ba07a634", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE1Y1Hv0m8j0FmQfb3YPy8qAqlKoFO\nVqX6QLq0T9b2MXIW3qqE1F2ODinMns9WU/juZER1CBO+yujetCsEugemNA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 379, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220077ed0d8f20f697d8fc591ac64dd5219c7932122b4f9b9ec6441e44a0092cf21", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0491e305822e5e44f3fdb616e2ef42cd98f241b86e9f68815bc4dba6a945e4eefb3c5937e2ac1d9466f6d65e49b35fc8d75ffc22e1fe2f32af42f5fa3c26f9b4b0", + "wx" : "0091e305822e5e44f3fdb616e2ef42cd98f241b86e9f68815bc4dba6a945e4eefb", + "wy" : "3c5937e2ac1d9466f6d65e49b35fc8d75ffc22e1fe2f32af42f5fa3c26f9b4b0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000491e305822e5e44f3fdb616e2ef42cd98f241b86e9f68815bc4dba6a945e4eefb3c5937e2ac1d9466f6d65e49b35fc8d75ffc22e1fe2f32af42f5fa3c26f9b4b0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkeMFgi5eRPP9thbi70LNmPJBuG6f\naIFbxNumqUXk7vs8WTfirB2UZvbWXkmzX8jXX/wi4f4vMq9C9fo8Jvm0sA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 380, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002203e0292a67e181c6c0105ee35e956e78e9bdd033c6e71ae57884039a245e4175f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0424a0bc4d16dbbd40d2fd81a7c3f8d8ec741607d5bb406a0611cc60d0e683bd46b575cad039c15f7f3dffcfc007b4b0f743c871ecc76a504a32672fd84526d861", + "wx" : "24a0bc4d16dbbd40d2fd81a7c3f8d8ec741607d5bb406a0611cc60d0e683bd46", + "wy" : "00b575cad039c15f7f3dffcfc007b4b0f743c871ecc76a504a32672fd84526d861" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000424a0bc4d16dbbd40d2fd81a7c3f8d8ec741607d5bb406a0611cc60d0e683bd46b575cad039c15f7f3dffcfc007b4b0f743c871ecc76a504a32672fd84526d861", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJKC8TRbbvUDS/YGnw/jY7HQWB9W7\nQGoGEcxg0OaDvUa1dcrQOcFffz3/z8AHtLD3Q8hx7MdqUEoyZy/YRSbYYQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 381, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022013d22b06d6b8f5d97e0c64962b4a3bae30f668ca6217ef5b35d799f159e23ebe", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d24dd06745cafb39186d22a92aa0e58169a79ab69488628a9da5ed3ef747269b7e9209d98faeb95355948adae61d5291c6015d3ee9513486d886fb05cbd25c6a", + "wx" : "00d24dd06745cafb39186d22a92aa0e58169a79ab69488628a9da5ed3ef747269b", + "wy" : "7e9209d98faeb95355948adae61d5291c6015d3ee9513486d886fb05cbd25c6a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d24dd06745cafb39186d22a92aa0e58169a79ab69488628a9da5ed3ef747269b7e9209d98faeb95355948adae61d5291c6015d3ee9513486d886fb05cbd25c6a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0k3QZ0XK+zkYbSKpKqDlgWmnmraU\niGKKnaXtPvdHJpt+kgnZj665U1WUitrmHVKRxgFdPulRNIbYhvsFy9Jcag==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 382, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002204523ce342e4994bb8968bf6613f60c06c86111f15a3a389309e72cd447d5dd99", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048200f148e7eab1581bcd1e23946f8a9b8191d9641f9560341721f9d3fec3d63ece795669e0481e035de8623d716a6984d0a4809d6c65519443ee55260f7f3dcb", + "wx" : "008200f148e7eab1581bcd1e23946f8a9b8191d9641f9560341721f9d3fec3d63e", + "wy" : "00ce795669e0481e035de8623d716a6984d0a4809d6c65519443ee55260f7f3dcb" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048200f148e7eab1581bcd1e23946f8a9b8191d9641f9560341721f9d3fec3d63ece795669e0481e035de8623d716a6984d0a4809d6c65519443ee55260f7f3dcb", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEggDxSOfqsVgbzR4jlG+Km4GR2WQf\nlWA0FyH50/7D1j7OeVZp4EgeA13oYj1xammE0KSAnWxlUZRD7lUmD389yw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 383, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022037d765be3c9c78189ad30edb5097a4db670de11686d01420e37039d4677f4809", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a8a69c5ed33b150ce8d37ac197070ed894c05d47258a80c9041d92486622024de85997c9666b60a393568efede8f4ca0167c1e10f626e62fc1b8c8e9c6ba6ed7", + "wx" : "00a8a69c5ed33b150ce8d37ac197070ed894c05d47258a80c9041d92486622024d", + "wy" : "00e85997c9666b60a393568efede8f4ca0167c1e10f626e62fc1b8c8e9c6ba6ed7" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a8a69c5ed33b150ce8d37ac197070ed894c05d47258a80c9041d92486622024de85997c9666b60a393568efede8f4ca0167c1e10f626e62fc1b8c8e9c6ba6ed7", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqKacXtM7FQzo03rBlwcO2JTAXUcl\nioDJBB2SSGYiAk3oWZfJZmtgo5NWjv7ej0ygFnweEPYm5i/BuMjpxrpu1w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 384, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022044237823b54e0c74c2bf5f759d9ac5f8cb897d537ffa92effd4f0bb6c9acd860", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ed0587e75b3b9a1dd0794f41d1729fcd432b2436cbf51c230d8bc7273273181735a57f09c7873d3964aa8102c9e25fa53070cd924cb7e3a459174740b8b71c34", + "wx" : "00ed0587e75b3b9a1dd0794f41d1729fcd432b2436cbf51c230d8bc72732731817", + "wy" : "35a57f09c7873d3964aa8102c9e25fa53070cd924cb7e3a459174740b8b71c34" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ed0587e75b3b9a1dd0794f41d1729fcd432b2436cbf51c230d8bc7273273181735a57f09c7873d3964aa8102c9e25fa53070cd924cb7e3a459174740b8b71c34", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7QWH51s7mh3QeU9B0XKfzUMrJDbL\n9RwjDYvHJzJzGBc1pX8Jx4c9OWSqgQLJ4l+lMHDNkky346RZF0dAuLccNA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 385, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220266d30a485385906054ca86d46f5f2b17e7f4646a3092092ad92877126538111", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04077091d99004a99ee08224e59a46a70495e6fba4eff681c3ce42127e588681ef4f1c16c77dfa440dde18245c9de76243d8f2fd9dea3f2782d6c04974d02f25dc", + "wx" : "077091d99004a99ee08224e59a46a70495e6fba4eff681c3ce42127e588681ef", + "wy" : "4f1c16c77dfa440dde18245c9de76243d8f2fd9dea3f2782d6c04974d02f25dc" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004077091d99004a99ee08224e59a46a70495e6fba4eff681c3ce42127e588681ef4f1c16c77dfa440dde18245c9de76243d8f2fd9dea3f2782d6c04974d02f25dc", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEB3CR2ZAEqZ7ggiTlmkanBJXm+6Tv\n9oHDzkISfliGge9PHBbHffpEDd4YJFyd52JD2PL9neo/J4LWwEl00C8l3A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 386, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220538c7b3798e84d0ce90340165806348971ed44db8f0c674f5f215968390f92ee", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04616a8b8e57d82c11678f5827911024cd23a16cb52a65f230fb554a7b110c35a5bb466660be5cab3e4b587c12b45bd998bd56c7d66c2f94d03a1a6d2028d8a154", + "wx" : "616a8b8e57d82c11678f5827911024cd23a16cb52a65f230fb554a7b110c35a5", + "wy" : "00bb466660be5cab3e4b587c12b45bd998bd56c7d66c2f94d03a1a6d2028d8a154" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004616a8b8e57d82c11678f5827911024cd23a16cb52a65f230fb554a7b110c35a5bb466660be5cab3e4b587c12b45bd998bd56c7d66c2f94d03a1a6d2028d8a154", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYWqLjlfYLBFnj1gnkRAkzSOhbLUq\nZfIw+1VKexEMNaW7RmZgvlyrPktYfBK0W9mYvVbH1mwvlNA6Gm0gKNihVA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 387, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206fef0ef15d1688e15e704c4e6bb8bb7f40d52d3af5c661bb78c4ed9b408699b3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0471dc92b2b1baa7612c4a53427a0d2dfe548fa9cf829bb6b248f736a5eb30b513f91c7dff1144cb36057c2b859f35bd666a7961833b06de0f45159fbae208e326", + "wx" : "71dc92b2b1baa7612c4a53427a0d2dfe548fa9cf829bb6b248f736a5eb30b513", + "wy" : "00f91c7dff1144cb36057c2b859f35bd666a7961833b06de0f45159fbae208e326" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000471dc92b2b1baa7612c4a53427a0d2dfe548fa9cf829bb6b248f736a5eb30b513f91c7dff1144cb36057c2b859f35bd666a7961833b06de0f45159fbae208e326", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcdySsrG6p2EsSlNCeg0t/lSPqc+C\nm7aySPc2peswtRP5HH3/EUTLNgV8K4WfNb1manlhgzsG3g9FFZ+64gjjJg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 388, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206f44275e9aeb1331efcb8d58f35c0252791427e403ad84daad51d247cc2a64c6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04662f43ae614bd9c90ff3fcded25cf0ef186b6967a47aa6aa7ae7f396594df931f5f94a525edd50d3738f7a28d03d7a2a70095c8f89de9bb2c645fea8d8bac9e0", + "wx" : "662f43ae614bd9c90ff3fcded25cf0ef186b6967a47aa6aa7ae7f396594df931", + "wy" : "00f5f94a525edd50d3738f7a28d03d7a2a70095c8f89de9bb2c645fea8d8bac9e0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004662f43ae614bd9c90ff3fcded25cf0ef186b6967a47aa6aa7ae7f396594df931f5f94a525edd50d3738f7a28d03d7a2a70095c8f89de9bb2c645fea8d8bac9e0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZi9DrmFL2ckP8/ze0lzw7xhraWek\neqaqeufzlllN+TH1+UpSXt1Q03OPeijQPXoqcAlcj4nem7LGRf6o2LrJ4A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 389, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022021323755b103d2f9da6ab83eccab9ad8598bcf625652f10e7a3eeee3c3945fb3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04dff107959bd2f7386497a5624430a0ab35e552c1a4e4dc9c298caeb96353170dcb5065d7947a676c76287ca8e430324f8a534b0ba6f21200e033c4b88852a3cc", + "wx" : "00dff107959bd2f7386497a5624430a0ab35e552c1a4e4dc9c298caeb96353170d", + "wy" : "00cb5065d7947a676c76287ca8e430324f8a534b0ba6f21200e033c4b88852a3cc" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004dff107959bd2f7386497a5624430a0ab35e552c1a4e4dc9c298caeb96353170dcb5065d7947a676c76287ca8e430324f8a534b0ba6f21200e033c4b88852a3cc", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3/EHlZvS9zhkl6ViRDCgqzXlUsGk\n5NycKYyuuWNTFw3LUGXXlHpnbHYofKjkMDJPilNLC6byEgDgM8S4iFKjzA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 390, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206c50acfe76de1289e7a5edb240f1c2a7879db6873d5d931f3c6ac467a6eac171", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bd0862b0bfba85036922e06f5458754aafc3075b603a814b3ac75659bf24d7528258a607ffca2cfe05a300cb4c3c4e1963bbb1bc54d320e16969f85aad243385", + "wx" : "00bd0862b0bfba85036922e06f5458754aafc3075b603a814b3ac75659bf24d752", + "wy" : "008258a607ffca2cfe05a300cb4c3c4e1963bbb1bc54d320e16969f85aad243385" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bd0862b0bfba85036922e06f5458754aafc3075b603a814b3ac75659bf24d7528258a607ffca2cfe05a300cb4c3c4e1963bbb1bc54d320e16969f85aad243385", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvQhisL+6hQNpIuBvVFh1Sq/DB1tg\nOoFLOsdWWb8k11KCWKYH/8os/gWjAMtMPE4ZY7uxvFTTIOFpafharSQzhQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 391, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220755b7fffb0b17ad57dca50fcefb7fe297b029df25e5ccb5069e8e70c2742c2a6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b533d4695dd5b8c5e07757e55e6e516f7e2c88fa0239e23f60e8ec07dd70f2871b134ee58cc583278456863f33c3a85d881f7d4a39850143e29d4eaf009afe47", + "wx" : "00b533d4695dd5b8c5e07757e55e6e516f7e2c88fa0239e23f60e8ec07dd70f287", + "wy" : "1b134ee58cc583278456863f33c3a85d881f7d4a39850143e29d4eaf009afe47" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b533d4695dd5b8c5e07757e55e6e516f7e2c88fa0239e23f60e8ec07dd70f2871b134ee58cc583278456863f33c3a85d881f7d4a39850143e29d4eaf009afe47", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEtTPUaV3VuMXgd1flXm5Rb34siPoC\nOeI/YOjsB91w8ocbE07ljMWDJ4RWhj8zw6hdiB99SjmFAUPinU6vAJr+Rw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 392, + "comment" : "point at infinity during verify", + "flags" : [ + "PointDuplication", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a80220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f50d371b91bfb1d7d14e1323523bc3aa8cbf2c57f9e284de628c8b4536787b86f94ad887ac94d527247cd2e7d0c8b1291c553c9730405380b14cbb209f5fa2dd", + "wx" : "00f50d371b91bfb1d7d14e1323523bc3aa8cbf2c57f9e284de628c8b4536787b86", + "wy" : "00f94ad887ac94d527247cd2e7d0c8b1291c553c9730405380b14cbb209f5fa2dd" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f50d371b91bfb1d7d14e1323523bc3aa8cbf2c57f9e284de628c8b4536787b86f94ad887ac94d527247cd2e7d0c8b1291c553c9730405380b14cbb209f5fa2dd", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9Q03G5G/sdfRThMjUjvDqoy/LFf5\n4oTeYoyLRTZ4e4b5StiHrJTVJyR80ufQyLEpHFU8lzBAU4CxTLsgn1+i3Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 393, + "comment" : "edge case for signature malleability", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a902207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a8", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0468ec6e298eafe16539156ce57a14b04a7047c221bafc3a582eaeb0d857c4d94697bed1af17850117fdb39b2324f220a5698ed16c426a27335bb385ac8ca6fb30", + "wx" : "68ec6e298eafe16539156ce57a14b04a7047c221bafc3a582eaeb0d857c4d946", + "wy" : "0097bed1af17850117fdb39b2324f220a5698ed16c426a27335bb385ac8ca6fb30" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000468ec6e298eafe16539156ce57a14b04a7047c221bafc3a582eaeb0d857c4d94697bed1af17850117fdb39b2324f220a5698ed16c426a27335bb385ac8ca6fb30", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaOxuKY6v4WU5FWzlehSwSnBHwiG6\n/DpYLq6w2FfE2UaXvtGvF4UBF/2zmyMk8iClaY7RbEJqJzNbs4WsjKb7MA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 394, + "comment" : "edge case for signature malleability", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a902207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a9", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0469da0364734d2e530fece94019265fefb781a0f1b08f6c8897bdf6557927c8b866d2d3c7dcd518b23d726960f069ad71a933d86ef8abbcce8b20f71e2a847002", + "wx" : "69da0364734d2e530fece94019265fefb781a0f1b08f6c8897bdf6557927c8b8", + "wy" : "66d2d3c7dcd518b23d726960f069ad71a933d86ef8abbcce8b20f71e2a847002" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000469da0364734d2e530fece94019265fefb781a0f1b08f6c8897bdf6557927c8b866d2d3c7dcd518b23d726960f069ad71a933d86ef8abbcce8b20f71e2a847002", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEadoDZHNNLlMP7OlAGSZf77eBoPGw\nj2yIl732VXknyLhm0tPH3NUYsj1yaWDwaa1xqTPYbvirvM6LIPceKoRwAg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 395, + "comment" : "u1 == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30450220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022100bb5a52f42f9c9261ed4361f59422a1e30036e7c32b270c8807a419feca605023", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d8adc00023a8edc02576e2b63e3e30621a471e2b2320620187bf067a1ac1ff3233e2b50ec09807accb36131fff95ed12a09a86b4ea9690aa32861576ba2362e1", + "wx" : "00d8adc00023a8edc02576e2b63e3e30621a471e2b2320620187bf067a1ac1ff32", + "wy" : "33e2b50ec09807accb36131fff95ed12a09a86b4ea9690aa32861576ba2362e1" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d8adc00023a8edc02576e2b63e3e30621a471e2b2320620187bf067a1ac1ff3233e2b50ec09807accb36131fff95ed12a09a86b4ea9690aa32861576ba2362e1", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2K3AACOo7cAlduK2Pj4wYhpHHisj\nIGIBh78GehrB/zIz4rUOwJgHrMs2Ex//le0SoJqGtOqWkKoyhhV2uiNi4Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 396, + "comment" : "u1 == n - 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022044a5ad0ad0636d9f12bc9e0a6bdd5e1cbcb012ea7bf091fcec15b0c43202d52e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043623ac973ced0a56fa6d882f03a7d5c7edca02cfc7b2401fab3690dbe75ab7858db06908e64b28613da7257e737f39793da8e713ba0643b92e9bb3252be7f8fe", + "wx" : "3623ac973ced0a56fa6d882f03a7d5c7edca02cfc7b2401fab3690dbe75ab785", + "wy" : "008db06908e64b28613da7257e737f39793da8e713ba0643b92e9bb3252be7f8fe" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043623ac973ced0a56fa6d882f03a7d5c7edca02cfc7b2401fab3690dbe75ab7858db06908e64b28613da7257e737f39793da8e713ba0643b92e9bb3252be7f8fe", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENiOslzztClb6bYgvA6fVx+3KAs/H\nskAfqzaQ2+dat4WNsGkI5ksoYT2nJX5zfzl5PajnE7oGQ7kum7MlK+f4/g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 397, + "comment" : "u2 == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04cf04ea77e9622523d894b93ff52dc3027b31959503b6fa3890e5e04263f922f1e8528fb7c006b3983c8b8400e57b4ed71740c2f3975438821199bedeaecab2e9", + "wx" : "00cf04ea77e9622523d894b93ff52dc3027b31959503b6fa3890e5e04263f922f1", + "wy" : "00e8528fb7c006b3983c8b8400e57b4ed71740c2f3975438821199bedeaecab2e9" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cf04ea77e9622523d894b93ff52dc3027b31959503b6fa3890e5e04263f922f1e8528fb7c006b3983c8b8400e57b4ed71740c2f3975438821199bedeaecab2e9", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzwTqd+liJSPYlLk/9S3DAnsxlZUD\ntvo4kOXgQmP5IvHoUo+3wAazmDyLhADle07XF0DC85dUOIIRmb7ersqy6Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 398, + "comment" : "u2 == n - 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30450220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022100aaaaaaaa00000000aaaaaaaaaaaaaaaa7def51c91a0fbf034d26872ca84218e1", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04db7a2c8a1ab573e5929dc24077b508d7e683d49227996bda3e9f78dbeff773504f417f3bc9a88075c2e0aadd5a13311730cf7cc76a82f11a36eaf08a6c99a206", + "wx" : "00db7a2c8a1ab573e5929dc24077b508d7e683d49227996bda3e9f78dbeff77350", + "wy" : "4f417f3bc9a88075c2e0aadd5a13311730cf7cc76a82f11a36eaf08a6c99a206" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004db7a2c8a1ab573e5929dc24077b508d7e683d49227996bda3e9f78dbeff773504f417f3bc9a88075c2e0aadd5a13311730cf7cc76a82f11a36eaf08a6c99a206", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE23osihq1c+WSncJAd7UI1+aD1JIn\nmWvaPp942+/3c1BPQX87yaiAdcLgqt1aEzEXMM98x2qC8Ro26vCKbJmiBg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 399, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100e91e1ba60fdedb76a46bcb51dc0b8b4b7e019f0a28721885fa5d3a8196623397", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04dead11c7a5b396862f21974dc4752fadeff994efe9bbd05ab413765ea80b6e1f1de3f0640e8ac6edcf89cff53c40e265bb94078a343736df07aa0318fc7fe1ff", + "wx" : "00dead11c7a5b396862f21974dc4752fadeff994efe9bbd05ab413765ea80b6e1f", + "wy" : "1de3f0640e8ac6edcf89cff53c40e265bb94078a343736df07aa0318fc7fe1ff" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004dead11c7a5b396862f21974dc4752fadeff994efe9bbd05ab413765ea80b6e1f1de3f0640e8ac6edcf89cff53c40e265bb94078a343736df07aa0318fc7fe1ff", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3q0Rx6WzloYvIZdNxHUvre/5lO/p\nu9BatBN2XqgLbh8d4/BkDorG7c+Jz/U8QOJlu5QHijQ3Nt8HqgMY/H/h/w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 400, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100fdea5843ffeb73af94313ba4831b53fe24f799e525b1e8e8c87b59b95b430ad9", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d0bc472e0d7c81ebaed3a6ef96c18613bb1fea6f994326fbe80e00dfde67c7e9986c723ea4843d48389b946f64ad56c83ad70ff17ba85335667d1bb9fa619efd", + "wx" : "00d0bc472e0d7c81ebaed3a6ef96c18613bb1fea6f994326fbe80e00dfde67c7e9", + "wy" : "00986c723ea4843d48389b946f64ad56c83ad70ff17ba85335667d1bb9fa619efd" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d0bc472e0d7c81ebaed3a6ef96c18613bb1fea6f994326fbe80e00dfde67c7e9986c723ea4843d48389b946f64ad56c83ad70ff17ba85335667d1bb9fa619efd", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0LxHLg18geuu06bvlsGGE7sf6m+Z\nQyb76A4A395nx+mYbHI+pIQ9SDiblG9krVbIOtcP8XuoUzVmfRu5+mGe/Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 401, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022003ffcabf2f1b4d2a65190db1680d62bb994e41c5251cd73b3c3dfc5e5bafc035", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a0a44ca947d66a2acb736008b9c08d1ab2ad03776e02640f78495d458dd51c326337fe5cf8c4604b1f1c409dc2d872d4294a4762420df43a30a2392e40426add", + "wx" : "00a0a44ca947d66a2acb736008b9c08d1ab2ad03776e02640f78495d458dd51c32", + "wy" : "6337fe5cf8c4604b1f1c409dc2d872d4294a4762420df43a30a2392e40426add" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a0a44ca947d66a2acb736008b9c08d1ab2ad03776e02640f78495d458dd51c326337fe5cf8c4604b1f1c409dc2d872d4294a4762420df43a30a2392e40426add", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEoKRMqUfWairLc2AIucCNGrKtA3du\nAmQPeEldRY3VHDJjN/5c+MRgSx8cQJ3C2HLUKUpHYkIN9DowojkuQEJq3Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 402, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02204dfbc401f971cd304b33dfdb17d0fed0fe4c1a88ae648e0d2847f74977534989", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04c9c2115290d008b45fb65fad0f602389298c25420b775019d42b62c3ce8a96b73877d25a8080dc02d987ca730f0405c2c9dbefac46f9e601cc3f06e9713973fd", + "wx" : "00c9c2115290d008b45fb65fad0f602389298c25420b775019d42b62c3ce8a96b7", + "wy" : "3877d25a8080dc02d987ca730f0405c2c9dbefac46f9e601cc3f06e9713973fd" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c9c2115290d008b45fb65fad0f602389298c25420b775019d42b62c3ce8a96b73877d25a8080dc02d987ca730f0405c2c9dbefac46f9e601cc3f06e9713973fd", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEycIRUpDQCLRftl+tD2AjiSmMJUIL\nd1AZ1Ctiw86Klrc4d9JagIDcAtmHynMPBAXCydvvrEb55gHMPwbpcTlz/Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 403, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bc4024761cd2ffd43dfdb17d0fed112b988977055cd3a8e54971eba9cda5ca71", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045eca1ef4c287dddc66b8bccf1b88e8a24c0018962f3c5e7efa83bc1a5ff6033e5e79c4cb2c245b8c45abdce8a8e4da758d92a607c32cd407ecaef22f1c934a71", + "wx" : "5eca1ef4c287dddc66b8bccf1b88e8a24c0018962f3c5e7efa83bc1a5ff6033e", + "wy" : "5e79c4cb2c245b8c45abdce8a8e4da758d92a607c32cd407ecaef22f1c934a71" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045eca1ef4c287dddc66b8bccf1b88e8a24c0018962f3c5e7efa83bc1a5ff6033e5e79c4cb2c245b8c45abdce8a8e4da758d92a607c32cd407ecaef22f1c934a71", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXsoe9MKH3dxmuLzPG4jookwAGJYv\nPF5++oO8Gl/2Az5eecTLLCRbjEWr3Oio5Np1jZKmB8Ms1AfsrvIvHJNKcQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 404, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220788048ed39a5ffa77bfb62fa1fda2257742bf35d128fb3459f2a0c909ee86f91", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045caaa030e7fdf0e4936bc7ab5a96353e0a01e4130c3f8bf22d473e317029a47adeb6adc462f7058f2a20d371e9702254e9b201642005b3ceda926b42b178bef9", + "wx" : "5caaa030e7fdf0e4936bc7ab5a96353e0a01e4130c3f8bf22d473e317029a47a", + "wy" : "00deb6adc462f7058f2a20d371e9702254e9b201642005b3ceda926b42b178bef9" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045caaa030e7fdf0e4936bc7ab5a96353e0a01e4130c3f8bf22d473e317029a47adeb6adc462f7058f2a20d371e9702254e9b201642005b3ceda926b42b178bef9", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXKqgMOf98OSTa8erWpY1PgoB5BMM\nP4vyLUc+MXAppHretq3EYvcFjyog03HpcCJU6bIBZCAFs87akmtCsXi++Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 405, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220476d9131fd381bd917d0fed112bc9e0a5924b5ed5b11167edd8b23582b3cb15e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04c2fd20bac06e555bb8ac0ce69eb1ea20f83a1fc3501c8a66469b1a31f619b0986237050779f52b615bd7b8d76a25fc95ca2ed32525c75f27ffc87ac397e6cbaf", + "wx" : "00c2fd20bac06e555bb8ac0ce69eb1ea20f83a1fc3501c8a66469b1a31f619b098", + "wy" : "6237050779f52b615bd7b8d76a25fc95ca2ed32525c75f27ffc87ac397e6cbaf" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c2fd20bac06e555bb8ac0ce69eb1ea20f83a1fc3501c8a66469b1a31f619b0986237050779f52b615bd7b8d76a25fc95ca2ed32525c75f27ffc87ac397e6cbaf", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwv0gusBuVVu4rAzmnrHqIPg6H8NQ\nHIpmRpsaMfYZsJhiNwUHefUrYVvXuNdqJfyVyi7TJSXHXyf/yHrDl+bLrw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 406, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0221008374253e3e21bd154448d0a8f640fe46fafa8b19ce78d538f6cc0a19662d3601", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043fd6a1ca7f77fb3b0bbe726c372010068426e11ea6ae78ce17bedae4bba86ced03ce5516406bf8cfaab8745eac1cd69018ad6f50b5461872ddfc56e0db3c8ff4", + "wx" : "3fd6a1ca7f77fb3b0bbe726c372010068426e11ea6ae78ce17bedae4bba86ced", + "wy" : "03ce5516406bf8cfaab8745eac1cd69018ad6f50b5461872ddfc56e0db3c8ff4" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043fd6a1ca7f77fb3b0bbe726c372010068426e11ea6ae78ce17bedae4bba86ced03ce5516406bf8cfaab8745eac1cd69018ad6f50b5461872ddfc56e0db3c8ff4", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEP9ahyn93+zsLvnJsNyAQBoQm4R6m\nrnjOF77a5LuobO0DzlUWQGv4z6q4dF6sHNaQGK1vULVGGHLd/Fbg2zyP9A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 407, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220357cfd3be4d01d413c5b9ede36cba5452c11ee7fe14879e749ae6a2d897a52d6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "049cb8e51e27a5ae3b624a60d6dc32734e4989db20e9bca3ede1edf7b086911114b4c104ab3c677e4b36d6556e8ad5f523410a19f2e277aa895fc57322b4427544", + "wx" : "009cb8e51e27a5ae3b624a60d6dc32734e4989db20e9bca3ede1edf7b086911114", + "wy" : "00b4c104ab3c677e4b36d6556e8ad5f523410a19f2e277aa895fc57322b4427544" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200049cb8e51e27a5ae3b624a60d6dc32734e4989db20e9bca3ede1edf7b086911114b4c104ab3c677e4b36d6556e8ad5f523410a19f2e277aa895fc57322b4427544", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnLjlHielrjtiSmDW3DJzTkmJ2yDp\nvKPt4e33sIaRERS0wQSrPGd+SzbWVW6K1fUjQQoZ8uJ3qolfxXMitEJ1RA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 408, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022029798c5c0ee287d4a5e8e6b799fd86b8df5225298e6ffc807cd2f2bc27a0a6d8", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a3e52c156dcaf10502620b7955bc2b40bc78ef3d569e1223c262512d8f49602a4a2039f31c1097024ad3cc86e57321de032355463486164cf192944977df147f", + "wx" : "00a3e52c156dcaf10502620b7955bc2b40bc78ef3d569e1223c262512d8f49602a", + "wy" : "4a2039f31c1097024ad3cc86e57321de032355463486164cf192944977df147f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a3e52c156dcaf10502620b7955bc2b40bc78ef3d569e1223c262512d8f49602a4a2039f31c1097024ad3cc86e57321de032355463486164cf192944977df147f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEo+UsFW3K8QUCYgt5VbwrQLx47z1W\nnhIjwmJRLY9JYCpKIDnzHBCXAkrTzIblcyHeAyNVRjSGFkzxkpRJd98Ufw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 409, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02200b70f22c781092452dca1a5711fa3a5a1f72add1bf52c2ff7cae4820b30078dd", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f19b78928720d5bee8e670fb90010fb15c37bf91b58a5157c3f3c059b2655e88cf701ec962fb4a11dcf273f5dc357e58468560c7cfeb942d074abd4329260509", + "wx" : "00f19b78928720d5bee8e670fb90010fb15c37bf91b58a5157c3f3c059b2655e88", + "wy" : "00cf701ec962fb4a11dcf273f5dc357e58468560c7cfeb942d074abd4329260509" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f19b78928720d5bee8e670fb90010fb15c37bf91b58a5157c3f3c059b2655e88cf701ec962fb4a11dcf273f5dc357e58468560c7cfeb942d074abd4329260509", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8Zt4kocg1b7o5nD7kAEPsVw3v5G1\nilFXw/PAWbJlXojPcB7JYvtKEdzyc/XcNX5YRoVgx8/rlC0HSr1DKSYFCQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 410, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022016e1e458f021248a5b9434ae23f474b43ee55ba37ea585fef95c90416600f1ba", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0483a744459ecdfb01a5cf52b27a05bb7337482d242f235d7b4cb89345545c90a8c05d49337b9649813287de9ffe90355fd905df5f3c32945828121f37cc50de6e", + "wx" : "0083a744459ecdfb01a5cf52b27a05bb7337482d242f235d7b4cb89345545c90a8", + "wy" : "00c05d49337b9649813287de9ffe90355fd905df5f3c32945828121f37cc50de6e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000483a744459ecdfb01a5cf52b27a05bb7337482d242f235d7b4cb89345545c90a8c05d49337b9649813287de9ffe90355fd905df5f3c32945828121f37cc50de6e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEg6dERZ7N+wGlz1KyegW7czdILSQv\nI117TLiTRVRckKjAXUkze5ZJgTKH3p/+kDVf2QXfXzwylFgoEh83zFDebg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 411, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02202252d6856831b6cf895e4f0535eeaf0e5e5809753df848fe760ad86219016a97", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04dd13c6b34c56982ddae124f039dfd23f4b19bbe88cee8e528ae51e5d6f3a21d7bfad4c2e6f263fe5eb59ca974d039fc0e4c3345692fb5320bdae4bd3b42a45ff", + "wx" : "00dd13c6b34c56982ddae124f039dfd23f4b19bbe88cee8e528ae51e5d6f3a21d7", + "wy" : "00bfad4c2e6f263fe5eb59ca974d039fc0e4c3345692fb5320bdae4bd3b42a45ff" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004dd13c6b34c56982ddae124f039dfd23f4b19bbe88cee8e528ae51e5d6f3a21d7bfad4c2e6f263fe5eb59ca974d039fc0e4c3345692fb5320bdae4bd3b42a45ff", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3RPGs0xWmC3a4STwOd/SP0sZu+iM\n7o5SiuUeXW86Ide/rUwubyY/5etZypdNA5/A5MM0VpL7UyC9rkvTtCpF/w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 412, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02210081ffe55f178da695b28c86d8b406b15dab1a9e39661a3ae017fbe390ac0972c3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0467e6f659cdde869a2f65f094e94e5b4dfad636bbf95192feeed01b0f3deb7460a37e0a51f258b7aeb51dfe592f5cfd5685bbe58712c8d9233c62886437c38ba0", + "wx" : "67e6f659cdde869a2f65f094e94e5b4dfad636bbf95192feeed01b0f3deb7460", + "wy" : "00a37e0a51f258b7aeb51dfe592f5cfd5685bbe58712c8d9233c62886437c38ba0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000467e6f659cdde869a2f65f094e94e5b4dfad636bbf95192feeed01b0f3deb7460a37e0a51f258b7aeb51dfe592f5cfd5685bbe58712c8d9233c62886437c38ba0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZ+b2Wc3ehpovZfCU6U5bTfrWNrv5\nUZL+7tAbDz3rdGCjfgpR8li3rrUd/lkvXP1WhbvlhxLI2SM8YohkN8OLoA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 413, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02207fffffffaaaaaaaaffffffffffffffffe9a2538f37b28a2c513dee40fecbb71a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042eb6412505aec05c6545f029932087e490d05511e8ec1f599617bb367f9ecaaf805f51efcc4803403f9b1ae0124890f06a43fedcddb31830f6669af292895cb0", + "wx" : "2eb6412505aec05c6545f029932087e490d05511e8ec1f599617bb367f9ecaaf", + "wy" : "00805f51efcc4803403f9b1ae0124890f06a43fedcddb31830f6669af292895cb0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042eb6412505aec05c6545f029932087e490d05511e8ec1f599617bb367f9ecaaf805f51efcc4803403f9b1ae0124890f06a43fedcddb31830f6669af292895cb0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELrZBJQWuwFxlRfApkyCH5JDQVRHo\n7B9Zlhe7Nn+eyq+AX1HvzEgDQD+bGuASSJDwakP+3N2zGDD2ZprykolcsA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 414, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100b62f26b5f2a2b26f6de86d42ad8a13da3ab3cccd0459b201de009e526adf21f2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0484db645868eab35e3a9fd80e056e2e855435e3a6b68d75a50a854625fe0d7f356d2589ac655edc9a11ef3e075eddda9abf92e72171570ef7bf43a2ee39338cfe", + "wx" : "0084db645868eab35e3a9fd80e056e2e855435e3a6b68d75a50a854625fe0d7f35", + "wy" : "6d2589ac655edc9a11ef3e075eddda9abf92e72171570ef7bf43a2ee39338cfe" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000484db645868eab35e3a9fd80e056e2e855435e3a6b68d75a50a854625fe0d7f356d2589ac655edc9a11ef3e075eddda9abf92e72171570ef7bf43a2ee39338cfe", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhNtkWGjqs146n9gOBW4uhVQ146a2\njXWlCoVGJf4NfzVtJYmsZV7cmhHvPgde3dqav5LnIXFXDve/Q6LuOTOM/g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 415, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bb1d9ac949dd748cd02bbbe749bd351cd57b38bb61403d700686aa7b4c90851e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0491b9e47c56278662d75c0983b22ca8ea6aa5059b7a2ff7637eb2975e386ad66349aa8ff283d0f77c18d6d11dc062165fd13c3c0310679c1408302a16854ecfbd", + "wx" : "0091b9e47c56278662d75c0983b22ca8ea6aa5059b7a2ff7637eb2975e386ad663", + "wy" : "49aa8ff283d0f77c18d6d11dc062165fd13c3c0310679c1408302a16854ecfbd" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000491b9e47c56278662d75c0983b22ca8ea6aa5059b7a2ff7637eb2975e386ad66349aa8ff283d0f77c18d6d11dc062165fd13c3c0310679c1408302a16854ecfbd", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkbnkfFYnhmLXXAmDsiyo6mqlBZt6\nL/djfrKXXjhq1mNJqo/yg9D3fBjW0R3AYhZf0Tw8AxBnnBQIMCoWhU7PvQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 416, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022066755a00638cdaec1c732513ca0234ece52545dac11f816e818f725b4f60aaf2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f3ec2f13caf04d0192b47fb4c5311fb6d4dc6b0a9e802e5327f7ec5ee8e4834df97e3e468b7d0db867d6ecfe81e2b0f9531df87efdb47c1338ac321fefe5a432", + "wx" : "00f3ec2f13caf04d0192b47fb4c5311fb6d4dc6b0a9e802e5327f7ec5ee8e4834d", + "wy" : "00f97e3e468b7d0db867d6ecfe81e2b0f9531df87efdb47c1338ac321fefe5a432" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f3ec2f13caf04d0192b47fb4c5311fb6d4dc6b0a9e802e5327f7ec5ee8e4834df97e3e468b7d0db867d6ecfe81e2b0f9531df87efdb47c1338ac321fefe5a432", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8+wvE8rwTQGStH+0xTEfttTcawqe\ngC5TJ/fsXujkg035fj5Gi30NuGfW7P6B4rD5Ux34fv20fBM4rDIf7+WkMg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 417, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022055a00c9fcdaebb6032513ca0234ecfffe98ebe492fdf02e48ca48e982beb3669", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d92b200aefcab6ac7dafd9acaf2fa10b3180235b8f46b4503e4693c670fccc885ef2f3aebf5b317475336256768f7c19efb7352d27e4cccadc85b6b8ab922c72", + "wx" : "00d92b200aefcab6ac7dafd9acaf2fa10b3180235b8f46b4503e4693c670fccc88", + "wy" : "5ef2f3aebf5b317475336256768f7c19efb7352d27e4cccadc85b6b8ab922c72" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d92b200aefcab6ac7dafd9acaf2fa10b3180235b8f46b4503e4693c670fccc885ef2f3aebf5b317475336256768f7c19efb7352d27e4cccadc85b6b8ab922c72", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2SsgCu/Ktqx9r9msry+hCzGAI1uP\nRrRQPkaTxnD8zIhe8vOuv1sxdHUzYlZ2j3wZ77c1LSfkzMrchba4q5Iscg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 418, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ab40193f9b5d76c064a27940469d9fffd31d7c925fbe05c919491d3057d66cd2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040a88361eb92ecca2625b38e5f98bbabb96bf179b3d76fc48140a3bcd881523cde6bdf56033f84a5054035597375d90866aa2c96b86a41ccf6edebf47298ad489", + "wx" : "0a88361eb92ecca2625b38e5f98bbabb96bf179b3d76fc48140a3bcd881523cd", + "wy" : "00e6bdf56033f84a5054035597375d90866aa2c96b86a41ccf6edebf47298ad489" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040a88361eb92ecca2625b38e5f98bbabb96bf179b3d76fc48140a3bcd881523cde6bdf56033f84a5054035597375d90866aa2c96b86a41ccf6edebf47298ad489", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECog2HrkuzKJiWzjl+Yu6u5a/F5s9\ndvxIFAo7zYgVI83mvfVgM/hKUFQDVZc3XZCGaqLJa4akHM9u3r9HKYrUiQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 419, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ca0234ebb5fdcb13ca0234ecffffffffcb0dadbbc7f549f8a26b4408d0dc8600", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d0fb17ccd8fafe827e0c1afc5d8d80366e2b20e7f14a563a2ba50469d84375e868612569d39e2bb9f554355564646de99ac602cc6349cf8c1e236a7de7637d93", + "wx" : "00d0fb17ccd8fafe827e0c1afc5d8d80366e2b20e7f14a563a2ba50469d84375e8", + "wy" : "68612569d39e2bb9f554355564646de99ac602cc6349cf8c1e236a7de7637d93" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d0fb17ccd8fafe827e0c1afc5d8d80366e2b20e7f14a563a2ba50469d84375e868612569d39e2bb9f554355564646de99ac602cc6349cf8c1e236a7de7637d93", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0PsXzNj6/oJ+DBr8XY2ANm4rIOfx\nSlY6K6UEadhDdehoYSVp054rufVUNVVkZG3pmsYCzGNJz4weI2p952N9kw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 420, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff3ea3677e082b9310572620ae19933a9e65b285598711c77298815ad3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04836f33bbc1dc0d3d3abbcef0d91f11e2ac4181076c9af0a22b1e4309d3edb2769ab443ff6f901e30c773867582997c2bec2b0cb8120d760236f3a95bbe881f75", + "wx" : "00836f33bbc1dc0d3d3abbcef0d91f11e2ac4181076c9af0a22b1e4309d3edb276", + "wy" : "009ab443ff6f901e30c773867582997c2bec2b0cb8120d760236f3a95bbe881f75" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004836f33bbc1dc0d3d3abbcef0d91f11e2ac4181076c9af0a22b1e4309d3edb2769ab443ff6f901e30c773867582997c2bec2b0cb8120d760236f3a95bbe881f75", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEg28zu8HcDT06u87w2R8R4qxBgQds\nmvCiKx5DCdPtsnaatEP/b5AeMMdzhnWCmXwr7CsMuBINdgI286lbvogfdQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 421, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220266666663bbbbbbbe6666666666666665b37902e023fab7c8f055d86e5cc41f4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0492f99fbe973ed4a299719baee4b432741237034dec8d72ba5103cb33e55feeb8033dd0e91134c734174889f3ebcf1b7a1ac05767289280ee7a794cebd6e69697", + "wx" : "0092f99fbe973ed4a299719baee4b432741237034dec8d72ba5103cb33e55feeb8", + "wy" : "033dd0e91134c734174889f3ebcf1b7a1ac05767289280ee7a794cebd6e69697" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000492f99fbe973ed4a299719baee4b432741237034dec8d72ba5103cb33e55feeb8033dd0e91134c734174889f3ebcf1b7a1ac05767289280ee7a794cebd6e69697", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkvmfvpc+1KKZcZuu5LQydBI3A03s\njXK6UQPLM+Vf7rgDPdDpETTHNBdIifPrzxt6GsBXZyiSgO56eUzr1uaWlw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 422, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff36db6db7a492492492492492146c573f4c6dfc8d08a443e258970b09", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d35ba58da30197d378e618ec0fa7e2e2d12cffd73ebbb2049d130bba434af09eff83986e6875e41ea432b7585a49b3a6c77cbb3c47919f8e82874c794635c1d2", + "wx" : "00d35ba58da30197d378e618ec0fa7e2e2d12cffd73ebbb2049d130bba434af09e", + "wy" : "00ff83986e6875e41ea432b7585a49b3a6c77cbb3c47919f8e82874c794635c1d2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d35ba58da30197d378e618ec0fa7e2e2d12cffd73ebbb2049d130bba434af09eff83986e6875e41ea432b7585a49b3a6c77cbb3c47919f8e82874c794635c1d2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE01uljaMBl9N45hjsD6fi4tEs/9c+\nu7IEnRMLukNK8J7/g5huaHXkHqQyt1haSbOmx3y7PEeRn46Ch0x5RjXB0g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 423, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff2aaaaaab7fffffffffffffffc815d0e60b3e596ecb1ad3a27cfd49c4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048651ce490f1b46d73f3ff475149be29136697334a519d7ddab0725c8d0793224e11c65bd8ca92dc8bc9ae82911f0b52751ce21dd9003ae60900bd825f590cc28", + "wx" : "008651ce490f1b46d73f3ff475149be29136697334a519d7ddab0725c8d0793224", + "wy" : "00e11c65bd8ca92dc8bc9ae82911f0b52751ce21dd9003ae60900bd825f590cc28" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048651ce490f1b46d73f3ff475149be29136697334a519d7ddab0725c8d0793224e11c65bd8ca92dc8bc9ae82911f0b52751ce21dd9003ae60900bd825f590cc28", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhlHOSQ8bRtc/P/R1FJvikTZpczSl\nGdfdqwclyNB5MiThHGW9jKktyLya6CkR8LUnUc4h3ZADrmCQC9gl9ZDMKA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 424, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02207fffffff55555555ffffffffffffffffd344a71e6f651458a27bdc81fd976e37", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046d8e1b12c831a0da8795650ff95f101ed921d9e2f72b15b1cdaca9826b9cfc6def6d63e2bc5c089570394a4bc9f892d5e6c7a6a637b20469a58c106ad486bf37", + "wx" : "6d8e1b12c831a0da8795650ff95f101ed921d9e2f72b15b1cdaca9826b9cfc6d", + "wy" : "00ef6d63e2bc5c089570394a4bc9f892d5e6c7a6a637b20469a58c106ad486bf37" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046d8e1b12c831a0da8795650ff95f101ed921d9e2f72b15b1cdaca9826b9cfc6def6d63e2bc5c089570394a4bc9f892d5e6c7a6a637b20469a58c106ad486bf37", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEbY4bEsgxoNqHlWUP+V8QHtkh2eL3\nKxWxzaypgmuc/G3vbWPivFwIlXA5SkvJ+JLV5sempjeyBGmljBBq1Ia/Nw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 425, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02203fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192aa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040ae580bae933b4ef2997cbdbb0922328ca9a410f627a0f7dff24cb4d920e15428911e7f8cc365a8a88eb81421a361ccc2b99e309d8dcd9a98ba83c3949d893e3", + "wx" : "0ae580bae933b4ef2997cbdbb0922328ca9a410f627a0f7dff24cb4d920e1542", + "wy" : "008911e7f8cc365a8a88eb81421a361ccc2b99e309d8dcd9a98ba83c3949d893e3" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040ae580bae933b4ef2997cbdbb0922328ca9a410f627a0f7dff24cb4d920e15428911e7f8cc365a8a88eb81421a361ccc2b99e309d8dcd9a98ba83c3949d893e3", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECuWAuukztO8pl8vbsJIjKMqaQQ9i\neg99/yTLTZIOFUKJEef4zDZaiojrgUIaNhzMK5njCdjc2amLqDw5SdiT4w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 426, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02205d8ecd64a4eeba466815ddf3a4de9a8e6abd9c5db0a01eb80343553da648428f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc46963838a40f2a36092e9004e92d8d940cf5638550ce672ce8b8d4e15eba5499249e9", + "wx" : "5b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc46963", + "wy" : "00838a40f2a36092e9004e92d8d940cf5638550ce672ce8b8d4e15eba5499249e9" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc46963838a40f2a36092e9004e92d8d940cf5638550ce672ce8b8d4e15eba5499249e9", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEW4Ev1SGq+mmDWoSczm+962mDtELS\nRE/nDhNMAn/EaWODikDyo2CS6QBOktjZQM9WOFUM5nLOi41OFeulSZJJ6Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 427, + "comment" : "point duplication during verification", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "304502206f2347cab7dd76858fe0555ac3bc99048c4aacafdfb6bcbe05ea6c42c4934569022100bb726660235793aa9957a61e76e00c2c435109cf9a15dd624d53f4301047856b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc469637c75bf0c5c9f6d17ffb16d2726bf30a9c7aaf31a8d317472b1ea145ab66db616", + "wx" : "5b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc46963", + "wy" : "7c75bf0c5c9f6d17ffb16d2726bf30a9c7aaf31a8d317472b1ea145ab66db616" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc469637c75bf0c5c9f6d17ffb16d2726bf30a9c7aaf31a8d317472b1ea145ab66db616", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEW4Ev1SGq+mmDWoSczm+962mDtELS\nRE/nDhNMAn/EaWN8db8MXJ9tF/+xbScmvzCpx6rzGo0xdHKx6hRatm22Fg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 428, + "comment" : "duplication bug", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "304502206f2347cab7dd76858fe0555ac3bc99048c4aacafdfb6bcbe05ea6c42c4934569022100bb726660235793aa9957a61e76e00c2c435109cf9a15dd624d53f4301047856b", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046adda82b90261b0f319faa0d878665a6b6da497f09c903176222c34acfef72a647e6f50dcc40ad5d9b59f7602bb222fad71a41bf5e1f9df4959a364c62e488d9", + "wx" : "6adda82b90261b0f319faa0d878665a6b6da497f09c903176222c34acfef72a6", + "wy" : "47e6f50dcc40ad5d9b59f7602bb222fad71a41bf5e1f9df4959a364c62e488d9" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046adda82b90261b0f319faa0d878665a6b6da497f09c903176222c34acfef72a647e6f50dcc40ad5d9b59f7602bb222fad71a41bf5e1f9df4959a364c62e488d9", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEat2oK5AmGw8xn6oNh4ZlprbaSX8J\nyQMXYiLDSs/vcqZH5vUNzECtXZtZ92ArsiL61xpBv14fnfSVmjZMYuSI2Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 429, + "comment" : "point with x-coordinate 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250201010220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042fca0d0a47914de77ed56e7eccc3276a601120c6df0069c825c8f6a01c9f382065f3450a1d17c6b24989a39beb1c7decfca8384fbdc294418e5d807b3c6ed7de", + "wx" : "2fca0d0a47914de77ed56e7eccc3276a601120c6df0069c825c8f6a01c9f3820", + "wy" : "65f3450a1d17c6b24989a39beb1c7decfca8384fbdc294418e5d807b3c6ed7de" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042fca0d0a47914de77ed56e7eccc3276a601120c6df0069c825c8f6a01c9f382065f3450a1d17c6b24989a39beb1c7decfca8384fbdc294418e5d807b3c6ed7de", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEL8oNCkeRTed+1W5+zMMnamARIMbf\nAGnIJcj2oByfOCBl80UKHRfGskmJo5vrHH3s/Kg4T73ClEGOXYB7PG7X3g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 430, + "comment" : "point with x-coordinate 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3045022101000000000000000000000000000000000000000000000000000000000000000002203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aa9", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04dd86d3b5f4a13e8511083b78002081c53ff467f11ebd98a51a633db76665d25045d5c8200c89f2fa10d849349226d21d8dfaed6ff8d5cb3e1b7e17474ebc18f7", + "wx" : "00dd86d3b5f4a13e8511083b78002081c53ff467f11ebd98a51a633db76665d250", + "wy" : "45d5c8200c89f2fa10d849349226d21d8dfaed6ff8d5cb3e1b7e17474ebc18f7" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004dd86d3b5f4a13e8511083b78002081c53ff467f11ebd98a51a633db76665d25045d5c8200c89f2fa10d849349226d21d8dfaed6ff8d5cb3e1b7e17474ebc18f7", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3YbTtfShPoURCDt4ACCBxT/0Z/Ee\nvZilGmM9t2Zl0lBF1cggDIny+hDYSTSSJtIdjfrtb/jVyz4bfhdHTrwY9w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 431, + "comment" : "comparison with point at infinity ", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aa9", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044fea55b32cb32aca0c12c4cd0abfb4e64b0f5a516e578c016591a93f5a0fbcc5d7d3fd10b2be668c547b212f6bb14c88f0fecd38a8a4b2c785ed3be62ce4b280", + "wx" : "4fea55b32cb32aca0c12c4cd0abfb4e64b0f5a516e578c016591a93f5a0fbcc5", + "wy" : "00d7d3fd10b2be668c547b212f6bb14c88f0fecd38a8a4b2c785ed3be62ce4b280" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044fea55b32cb32aca0c12c4cd0abfb4e64b0f5a516e578c016591a93f5a0fbcc5d7d3fd10b2be668c547b212f6bb14c88f0fecd38a8a4b2c785ed3be62ce4b280", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAET+pVsyyzKsoMEsTNCr+05ksPWlFu\nV4wBZZGpP1oPvMXX0/0Qsr5mjFR7IS9rsUyI8P7NOKiksseF7TvmLOSygA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 432, + "comment" : "extreme value for k and edgecase s", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc476699780220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04c6a771527024227792170a6f8eee735bf32b7f98af669ead299802e32d7c3107bc3b4b5e65ab887bbd343572b3e5619261fe3a073e2ffd78412f726867db589e", + "wx" : "00c6a771527024227792170a6f8eee735bf32b7f98af669ead299802e32d7c3107", + "wy" : "00bc3b4b5e65ab887bbd343572b3e5619261fe3a073e2ffd78412f726867db589e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c6a771527024227792170a6f8eee735bf32b7f98af669ead299802e32d7c3107bc3b4b5e65ab887bbd343572b3e5619261fe3a073e2ffd78412f726867db589e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExqdxUnAkIneSFwpvju5zW/Mrf5iv\nZp6tKZgC4y18MQe8O0teZauIe700NXKz5WGSYf46Bz4v/XhBL3JoZ9tYng==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 433, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022100b6db6db6249249254924924924924924625bd7a09bec4ca81bcdd9f8fd6b63cc", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04851c2bbad08e54ec7a9af99f49f03644d6ec6d59b207fec98de85a7d15b956efcee9960283045075684b410be8d0f7494b91aa2379f60727319f10ddeb0fe9d6", + "wx" : "00851c2bbad08e54ec7a9af99f49f03644d6ec6d59b207fec98de85a7d15b956ef", + "wy" : "00cee9960283045075684b410be8d0f7494b91aa2379f60727319f10ddeb0fe9d6" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004851c2bbad08e54ec7a9af99f49f03644d6ec6d59b207fec98de85a7d15b956efcee9960283045075684b410be8d0f7494b91aa2379f60727319f10ddeb0fe9d6", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhRwrutCOVOx6mvmfSfA2RNbsbVmy\nB/7JjehafRW5Vu/O6ZYCgwRQdWhLQQvo0PdJS5GqI3n2BycxnxDd6w/p1g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 434, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022100cccccccc00000000cccccccccccccccc971f2ef152794b9d8fc7d568c9e8eaa7", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f6417c8a670584e388676949e53da7fc55911ff68318d1bf3061205acb19c48f8f2b743df34ad0f72674acb7505929784779cd9ac916c3669ead43026ab6d43f", + "wx" : "00f6417c8a670584e388676949e53da7fc55911ff68318d1bf3061205acb19c48f", + "wy" : "008f2b743df34ad0f72674acb7505929784779cd9ac916c3669ead43026ab6d43f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f6417c8a670584e388676949e53da7fc55911ff68318d1bf3061205acb19c48f8f2b743df34ad0f72674acb7505929784779cd9ac916c3669ead43026ab6d43f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9kF8imcFhOOIZ2lJ5T2n/FWRH/aD\nGNG/MGEgWssZxI+PK3Q980rQ9yZ0rLdQWSl4R3nNmskWw2aerUMCarbUPw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 435, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc4766997802203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aaa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04501421277be45a5eefec6c639930d636032565af420cf3373f557faa7f8a06438673d6cb6076e1cfcdc7dfe7384c8e5cac08d74501f2ae6e89cad195d0aa1371", + "wx" : "501421277be45a5eefec6c639930d636032565af420cf3373f557faa7f8a0643", + "wy" : "008673d6cb6076e1cfcdc7dfe7384c8e5cac08d74501f2ae6e89cad195d0aa1371" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004501421277be45a5eefec6c639930d636032565af420cf3373f557faa7f8a06438673d6cb6076e1cfcdc7dfe7384c8e5cac08d74501f2ae6e89cad195d0aa1371", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEUBQhJ3vkWl7v7GxjmTDWNgMlZa9C\nDPM3P1V/qn+KBkOGc9bLYHbhz83H3+c4TI5crAjXRQHyrm6JytGV0KoTcQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 436, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022049249248db6db6dbb6db6db6db6db6db5a8b230d0b2b51dcd7ebf0c9fef7c185", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040d935bf9ffc115a527735f729ca8a4ca23ee01a4894adf0e3415ac84e808bb343195a3762fea29ed38912bd9ea6c4fde70c3050893a4375850ce61d82eba33c5", + "wx" : "0d935bf9ffc115a527735f729ca8a4ca23ee01a4894adf0e3415ac84e808bb34", + "wy" : "3195a3762fea29ed38912bd9ea6c4fde70c3050893a4375850ce61d82eba33c5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040d935bf9ffc115a527735f729ca8a4ca23ee01a4894adf0e3415ac84e808bb343195a3762fea29ed38912bd9ea6c4fde70c3050893a4375850ce61d82eba33c5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDZNb+f/BFaUnc19ynKikyiPuAaSJ\nSt8ONBWshOgIuzQxlaN2L+op7TiRK9nqbE/ecMMFCJOkN1hQzmHYLrozxQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 437, + "comment" : "extreme value for k", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022016a4502e2781e11ac82cbc9d1edd8c981584d13e18411e2f6e0478c34416e3bb", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045e59f50708646be8a589355014308e60b668fb670196206c41e748e64e4dca215de37fee5c97bcaf7144d5b459982f52eeeafbdf03aacbafef38e213624a01de", + "wx" : "5e59f50708646be8a589355014308e60b668fb670196206c41e748e64e4dca21", + "wy" : "5de37fee5c97bcaf7144d5b459982f52eeeafbdf03aacbafef38e213624a01de" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045e59f50708646be8a589355014308e60b668fb670196206c41e748e64e4dca215de37fee5c97bcaf7144d5b459982f52eeeafbdf03aacbafef38e213624a01de", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXln1Bwhka+iliTVQFDCOYLZo+2cB\nliBsQedI5k5NyiFd43/uXJe8r3FE1bRZmC9S7ur73wOqy6/vOOITYkoB3g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 438, + "comment" : "extreme value for k and edgecase s", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2960220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04169fb797325843faff2f7a5b5445da9e2fd6226f7ef90ef0bfe924104b02db8e7bbb8de662c7b9b1cf9b22f7a2e582bd46d581d68878efb2b861b131d8a1d667", + "wx" : "169fb797325843faff2f7a5b5445da9e2fd6226f7ef90ef0bfe924104b02db8e", + "wy" : "7bbb8de662c7b9b1cf9b22f7a2e582bd46d581d68878efb2b861b131d8a1d667" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004169fb797325843faff2f7a5b5445da9e2fd6226f7ef90ef0bfe924104b02db8e7bbb8de662c7b9b1cf9b22f7a2e582bd46d581d68878efb2b861b131d8a1d667", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFp+3lzJYQ/r/L3pbVEXani/WIm9+\n+Q7wv+kkEEsC2457u43mYse5sc+bIvei5YK9RtWB1oh477K4YbEx2KHWZw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 439, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022100b6db6db6249249254924924924924924625bd7a09bec4ca81bcdd9f8fd6b63cc", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04271cd89c000143096b62d4e9e4ca885aef2f7023d18affdaf8b7b548981487540a1c6e954e32108435b55fa385b0f76481a609b9149ccb4b02b2ca47fe8e4da5", + "wx" : "271cd89c000143096b62d4e9e4ca885aef2f7023d18affdaf8b7b54898148754", + "wy" : "0a1c6e954e32108435b55fa385b0f76481a609b9149ccb4b02b2ca47fe8e4da5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004271cd89c000143096b62d4e9e4ca885aef2f7023d18affdaf8b7b548981487540a1c6e954e32108435b55fa385b0f76481a609b9149ccb4b02b2ca47fe8e4da5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJxzYnAABQwlrYtTp5MqIWu8vcCPR\niv/a+Le1SJgUh1QKHG6VTjIQhDW1X6OFsPdkgaYJuRScy0sCsspH/o5NpQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 440, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022100cccccccc00000000cccccccccccccccc971f2ef152794b9d8fc7d568c9e8eaa7", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043d0bc7ed8f09d2cb7ddb46ebc1ed799ab1563a9ab84bf524587a220afe499c12e22dc3b3c103824a4f378d96adb0a408abf19ce7d68aa6244f78cb216fa3f8df", + "wx" : "3d0bc7ed8f09d2cb7ddb46ebc1ed799ab1563a9ab84bf524587a220afe499c12", + "wy" : "00e22dc3b3c103824a4f378d96adb0a408abf19ce7d68aa6244f78cb216fa3f8df" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043d0bc7ed8f09d2cb7ddb46ebc1ed799ab1563a9ab84bf524587a220afe499c12e22dc3b3c103824a4f378d96adb0a408abf19ce7d68aa6244f78cb216fa3f8df", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPQvH7Y8J0st920brwe15mrFWOpq4\nS/UkWHoiCv5JnBLiLcOzwQOCSk83jZatsKQIq/Gc59aKpiRPeMshb6P43w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 441, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29602203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aaa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a6c885ade1a4c566f9bb010d066974abb281797fa701288c721bcbd23663a9b72e424b690957168d193a6096fc77a2b004a9c7d467e007e1f2058458f98af316", + "wx" : "00a6c885ade1a4c566f9bb010d066974abb281797fa701288c721bcbd23663a9b7", + "wy" : "2e424b690957168d193a6096fc77a2b004a9c7d467e007e1f2058458f98af316" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a6c885ade1a4c566f9bb010d066974abb281797fa701288c721bcbd23663a9b72e424b690957168d193a6096fc77a2b004a9c7d467e007e1f2058458f98af316", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEpsiFreGkxWb5uwENBml0q7KBeX+n\nASiMchvL0jZjqbcuQktpCVcWjRk6YJb8d6KwBKnH1GfgB+HyBYRY+YrzFg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 442, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022049249248db6db6dbb6db6db6db6db6db5a8b230d0b2b51dcd7ebf0c9fef7c185", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048d3c2c2c3b765ba8289e6ac3812572a25bf75df62d87ab7330c3bdbad9ebfa5c4c6845442d66935b238578d43aec54f7caa1621d1af241d4632e0b780c423f5d", + "wx" : "008d3c2c2c3b765ba8289e6ac3812572a25bf75df62d87ab7330c3bdbad9ebfa5c", + "wy" : "4c6845442d66935b238578d43aec54f7caa1621d1af241d4632e0b780c423f5d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048d3c2c2c3b765ba8289e6ac3812572a25bf75df62d87ab7330c3bdbad9ebfa5c4c6845442d66935b238578d43aec54f7caa1621d1af241d4632e0b780c423f5d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEjTwsLDt2W6gonmrDgSVyolv3XfYt\nh6tzMMO9utnr+lxMaEVELWaTWyOFeNQ67FT3yqFiHRryQdRjLgt4DEI/XQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 443, + "comment" : "extreme value for k", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022016a4502e2781e11ac82cbc9d1edd8c981584d13e18411e2f6e0478c34416e3bb", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5", + "wx" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296", + "wy" : "4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaxfR8uEsQkf4vOblY6RA8ncDfYEt\n6zOg9KE5RdiYwpZP40Li/hp/m47n60p8D54WK84zV2sxXs7LtkBoN79R9Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 444, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3045022100bb5a52f42f9c9261ed4361f59422a1e30036e7c32b270c8807a419feca6050230220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + }, + { + "tcId" : 445, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3044022044a5ad0ad0636d9f12bc9e0a6bdd5e1cbcb012ea7bf091fcec15b0c43202d52e0220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a", + "wx" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296", + "wy" : "00b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaxfR8uEsQkf4vOblY6RA8ncDfYEt\n6zOg9KE5RdiYwpawHL0cAeWAZXEYFLWD8GHp1DHMqZTOoTE0Sb+XyECuCg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 446, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3045022100bb5a52f42f9c9261ed4361f59422a1e30036e7c32b270c8807a419feca6050230220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + }, + { + "tcId" : 447, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3044022044a5ad0ad0636d9f12bc9e0a6bdd5e1cbcb012ea7bf091fcec15b0c43202d52e0220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685", + "wx" : "4f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000", + "wy" : "00ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETzN8z9Z3JqgF5PFgCuKEnfOAfsoR\nc4Ajn72BaQAAAADtneoSTMjDlkFkEemIww9CfrUEr0OjFGzV336mBmbWhQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 448, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100d434e262a49eab7781e353a3565e482550dd0fd5defa013c7f29745eff3569f10221009b0c0a93f267fb6052fd8077be769c2b98953195d7bc10de844218305c6ba17a", + "result" : "valid" + }, + { + "tcId" : 449, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402200fe774355c04d060f76d79fd7a772e421463489221bf0a33add0be9b1979110b0220500dcba1c69a8fbd43fa4f57f743ce124ca8b91a1f325f3fac6181175df55737", + "result" : "valid" + }, + { + "tcId" : 450, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100bb40bf217bed3fb3950c7d39f03d36dc8e3b2cd79693f125bfd06595ee1135e30220541bf3532351ebb032710bdb6a1bf1bfc89a1e291ac692b3fa4780745bb55677", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f49726500493584fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000", + "wx" : "3cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f497265004935", + "wy" : "0084fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f49726500493584fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPPA9YU2JOc/UmaB4c/rCgWGPBrj/\nh+gBXD9JcmUASTWE+hdNeRxyvyzjiAqJYN0qfHoTOKgvhanlnNvegAAAAA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 451, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30440220664eb7ee6db84a34df3c86ea31389a5405badd5ca99231ff556d3e75a233e73a022059f3c752e52eca46137642490a51560ce0badc678754b8f72e51a2901426a1bd", + "result" : "valid" + }, + { + "tcId" : 452, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502204cd0429bbabd2827009d6fcd843d4ce39c3e42e2d1631fd001985a79d1fd8b430221009638bf12dd682f60be7ef1d0e0d98f08b7bca77a1a2b869ae466189d2acdabe3", + "result" : "valid" + }, + { + "tcId" : 453, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100e56c6ea2d1b017091c44d8b6cb62b9f460e3ce9aed5e5fd41e8added97c56c04022100a308ec31f281e955be20b457e463440b4fcf2b80258078207fc1378180f89b55", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f4972650049357b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff", + "wx" : "3cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f497265004935", + "wy" : "7b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f4972650049357b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPPA9YU2JOc/UmaB4c/rCgWGPBrj/\nh+gBXD9JcmUASTV7BeixhuONQdMcd/V2nyLVg4XsyFfQelYaYyQhf////w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 454, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402201158a08d291500b4cabed3346d891eee57c176356a2624fb011f8fbbf34668300220228a8c486a736006e082325b85290c5bc91f378b75d487dda46798c18f285519", + "result" : "valid" + }, + { + "tcId" : 455, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100b1db9289649f59410ea36b0c0fc8d6aa2687b29176939dd23e0dde56d309fa9d02203e1535e4280559015b0dbd987366dcf43a6d1af5c23c7d584e1c3f48a1251336", + "result" : "valid" + }, + { + "tcId" : 456, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100b7b16e762286cb96446aa8d4e6e7578b0a341a79f2dd1a220ac6f0ca4e24ed86022100ddc60a700a139b04661c547d07bbb0721780146df799ccf55e55234ecb8f12bc", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffffa01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e", + "wx" : "2829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffff", + "wy" : "00a01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffffa01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKCnDH6ouQA40TtlLyj/NBUWVbrz+\nitD236X/jv////+gGq+vAA5SWFhVr6dnat4oQRMJkFLfV+frO9N+vrkiLg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 457, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100d82a7c2717261187c8e00d8df963ff35d796edad36bc6e6bd1c91c670d9105b402203dcabddaf8fcaa61f4603e7cbac0f3c0351ecd5988efb23f680d07debd139929", + "result" : "valid" + }, + { + "tcId" : 458, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402205eb9c8845de68eb13d5befe719f462d77787802baff30ce96a5cba063254af7802202c026ae9be2e2a5e7ca0ff9bbd92fb6e44972186228ee9a62b87ddbe2ef66fb5", + "result" : "valid" + }, + { + "tcId" : 459, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304602210096843dd03c22abd2f3b782b170239f90f277921becc117d0404a8e4e36230c28022100f2be378f526f74a543f67165976de9ed9a31214eb4d7e6db19e1ede123dd991d", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f55a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73", + "wx" : "00fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f5", + "wy" : "5a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f55a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE////+UgIHmoEWN2PnnOPJmX/kFmt\naqwHCDGMTKmnpPVairy6LdqEdDEe5UFJuXPK4MD7iVV60L945lKaFmO9cw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 460, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30440220766456dce1857c906f9996af729339464d27e9d98edc2d0e3b760297067421f60220402385ecadae0d8081dccaf5d19037ec4e55376eced699e93646bfbbf19d0b41", + "result" : "valid" + }, + { + "tcId" : 461, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100c605c4b2edeab20419e6518a11b2dbc2b97ed8b07cced0b19c34f777de7b9fd9022100edf0f612c5f46e03c719647bc8af1b29b2cde2eda700fb1cff5e159d47326dba", + "result" : "valid" + }, + { + "tcId" : 462, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100d48b68e6cabfe03cf6141c9ac54141f210e64485d9929ad7b732bfe3b7eb8a84022100feedae50c61bd00e19dc26f9b7e2265e4508c389109ad2f208f0772315b6c941", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0400000003fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71", + "wx" : "03fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e", + "wy" : "1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000400000003fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAAAAA/oV+WOUnV8DpvXH+G+eABXu\nsjrrv/EXOTe6dI4QmYcgcOjofFVfoTZZzKXX+tz8sAI+qIlUjKSK8rp+cQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 463, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100b7c81457d4aeb6aa65957098569f0479710ad7f6595d5874c35a93d12a5dd4c7022100b7961a0b652878c2d568069a432ca18a1a9199f2ca574dad4b9e3a05c0a1cdb3", + "result" : "valid" + }, + { + "tcId" : 464, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402206b01332ddb6edfa9a30a1321d5858e1ee3cf97e263e669f8de5e9652e76ff3f702205939545fced457309a6a04ace2bd0f70139c8f7d86b02cb1cc58f9e69e96cd5a", + "result" : "valid" + }, + { + "tcId" : 465, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100efdb884720eaeadc349f9fc356b6c0344101cd2fd8436b7d0e6a4fb93f106361022100f24bee6ad5dc05f7613975473aadf3aacba9e77de7d69b6ce48cb60d8113385d", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015000000001352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2", + "wx" : "00bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015", + "wy" : "1352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015000000001352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvLspFMefBF6qbsu8YSgWs75dLWeW\ncH2BJen4UcGK8BUAAAAAE1K7Sg+i6kzOuatj3WhK3loRJ7zzAKaYpxk7wg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 466, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3044022031230428405560dcb88fb5a646836aea9b23a23dd973dcbe8014c87b8b20eb0702200f9344d6e812ce166646747694a41b0aaf97374e19f3c5fb8bd7ae3d9bd0beff", + "result" : "valid" + }, + { + "tcId" : 467, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100caa797da65b320ab0d5c470cda0b36b294359c7db9841d679174db34c4855743022100cf543a62f23e212745391aaf7505f345123d2685ee3b941d3de6d9b36242e5a0", + "result" : "valid" + }, + { + "tcId" : 468, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502207e5f0ab5d900d3d3d7867657e5d6d36519bc54084536e7d21c336ed8001859450221009450c07f201faec94b82dfb322e5ac676688294aad35aa72e727ff0b19b646aa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d", + "wx" : "00bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015", + "wy" : "00fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvLspFMefBF6qbsu8YSgWs75dLWeW\ncH2BJen4UcGK8BX////+7K1EtvBdFbMxRlScIpe1IqXu2EMM/1lnWObEPQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-256", + "tests" : [ + { + "tcId" : 469, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100d7d70c581ae9e3f66dc6a480bf037ae23f8a1e4a2136fe4b03aa69f0ca25b35602210089c460f8a5a5c2bbba962c8a3ee833a413e85658e62a59e2af41d9127cc47224", + "result" : "valid" + }, + { + "tcId" : 470, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30440220341c1b9ff3c83dd5e0dfa0bf68bcdf4bb7aa20c625975e5eeee34bb396266b34022072b69f061b750fd5121b22b11366fad549c634e77765a017902a67099e0a4469", + "result" : "valid" + }, + { + "tcId" : 471, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022070bebe684cdcb5ca72a42f0d873879359bd1781a591809947628d313a3814f67022100aec03aca8f5587a4d535fa31027bbe9cc0e464b1c3577f4c2dcde6b2094798a9", + "result" : "valid" + } + ] + } + ] +} diff --git a/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha3_256_test.json b/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha3_256_test.json new file mode 100644 index 0000000000..cf4491668e --- /dev/null +++ b/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha3_256_test.json @@ -0,0 +1,6582 @@ +{ + "algorithm" : "ECDSA", + "schema" : "ecdsa_verify_schema.json", + "generatorVersion" : "0.9rc5", + "numberOfTests" : 479, + "header" : [ + "Test vectors of type EcdsaVerify are meant for the verification", + "of ASN encoded ECDSA signatures." + ], + "notes" : { + "ArithmeticError" : { + "bugType" : "EDGE_CASE", + "description" : "Some implementations of ECDSA have arithmetic errors that occur when intermediate results have extreme values. This test vector has been constructed to test such occurences.", + "cves" : [ + "CVE-2017-18146" + ] + }, + "BerEncodedSignature" : { + "bugType" : "BER_ENCODING", + "description" : "ECDSA signatures are usually DER encoded. This signature contains valid values for r and s, but it uses alternative BER encoding.", + "effect" : "Accepting alternative BER encodings may be benign in some cases, or be an issue if protocol requires signature malleability.", + "cves" : [ + "CVE-2020-14966", + "CVE-2020-13822", + "CVE-2019-14859", + "CVE-2016-1000342" + ] + }, + "EdgeCasePublicKey" : { + "bugType" : "EDGE_CASE", + "description" : "The test vector uses a special case public key. " + }, + "EdgeCaseShamirMultiplication" : { + "bugType" : "EDGE_CASE", + "description" : "Shamir proposed a fast method for computing the sum of two scalar multiplications efficiently. This test vector has been constructed so that an intermediate result is the point at infinity if Shamir's method is used." + }, + "IntegerOverflow" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified, so that the original value is restored if the implementation ignores the most significant bits.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "InvalidEncoding" : { + "bugType" : "CAN_OF_WORMS", + "description" : "ECDSA signatures are encoded using ASN.1. This test vector contains an incorrectly encoded signature. The test vector itself was generated from a valid signature by modifying its encoding.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "InvalidSignature" : { + "bugType" : "AUTH_BYPASS", + "description" : "The signature contains special case values such as r=0 and s=0. Buggy implementations may accept such values, if the implementation does not check boundaries and computes s^(-1) == 0.", + "effect" : "Accepting such signatures can have the effect that an adversary can forge signatures without even knowning the message to sign.", + "cves" : [ + "CVE-2022-21449", + "CVE-2021-43572", + "CVE-2022-24884" + ] + }, + "InvalidTypesInSignature" : { + "bugType" : "AUTH_BYPASS", + "description" : "The signature contains invalid types. Dynamic typed languages sometime coerce such values of different types into integers. If an implementation is careless and has additional bugs, such as not checking integer boundaries then it may be possible that such signatures are accepted.", + "effect" : "Accepting such signatures can have the effect that an adversary can forge signatures without even knowning the message to sign.", + "cves" : [ + "CVE-2022-21449" + ] + }, + "MissingZero" : { + "bugType" : "LEGACY", + "description" : "Some implementations of ECDSA and DSA incorrectly encode r and s by not including leading zeros in the ASN encoding of integers when necessary. Hence, some implementations (e.g. jdk) allow signatures with incorrect ASN encodings assuming that the signature is otherwise valid.", + "effect" : "While signatures are more malleable if such signatures are accepted, this typically leads to no vulnerability, since a badly encoded signature can be reencoded correctly." + }, + "ModifiedInteger" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified. The goal is to check for arithmetic errors.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "ModifiedSignature" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an invalid signature that was generated from a valid signature by modifying it.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "ModularInverse" : { + "bugType" : "EDGE_CASE", + "description" : "The test vectors contains a signature where computing the modular inverse of s hits an edge case.", + "effect" : "While the signature in this test vector is constructed and similar cases are unlikely to occur, it is important to determine if the underlying arithmetic error can be used to forge signatures.", + "cves" : [ + "CVE-2019-0865" + ] + }, + "PointDuplication" : { + "bugType" : "EDGE_CASE", + "description" : "Some implementations of ECDSA do not handle duplication and points at infinity correctly. This is a test vector that has been specially crafted to check for such an omission.", + "cves" : [ + "2020-12607", + "CVE-2015-2730" + ] + }, + "RangeCheck" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified. By adding or subtracting the order of the group (or other values) the test vector checks whether signature verification verifies the range of r and s.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "SmallRandS" : { + "bugType" : "EDGE_CASE", + "description" : "The test vectors contains a signature where both r and s are small integers. Some libraries cannot verify such signatures.", + "effect" : "While the signature in this test vector is constructed and similar cases are unlikely to occur, it is important to determine if the underlying arithmetic error can be used to forge signatures.", + "cves" : [ + "2020-13895" + ] + }, + "SpecialCaseHash" : { + "bugType" : "EDGE_CASE", + "description" : "The test vector contains a signature where the hash of the message is a special case, e.g., contains a long run of 0 or 1 bits." + }, + "ValidSignature" : { + "bugType" : "BASIC", + "description" : "The test vector contains a valid signature that was generated pseudorandomly. Such signatures should not fail to verify unless some of the parameters (e.g. curve or hash function) are not supported." + } + }, + "testGroups" : [ + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0404aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad587d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d", + "wx" : "04aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad5", + "wy" : "0087d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000404aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad587d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEBKrsc2NXJvIT+4qeZNo7hjLkFJWp\nRNAEW1IuunJA+tWH2TFXmKqjpboBd1eHztBeqve04J/IHW0apUboNl1SXQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 1, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "", + "sig" : "3044022063f01899b4b0bfe9dc9929fd4526919b981acda781044ee3d2c337bf5fc748300220591381bdf1b1a9b01020b87314a128d06e4833342bf232779f61480739613927", + "result" : "valid" + }, + { + "tcId" : 2, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "4d7367", + "sig" : "3044022010228beaf773caeff22a94602e9eff1923dcc51b277f64b482ea63218c350b0d02202104c8343f8970a28c9eb221a63c857ef385e758eaccc5f7d2ae975553a1534b", + "result" : "valid" + }, + { + "tcId" : 3, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "3045022100e6e1b8c20e9d00f0b6cf1b2c39cacd9c50ee3f990553250f074a4a3eed3afe43022052f3be1ae2d2f9b2bfea8e8c22d95af4574581a9f4b09a89f7b6a4ad1c5b2776", + "result" : "valid" + }, + { + "tcId" : 4, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "0000000000000000000000000000000000000000", + "sig" : "3045022020f6203e48fc4c66ae8a74ec61d5124772daad058a74b871914d37dfe9d409c10221008b68de7a4786e29b3a726ea7fd8ef2a585b5c8dadf11281f2caa228eb3df3f96", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e", + "wx" : "2927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838", + "wy" : "00c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKSexBRK64+3c/kZ4KBKLrSkDJpkZ\n9whgacjE32xzKDjHeHlk6qwA5ZIfsUmKYPRgZ2az2WhQAVWNGpdOc0FRPg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 5, + "comment" : "signature malleability", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "30460221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0221009364745a6a2d69f2283698fdfbee7b13de20bc93deb0230a9af3bd9fddf04401", + "result" : "valid" + }, + { + "tcId" : 6, + "comment" : "Legacy: ASN encoding of r misses leading 0", + "flags" : [ + "MissingZero" + ], + "msg" : "313233343030", + "sig" : "304402208ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 7, + "comment" : "valid", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "valid" + }, + { + "tcId" : 8, + "comment" : "length of sequence [r, s] uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "3081450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 9, + "comment" : "length of sequence [r, s] contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "308200450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 10, + "comment" : "length of sequence [r, s] uses 70 instead of 69", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30460221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 11, + "comment" : "length of sequence [r, s] uses 68 instead of 69", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30440221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 12, + "comment" : "uint32 overflow in length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308501000000450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 13, + "comment" : "uint64 overflow in length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30890100000000000000450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 14, + "comment" : "length of sequence [r, s] = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30847fffffff0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 15, + "comment" : "length of sequence [r, s] = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3084800000000221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 16, + "comment" : "length of sequence [r, s] = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3084ffffffff0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 17, + "comment" : "length of sequence [r, s] = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3085ffffffffff0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 18, + "comment" : "length of sequence [r, s] = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3088ffffffffffffffff0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 19, + "comment" : "incorrect length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30ff0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 20, + "comment" : "replaced sequence [r, s] by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30800221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 21, + "comment" : "removing sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "", + "result" : "invalid" + }, + { + "tcId" : 22, + "comment" : "lonely sequence tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30", + "result" : "invalid" + }, + { + "tcId" : 23, + "comment" : "appending 0's to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30470221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000", + "result" : "invalid" + }, + { + "tcId" : 24, + "comment" : "prepending 0's to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304700000221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 25, + "comment" : "appending unused 0's to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000", + "result" : "invalid" + }, + { + "tcId" : 26, + "comment" : "appending null value to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30470221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500500", + "result" : "invalid" + }, + { + "tcId" : 27, + "comment" : "prepending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a49817730450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 28, + "comment" : "prepending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3049250030450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 29, + "comment" : "appending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304730450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500004deadbeef", + "result" : "invalid" + }, + { + "tcId" : 30, + "comment" : "including undefined tags", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304daa00bb00cd0030450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 31, + "comment" : "including undefined tags", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d2229aa00bb00cd000221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 32, + "comment" : "including undefined tags", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e2228aa00bb00cd0002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 33, + "comment" : "truncated length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3081", + "result" : "invalid" + }, + { + "tcId" : 34, + "comment" : "including undefined tags to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304baa02aabb30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 35, + "comment" : "using composition with indefinite length for sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "308030450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000", + "result" : "invalid" + }, + { + "tcId" : 36, + "comment" : "using composition with wrong tag for sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "308031450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000", + "result" : "invalid" + }, + { + "tcId" : 37, + "comment" : "Replacing sequence [r, s] with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "0500", + "result" : "invalid" + }, + { + "tcId" : 38, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "2e450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 39, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "2f450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 40, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "31450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 41, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "32450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 42, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "ff450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 43, + "comment" : "dropping value of sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3000", + "result" : "invalid" + }, + { + "tcId" : 44, + "comment" : "using composition for sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3049300102304421008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 45, + "comment" : "truncated sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30440221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1", + "result" : "invalid" + }, + { + "tcId" : 46, + "comment" : "truncated sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304421008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 47, + "comment" : "sequence [r, s] of size 4166 to check for overflows", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308210460221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 48, + "comment" : "indefinite length", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "30800221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000", + "result" : "invalid" + }, + { + "tcId" : 49, + "comment" : "indefinite length with truncated delimiter", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30800221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e15000", + "result" : "invalid" + }, + { + "tcId" : 50, + "comment" : "indefinite length with additional element", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30800221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e15005000000", + "result" : "invalid" + }, + { + "tcId" : 51, + "comment" : "indefinite length with truncated element", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30800221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150060811220000", + "result" : "invalid" + }, + { + "tcId" : 52, + "comment" : "indefinite length with garbage", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30800221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000fe02beef", + "result" : "invalid" + }, + { + "tcId" : 53, + "comment" : "indefinite length with nonempty EOC", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30800221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500002beef", + "result" : "invalid" + }, + { + "tcId" : 54, + "comment" : "prepend empty sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304730000221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 55, + "comment" : "append empty sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30470221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1503000", + "result" : "invalid" + }, + { + "tcId" : 56, + "comment" : "append zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30480221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150020100", + "result" : "invalid" + }, + { + "tcId" : 57, + "comment" : "append garbage with high tag number", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30480221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150bf7f00", + "result" : "invalid" + }, + { + "tcId" : 58, + "comment" : "append null with explicit tag", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30490221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150a0020500", + "result" : "invalid" + }, + { + "tcId" : 59, + "comment" : "append null with implicit tag", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30470221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150a000", + "result" : "invalid" + }, + { + "tcId" : 60, + "comment" : "sequence of sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304730450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 61, + "comment" : "truncated sequence: removed last 1 elements", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30230221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e", + "result" : "invalid" + }, + { + "tcId" : 62, + "comment" : "repeating element in sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30670221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e15002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 63, + "comment" : "flipped bit 0 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3043008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36f02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 64, + "comment" : "flipped bit 32 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3043008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af43e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 65, + "comment" : "flipped bit 48 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3043008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b234af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 66, + "comment" : "flipped bit 64 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3043008ab9effd6738803fd19b92d2e9fdea1293056b793e29542a3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 67, + "comment" : "length of r uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "3046028121008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 68, + "comment" : "length of r contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "304702820021008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 69, + "comment" : "length of r uses 34 instead of 33", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450222008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 70, + "comment" : "length of r uses 32 instead of 33", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450220008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 71, + "comment" : "uint32 overflow in length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a02850100000021008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 72, + "comment" : "uint64 overflow in length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e0289010000000000000021008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 73, + "comment" : "length of r = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902847fffffff008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 74, + "comment" : "length of r = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3049028480000000008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 75, + "comment" : "length of r = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490284ffffffff008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 76, + "comment" : "length of r = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a0285ffffffffff008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 77, + "comment" : "length of r = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d0288ffffffffffffffff008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 78, + "comment" : "incorrect length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502ff008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 79, + "comment" : "replaced r by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450280008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 80, + "comment" : "removing r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302202206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 81, + "comment" : "lonely integer tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30230202206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 82, + "comment" : "lonely integer tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30240221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02", + "result" : "invalid" + }, + { + "tcId" : 83, + "comment" : "appending 0's to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30470223008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e000002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 84, + "comment" : "prepending 0's to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304702230000008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 85, + "comment" : "appending unused 0's to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30470221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e000002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 86, + "comment" : "appending null value to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30470223008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e050002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 87, + "comment" : "prepending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a22264981770221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 88, + "comment" : "prepending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3049222525000221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 89, + "comment" : "appending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d22230221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0004deadbeef02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 90, + "comment" : "truncated length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3024028102206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 91, + "comment" : "including undefined tags to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b2227aa02aabb0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 92, + "comment" : "using composition with indefinite length for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304922800221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e000002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 93, + "comment" : "using composition with wrong tag for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304922800321008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e000002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 94, + "comment" : "Replacing r with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3024050002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 95, + "comment" : "changing tag value of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30450021008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 96, + "comment" : "changing tag value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450121008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 97, + "comment" : "changing tag value of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30450321008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 98, + "comment" : "changing tag value of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30450421008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 99, + "comment" : "changing tag value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3045ff21008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 100, + "comment" : "dropping value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3024020002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 101, + "comment" : "using composition for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3049222502010002208ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 102, + "comment" : "modifying first byte of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30450221028ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 103, + "comment" : "modifying last byte of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c3ee02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 104, + "comment" : "truncated r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30440220008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c302206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 105, + "comment" : "r of size 4130 to check for overflows", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3082104802821022008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 106, + "comment" : "leading ff in r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30460222ff008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 107, + "comment" : "replaced r by infinity", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302509018002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 108, + "comment" : "replacing r with zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302502010002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 109, + "comment" : "flipped bit 0 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30430221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e151", + "result" : "invalid" + }, + { + "tcId" : 110, + "comment" : "flipped bit 32 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30430221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d221e72e150", + "result" : "invalid" + }, + { + "tcId" : 111, + "comment" : "flipped bit 48 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30430221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c70d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 112, + "comment" : "flipped bit 64 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30430221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7b58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 113, + "comment" : "length of s uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "30460221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0281206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 114, + "comment" : "length of s contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "30470221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e028200206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 115, + "comment" : "length of s uses 33 instead of 32", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02216c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 116, + "comment" : "length of s uses 31 instead of 32", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e021f6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 117, + "comment" : "uint32 overflow in length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e028501000000206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 118, + "comment" : "uint64 overflow in length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02890100000000000000206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 119, + "comment" : "length of s = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02847fffffff6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 120, + "comment" : "length of s = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0284800000006c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 121, + "comment" : "length of s = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0284ffffffff6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 122, + "comment" : "length of s = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0285ffffffffff6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 123, + "comment" : "length of s = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0288ffffffffffffffff6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 124, + "comment" : "incorrect length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02ff6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 125, + "comment" : "replaced s by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02806c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 126, + "comment" : "appending 0's to s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30470221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02226c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000", + "result" : "invalid" + }, + { + "tcId" : 127, + "comment" : "prepending 0's to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30470221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e022200006c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 128, + "comment" : "appending null value to s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30470221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02226c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500500", + "result" : "invalid" + }, + { + "tcId" : 129, + "comment" : "prepending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e222549817702206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 130, + "comment" : "prepending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e2224250002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 131, + "comment" : "appending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e222202206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500004deadbeef", + "result" : "invalid" + }, + { + "tcId" : 132, + "comment" : "truncated length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30250221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0281", + "result" : "invalid" + }, + { + "tcId" : 133, + "comment" : "including undefined tags to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b0221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e2226aa02aabb02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 134, + "comment" : "using composition with indefinite length for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e228002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000", + "result" : "invalid" + }, + { + "tcId" : 135, + "comment" : "using composition with wrong tag for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e228003206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000", + "result" : "invalid" + }, + { + "tcId" : 136, + "comment" : "Replacing s with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30250221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0500", + "result" : "invalid" + }, + { + "tcId" : 137, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e00206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 138, + "comment" : "changing tag value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e01206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 139, + "comment" : "changing tag value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e03206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 140, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e04206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 141, + "comment" : "changing tag value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36eff206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 142, + "comment" : "dropping value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30250221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0200", + "result" : "invalid" + }, + { + "tcId" : 143, + "comment" : "using composition for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e222402016c021f9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 144, + "comment" : "modifying first byte of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206e9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 145, + "comment" : "modifying last byte of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30450221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1d0", + "result" : "invalid" + }, + { + "tcId" : 146, + "comment" : "truncated s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30440221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e021f6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1", + "result" : "invalid" + }, + { + "tcId" : 147, + "comment" : "truncated s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30440221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e021f9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 148, + "comment" : "s of size 4129 to check for overflows", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "308210480221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e028210216c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 149, + "comment" : "leading ff in s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30460221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e0221ff6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 150, + "comment" : "replaced s by infinity", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30260221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e090180", + "result" : "invalid" + }, + { + "tcId" : 151, + "comment" : "replacing s with zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30260221008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e020100", + "result" : "invalid" + }, + { + "tcId" : 152, + "comment" : "replaced r by r + n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30450221018ab9effc67388040d19b92d2e9fdea124fec6626e540f2b02edc15b83a73e8bf02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 153, + "comment" : "replaced r by r - n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "304402208ab9effe6738803ed19b92d2e9fdea12d61e70cb9711b5a64768803241ad9e1d02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 154, + "comment" : "replaced r by r + 256 * n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "3046022201008ab9eefd6738813fd19b92d2e9fde9cf7a00192055c7d91ef4ed0df1a136146e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 155, + "comment" : "replaced r by -r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30450221ff7546100298c77fc02e646d2d160215ed6cfa9486c1d6abd4c4ddb50ac1ef3c9202206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 156, + "comment" : "replaced r by n - r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "304402207546100198c77fc12e646d2d160215ed29e18f3468ee4a59b8977fcdbe5261e302206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 157, + "comment" : "replaced r by -n - r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30450221fe7546100398c77fbf2e646d2d160215edb01399d91abf0d4fd123ea47c58c174102206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 158, + "comment" : "replaced r by r + 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "30450221018ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 159, + "comment" : "replaced r by r + 2**320", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "304d02290100000000000000008ab9effd6738803fd19b92d2e9fdea1293056b793e29542b3b224af53e10c36e02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 160, + "comment" : "replaced s by s + n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30450221016c9b8ba395d2960fd7c96702041184eb9bad38c76f7f19ff4c7fd7e61ad606a102206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 161, + "comment" : "replaced s by s - n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30450221ff6c9b8ba595d2960dd7c96702041184ec21df436c214fdcf5650c4260220fbbff02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 162, + "comment" : "replaced s by s + 256 * n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "3046022201006c9b8aa495d2970ed7c96702041184a8c5c0ebc0e006006e1290d01f8198325002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 163, + "comment" : "replaced s by -s", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "304402209364745b6a2d69f1283698fdfbee7b142139c1e637988485a739f2dce18d1eb002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 164, + "comment" : "replaced s by -n - s", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30450221fe9364745c6a2d69f0283698fdfbee7b146452c7389080e600b3802819e529f95f02206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 165, + "comment" : "replaced s by s + 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "30450221016c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e15002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 166, + "comment" : "replaced s by s - 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "30450221ff6c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e15002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 167, + "comment" : "replaced s by s + 2**320", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "304d02290100000000000000006c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e15002206c9b8ba495d2960ed7c96702041184ebdec63e19c8677b7a58c60d231e72e150", + "result" : "invalid" + }, + { + "tcId" : 168, + "comment" : "Signature with special case values r=0 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100020100", + "result" : "invalid" + }, + { + "tcId" : 169, + "comment" : "Signature with special case values r=0 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100020101", + "result" : "invalid" + }, + { + "tcId" : 170, + "comment" : "Signature with special case values r=0 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201000201ff", + "result" : "invalid" + }, + { + "tcId" : 171, + "comment" : "Signature with special case values r=0 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 172, + "comment" : "Signature with special case values r=0 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 173, + "comment" : "Signature with special case values r=0 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 174, + "comment" : "Signature with special case values r=0 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 175, + "comment" : "Signature with special case values r=0 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 176, + "comment" : "Signature with special case values r=1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101020100", + "result" : "invalid" + }, + { + "tcId" : 177, + "comment" : "Signature with special case values r=1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101020101", + "result" : "invalid" + }, + { + "tcId" : 178, + "comment" : "Signature with special case values r=1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201010201ff", + "result" : "invalid" + }, + { + "tcId" : 179, + "comment" : "Signature with special case values r=1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 180, + "comment" : "Signature with special case values r=1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 181, + "comment" : "Signature with special case values r=1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 182, + "comment" : "Signature with special case values r=1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 183, + "comment" : "Signature with special case values r=1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 184, + "comment" : "Signature with special case values r=-1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff020100", + "result" : "invalid" + }, + { + "tcId" : 185, + "comment" : "Signature with special case values r=-1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff020101", + "result" : "invalid" + }, + { + "tcId" : 186, + "comment" : "Signature with special case values r=-1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff0201ff", + "result" : "invalid" + }, + { + "tcId" : 187, + "comment" : "Signature with special case values r=-1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 188, + "comment" : "Signature with special case values r=-1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 189, + "comment" : "Signature with special case values r=-1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 190, + "comment" : "Signature with special case values r=-1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 191, + "comment" : "Signature with special case values r=-1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 192, + "comment" : "Signature with special case values r=n and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020100", + "result" : "invalid" + }, + { + "tcId" : 193, + "comment" : "Signature with special case values r=n and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101", + "result" : "invalid" + }, + { + "tcId" : 194, + "comment" : "Signature with special case values r=n and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510201ff", + "result" : "invalid" + }, + { + "tcId" : 195, + "comment" : "Signature with special case values r=n and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 196, + "comment" : "Signature with special case values r=n and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 197, + "comment" : "Signature with special case values r=n and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 198, + "comment" : "Signature with special case values r=n and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 199, + "comment" : "Signature with special case values r=n and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 200, + "comment" : "Signature with special case values r=n - 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550020100", + "result" : "invalid" + }, + { + "tcId" : 201, + "comment" : "Signature with special case values r=n - 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550020101", + "result" : "invalid" + }, + { + "tcId" : 202, + "comment" : "Signature with special case values r=n - 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325500201ff", + "result" : "invalid" + }, + { + "tcId" : 203, + "comment" : "Signature with special case values r=n - 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 204, + "comment" : "Signature with special case values r=n - 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 205, + "comment" : "Signature with special case values r=n - 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 206, + "comment" : "Signature with special case values r=n - 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 207, + "comment" : "Signature with special case values r=n - 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 208, + "comment" : "Signature with special case values r=n + 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552020100", + "result" : "invalid" + }, + { + "tcId" : 209, + "comment" : "Signature with special case values r=n + 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552020101", + "result" : "invalid" + }, + { + "tcId" : 210, + "comment" : "Signature with special case values r=n + 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325520201ff", + "result" : "invalid" + }, + { + "tcId" : 211, + "comment" : "Signature with special case values r=n + 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 212, + "comment" : "Signature with special case values r=n + 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 213, + "comment" : "Signature with special case values r=n + 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 214, + "comment" : "Signature with special case values r=n + 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 215, + "comment" : "Signature with special case values r=n + 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 216, + "comment" : "Signature with special case values r=p and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff020100", + "result" : "invalid" + }, + { + "tcId" : 217, + "comment" : "Signature with special case values r=p and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff020101", + "result" : "invalid" + }, + { + "tcId" : 218, + "comment" : "Signature with special case values r=p and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0201ff", + "result" : "invalid" + }, + { + "tcId" : 219, + "comment" : "Signature with special case values r=p and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 220, + "comment" : "Signature with special case values r=p and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 221, + "comment" : "Signature with special case values r=p and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 222, + "comment" : "Signature with special case values r=p and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 223, + "comment" : "Signature with special case values r=p and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 224, + "comment" : "Signature with special case values r=p + 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000001000000000000000000000000020100", + "result" : "invalid" + }, + { + "tcId" : 225, + "comment" : "Signature with special case values r=p + 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000001000000000000000000000000020101", + "result" : "invalid" + }, + { + "tcId" : 226, + "comment" : "Signature with special case values r=p + 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff000000010000000000000000000000010000000000000000000000000201ff", + "result" : "invalid" + }, + { + "tcId" : 227, + "comment" : "Signature with special case values r=p + 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 228, + "comment" : "Signature with special case values r=p + 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 229, + "comment" : "Signature with special case values r=p + 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 230, + "comment" : "Signature with special case values r=p + 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 231, + "comment" : "Signature with special case values r=p + 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 232, + "comment" : "Signature encoding contains incorrect types: r=0, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008020100090380fe01", + "result" : "invalid" + }, + { + "tcId" : 233, + "comment" : "Signature encoding contains incorrect types: r=0, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100090142", + "result" : "invalid" + }, + { + "tcId" : 234, + "comment" : "Signature encoding contains incorrect types: r=0, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100010101", + "result" : "invalid" + }, + { + "tcId" : 235, + "comment" : "Signature encoding contains incorrect types: r=0, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100010100", + "result" : "invalid" + }, + { + "tcId" : 236, + "comment" : "Signature encoding contains incorrect types: r=0, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201000500", + "result" : "invalid" + }, + { + "tcId" : 237, + "comment" : "Signature encoding contains incorrect types: r=0, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201000c00", + "result" : "invalid" + }, + { + "tcId" : 238, + "comment" : "Signature encoding contains incorrect types: r=0, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201000c0130", + "result" : "invalid" + }, + { + "tcId" : 239, + "comment" : "Signature encoding contains incorrect types: r=0, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201003000", + "result" : "invalid" + }, + { + "tcId" : 240, + "comment" : "Signature encoding contains incorrect types: r=0, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201003003020100", + "result" : "invalid" + }, + { + "tcId" : 241, + "comment" : "Signature encoding contains incorrect types: r=1, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008020101090380fe01", + "result" : "invalid" + }, + { + "tcId" : 242, + "comment" : "Signature encoding contains incorrect types: r=1, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101090142", + "result" : "invalid" + }, + { + "tcId" : 243, + "comment" : "Signature encoding contains incorrect types: r=1, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101010101", + "result" : "invalid" + }, + { + "tcId" : 244, + "comment" : "Signature encoding contains incorrect types: r=1, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101010100", + "result" : "invalid" + }, + { + "tcId" : 245, + "comment" : "Signature encoding contains incorrect types: r=1, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201010500", + "result" : "invalid" + }, + { + "tcId" : 246, + "comment" : "Signature encoding contains incorrect types: r=1, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201010c00", + "result" : "invalid" + }, + { + "tcId" : 247, + "comment" : "Signature encoding contains incorrect types: r=1, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201010c0130", + "result" : "invalid" + }, + { + "tcId" : 248, + "comment" : "Signature encoding contains incorrect types: r=1, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201013000", + "result" : "invalid" + }, + { + "tcId" : 249, + "comment" : "Signature encoding contains incorrect types: r=1, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201013003020100", + "result" : "invalid" + }, + { + "tcId" : 250, + "comment" : "Signature encoding contains incorrect types: r=-1, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201ff090380fe01", + "result" : "invalid" + }, + { + "tcId" : 251, + "comment" : "Signature encoding contains incorrect types: r=-1, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff090142", + "result" : "invalid" + }, + { + "tcId" : 252, + "comment" : "Signature encoding contains incorrect types: r=-1, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff010101", + "result" : "invalid" + }, + { + "tcId" : 253, + "comment" : "Signature encoding contains incorrect types: r=-1, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff010100", + "result" : "invalid" + }, + { + "tcId" : 254, + "comment" : "Signature encoding contains incorrect types: r=-1, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff0500", + "result" : "invalid" + }, + { + "tcId" : 255, + "comment" : "Signature encoding contains incorrect types: r=-1, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff0c00", + "result" : "invalid" + }, + { + "tcId" : 256, + "comment" : "Signature encoding contains incorrect types: r=-1, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff0c0130", + "result" : "invalid" + }, + { + "tcId" : 257, + "comment" : "Signature encoding contains incorrect types: r=-1, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff3000", + "result" : "invalid" + }, + { + "tcId" : 258, + "comment" : "Signature encoding contains incorrect types: r=-1, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201ff3003020100", + "result" : "invalid" + }, + { + "tcId" : 259, + "comment" : "Signature encoding contains incorrect types: r=n, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551090380fe01", + "result" : "invalid" + }, + { + "tcId" : 260, + "comment" : "Signature encoding contains incorrect types: r=n, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551090142", + "result" : "invalid" + }, + { + "tcId" : 261, + "comment" : "Signature encoding contains incorrect types: r=n, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551010101", + "result" : "invalid" + }, + { + "tcId" : 262, + "comment" : "Signature encoding contains incorrect types: r=n, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551010100", + "result" : "invalid" + }, + { + "tcId" : 263, + "comment" : "Signature encoding contains incorrect types: r=n, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510500", + "result" : "invalid" + }, + { + "tcId" : 264, + "comment" : "Signature encoding contains incorrect types: r=n, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510c00", + "result" : "invalid" + }, + { + "tcId" : 265, + "comment" : "Signature encoding contains incorrect types: r=n, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510c0130", + "result" : "invalid" + }, + { + "tcId" : 266, + "comment" : "Signature encoding contains incorrect types: r=n, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325513000", + "result" : "invalid" + }, + { + "tcId" : 267, + "comment" : "Signature encoding contains incorrect types: r=n, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325513003020100", + "result" : "invalid" + }, + { + "tcId" : 268, + "comment" : "Signature encoding contains incorrect types: r=p, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff090380fe01", + "result" : "invalid" + }, + { + "tcId" : 269, + "comment" : "Signature encoding contains incorrect types: r=p, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff090142", + "result" : "invalid" + }, + { + "tcId" : 270, + "comment" : "Signature encoding contains incorrect types: r=p, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff010101", + "result" : "invalid" + }, + { + "tcId" : 271, + "comment" : "Signature encoding contains incorrect types: r=p, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff010100", + "result" : "invalid" + }, + { + "tcId" : 272, + "comment" : "Signature encoding contains incorrect types: r=p, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0500", + "result" : "invalid" + }, + { + "tcId" : 273, + "comment" : "Signature encoding contains incorrect types: r=p, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0c00", + "result" : "invalid" + }, + { + "tcId" : 274, + "comment" : "Signature encoding contains incorrect types: r=p, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0c0130", + "result" : "invalid" + }, + { + "tcId" : 275, + "comment" : "Signature encoding contains incorrect types: r=p, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff3000", + "result" : "invalid" + }, + { + "tcId" : 276, + "comment" : "Signature encoding contains incorrect types: r=p, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff3003020100", + "result" : "invalid" + }, + { + "tcId" : 277, + "comment" : "Signature encoding contains incorrect types: r=0.25, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300a090380fe01090380fe01", + "result" : "invalid" + }, + { + "tcId" : 278, + "comment" : "Signature encoding contains incorrect types: r=nan, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006090142090142", + "result" : "invalid" + }, + { + "tcId" : 279, + "comment" : "Signature encoding contains incorrect types: r=True, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010101010101", + "result" : "invalid" + }, + { + "tcId" : 280, + "comment" : "Signature encoding contains incorrect types: r=False, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010100010100", + "result" : "invalid" + }, + { + "tcId" : 281, + "comment" : "Signature encoding contains incorrect types: r=Null, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300405000500", + "result" : "invalid" + }, + { + "tcId" : 282, + "comment" : "Signature encoding contains incorrect types: r=empyt UTF-8 string, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30040c000c00", + "result" : "invalid" + }, + { + "tcId" : 283, + "comment" : "Signature encoding contains incorrect types: r=\"0\", s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060c01300c0130", + "result" : "invalid" + }, + { + "tcId" : 284, + "comment" : "Signature encoding contains incorrect types: r=empty list, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300430003000", + "result" : "invalid" + }, + { + "tcId" : 285, + "comment" : "Signature encoding contains incorrect types: r=list containing 0, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300a30030201003003020100", + "result" : "invalid" + }, + { + "tcId" : 286, + "comment" : "Signature encoding contains incorrect types: r=0.25, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008090380fe01020100", + "result" : "invalid" + }, + { + "tcId" : 287, + "comment" : "Signature encoding contains incorrect types: r=nan, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006090142020100", + "result" : "invalid" + }, + { + "tcId" : 288, + "comment" : "Signature encoding contains incorrect types: r=True, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010101020100", + "result" : "invalid" + }, + { + "tcId" : 289, + "comment" : "Signature encoding contains incorrect types: r=False, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010100020100", + "result" : "invalid" + }, + { + "tcId" : 290, + "comment" : "Signature encoding contains incorrect types: r=Null, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050500020100", + "result" : "invalid" + }, + { + "tcId" : 291, + "comment" : "Signature encoding contains incorrect types: r=empyt UTF-8 string, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050c00020100", + "result" : "invalid" + }, + { + "tcId" : 292, + "comment" : "Signature encoding contains incorrect types: r=\"0\", s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060c0130020100", + "result" : "invalid" + }, + { + "tcId" : 293, + "comment" : "Signature encoding contains incorrect types: r=empty list, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30053000020100", + "result" : "invalid" + }, + { + "tcId" : 294, + "comment" : "Signature encoding contains incorrect types: r=list containing 0, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30083003020100020100", + "result" : "invalid" + }, + { + "tcId" : 295, + "comment" : "Edge case for Shamir multiplication", + "flags" : [ + "EdgeCaseShamirMultiplication" + ], + "msg" : "313733323231", + "sig" : "3044022064a1aab5000d0e804f3e2fc02bdee9be8ff312334e2ba16d11547c97711c898e0220404a1a6da158ae1473fce08d338b8d6410a6a5903358b23fdd3a54fee2c2742b", + "result" : "valid" + }, + { + "tcId" : 296, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33313930393433323838", + "sig" : "3045022100a9edb87925684bcc5b92d0f7455123656e3498a0d182be63e2e6077c2b43bc6e02202c729ea1b01d14ee8fe702096cddd9394e351d801411ec8eac6b758475ea0070", + "result" : "valid" + }, + { + "tcId" : 297, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "383433343734313535", + "sig" : "304402203fba20ca893dcaf04e89141337a96abc7e24e026a8ff4c86d950de1c31b6427202206be2eced4ce388ff8026dfd3b658144f30931b7083ee2af06e75158c15b12249", + "result" : "valid" + }, + { + "tcId" : 298, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33353732363936383239", + "sig" : "3045022100c5aa31116f6006c479586ff7070014a35f22166701be8a5f1f1e9a43cb27dca0022068d1cee35ba3893b9cc3b5df5ac6afef55ebdb7ad9236b1fa8e438a538f8cb55", + "result" : "valid" + }, + { + "tcId" : 299, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "353931383333343239", + "sig" : "304502205b5b4d890504f56c16a4ac7947ac0057cdf640d2c39bac09fedc648bb0a16f1d022100f9c12e73a56d799e2827538187f0ed0ec331f6f0c089a4f6249d04c1b0c5cc8d", + "result" : "valid" + }, + { + "tcId" : 300, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3832353330383232353839", + "sig" : "304502204338e710478e8b922e50dc947f6fa0cd1903106cf02ee0742da69e8b624c5b6702210090c73bd0fcd07a4dd4a3664d559bd4795ac950d89463680852d33915de1a5745", + "result" : "valid" + }, + { + "tcId" : 301, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3133373334383238313432", + "sig" : "304502200fc97d7744e0b2762e6b48730d44c758ab238136a72693ff27339aaebefad581022100ab68ec80cf4afcca0f7d75f3c4b00e34ed4fe9101c98ed4d8c2f97eb865b1683", + "result" : "valid" + }, + { + "tcId" : 302, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "313733383135363430", + "sig" : "3045022100825f0b4230e30182b24b65151ec83d0aadc63ecfe0a91b5879ccf7fcce9eb40a022047f0211ad5471d055fe07c75f37f3fad8aeeff1ee11a54a17bab35212c46d5d6", + "result" : "valid" + }, + { + "tcId" : 303, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32353533343636353034", + "sig" : "304502203fedd83579431889710b67b6454d43ea7eddaaa9da950424e2c4ac730065a822022100b50cef5a9da8323fccd5bf13260dea6517c8ae6ccd6495f9ed7494cfd5891573", + "result" : "valid" + }, + { + "tcId" : 304, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32313833303339313937", + "sig" : "3044022069ba62b020a36333f7a0716577dd57d280132c540f66b9e2fe8d470121e0f135022066c7811587cb9247ec6d8c223b4c6d5533948fbabf072973d74cb19d3b2c91a6", + "result" : "valid" + }, + { + "tcId" : 305, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130353236313736353435", + "sig" : "30450221008bb763097d8ca8e9cb84e111f361f47de93499f50bc85401ea96a61d54fad7a802202587b81e277283d5c139b8e9a5f4aa0bb0b1c2b28963efddbf73a0eef341659a", + "result" : "valid" + }, + { + "tcId" : 306, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32353031353339393836", + "sig" : "30450221008260a1eb8ba8b52db95b0722887920a1f9989dfa1efd420d1f8f9ab3df0cffce02206752c5687e6889e008eb9ad6e41933796b4adcd6018420fdef250998f6adf603", + "result" : "valid" + }, + { + "tcId" : 307, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3134393533313634363139", + "sig" : "3045022100b809c133b30c3a8ff11ea9024b131664b51c2768afb8536744e041015da9380602206cd015a49e19b260da6cd32a94806fb8bdceec5dc5542a7b2b938cce75137f30", + "result" : "valid" + }, + { + "tcId" : 308, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32303633383532393036", + "sig" : "304502202069244f8e72562406d631f647a141831aca5907fbff09932797d8305ad3c19d022100dfb7a3ae1a4bdf76987d7de404c5d8b7c51a6ae8dbece9de345a4b71cb5e1f38", + "result" : "valid" + }, + { + "tcId" : 309, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37383339373634393932", + "sig" : "304402204d82e457954761001da6c5dd0fb45d3b8aae12a270cdc5b97d66f810e306532602200cc6217e3aee3839fd809b207d47dea412991932adb2de18ee86431452c22595", + "result" : "valid" + }, + { + "tcId" : 310, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32313239323634343639", + "sig" : "3045022100a81c6258489e10bb1132a6f81f76c31d7465869708d89eb018c51bf774e8a0930220304d75b7bebe9abda5daafc419a765ffb8e5c02dd91836c40c430f052d5ca59c", + "result" : "valid" + }, + { + "tcId" : 311, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34383332303432363833", + "sig" : "3045022100e8da776984d6af2b8d523d1bd6fab8b25409e669d172ef51e104648c1bf0dad1022049b4170fed1cc59ab000087a2c091b3f69a66c8562ed350472e982bd31a0d09e", + "result" : "valid" + }, + { + "tcId" : 312, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "333635323231383136", + "sig" : "3046022100c53d293775c5cfdb879b67ff4f4792942132c35c9dc7f8fda8b3a00967c75b47022100c36045151f70a5d6af2fd27cf1f13cb308b2e847151fa4b47e22f2df6220ae95", + "result" : "valid" + }, + { + "tcId" : 313, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3234393137313236393635", + "sig" : "30440220300ee6fa4de853ac6680302a9c439b82dfd046c314d7bbacb2e01274e61e9b5402200bb2b62f11b789848648fab7e0c46ca7b09cded01887ef6bda9f871bc5cc609f", + "result" : "valid" + }, + { + "tcId" : 314, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32363232373930373738", + "sig" : "3045022100ac58a18fa5973efb06adba842affbd256a1c624606b146dae5a6ef85992cb428022048b4ecb8697e4cd20e0f30721ad94f4c18943879ce5d99d8c000d90465138bd0", + "result" : "valid" + }, + { + "tcId" : 315, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "313031323537373238393237", + "sig" : "304402206ebc2857fd53656b857005eb8f95c4f6fd3c99f9636a028e5244edc60bc9e18c022027719f12eb1de6cade547cb98523bdc7108622240f38d12f415c79cd0b1344d9", + "result" : "valid" + }, + { + "tcId" : 316, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31303530383732323032", + "sig" : "3044022067e8ca1907624419e3ccd88002dd7757f595abc84bd861cd0198364a4571ff6b02200db40b6a7200cdc1a09df432a5a763436ab4130cbdee024dea2a3ddd6c023ed9", + "result" : "valid" + }, + { + "tcId" : 317, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32353037373237303332", + "sig" : "3045022100f4d8208eed5cb4bfe4ef6ddbbc3742e780e4212a39cf79c9f85605ee64a962cb022043dee8a3c45a45a91e83a18ff3f881047b4fd6ad3003b3af37fb8211eaf7d584", + "result" : "valid" + }, + { + "tcId" : 318, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "373139333435393339", + "sig" : "304402203363ccc93e2413e47528ab086408bc0521be73353f2c2371bbf2d9dc16e63fb3022068f3d1074a2e06d33fc19a567a8af0edcae923560cf38da2dab82e2249c8dbbd", + "result" : "valid" + }, + { + "tcId" : 319, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31363337333035373633", + "sig" : "304502210084960758125ad8de3df0c113ff35f1644e4d43f661c2d81848f3fe4e55846f1802205983630fc8975bab570d2c9f3cbbdecb4dd6179ec497aff312d807ec26ca940a", + "result" : "valid" + }, + { + "tcId" : 320, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34323431323733373133", + "sig" : "3044022006ca924b5686a22f2e39c0f980fd58d62bbaf33c3a57f98a315332121e9ba60b02206516b98b31048722ca25e0a6c450461823c0a35f37d671439084fbc27c4779a1", + "result" : "valid" + }, + { + "tcId" : 321, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "343735363134373337", + "sig" : "304402200093c5ef07a7d955056b88cc8240060b4ffb42835a3df353cbe16ccb62eaf3f60220364dbea6d5ead4202d6fdc253bb0c2c0522b55823e8bb890235ab09ae9030ea2", + "result" : "valid" + }, + { + "tcId" : 322, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37313632333237373334", + "sig" : "3045022100835274f3157b737975486c73e5bbdd15b61e2ebb9e580911e45fc288214d2e6702201d5dcebfc6d3ae3826b9a3211f5e2249acc967eb47dfd41a849241ffe779154f", + "result" : "valid" + }, + { + "tcId" : 323, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31323232343034313239", + "sig" : "304502203797916fb5c401a691b710050df3eec163383f855f93b61322a56d862ad5572d022100eb7bff4000738a83dd64082eff710d5eb619427198ac290b291f4599768959ca", + "result" : "valid" + }, + { + "tcId" : 324, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33353234353833333638", + "sig" : "3044022070992463694c845183db142a77bf5d73c17e9004a8b946b7b8eeb3fdf2b22e00022003843ec28e4c4d4f7726a5a5835575bb3e272f612246bc3aff288ac4a4e90c90", + "result" : "valid" + }, + { + "tcId" : 325, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3331363334333936", + "sig" : "3046022100aeaf228b41a1f311d4df74717f4134ee992e5f2922eec65ec83e2db82a866472022100f5ef65eb9fc3feaaac04f71a9a5ceb73e8cd6cb75b4595b39b250a50476cb68f", + "result" : "valid" + }, + { + "tcId" : 326, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36353332353938343339", + "sig" : "3045022100b84dbbddd3b8a2ddf67d27e4ef886f72d90cbb7ec2d6883728b27842d61505cc022032be7f0ff420ae3be212beb4c276d93e2527b0964d643c5807c8ee711e66e8e5", + "result" : "valid" + }, + { + "tcId" : 327, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "373338353138353034", + "sig" : "3046022100f7f6782978f376caf9434941535e1c87ad09b9d39ee936145a0b53b9250fd182022100fb752930c84c29e49f81a997a4d0f00fcdcb4a2f2bf8049cca5d7cf70b079cea", + "result" : "valid" + }, + { + "tcId" : 328, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31343635323636353739", + "sig" : "3045022100fb4b434112c1302ffd49ebd993cf5ec59729cbe78739db3c470264e378d56e8d02203aba99bd10be0fba04ca8d9601ae8f68ca7ffe5814f4cfbde78c1cc07a29fd8f", + "result" : "valid" + }, + { + "tcId" : 329, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32303334383839343934", + "sig" : "3046022100eafafe851aad76036013bd571772147b7257fb736ed7b4458e0dcf60a2c7b9c0022100b59c6409e51043b7e5c86a8d465978a4c8f78e13ef5b184fe5f46f201ff4efa8", + "result" : "valid" + }, + { + "tcId" : 330, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34343730383836373835", + "sig" : "304502206c74d1679d871a46a43c3fe375e09d4f1b6413c59b5e070d7984dae0aadbc37e022100ff1d22228c9e9cf9958d677eed4c3a252b10273ce2d360457faabe7f7439c0e8", + "result" : "valid" + }, + { + "tcId" : 331, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "353537363430343436", + "sig" : "3046022100cae28b592e2d5bf6f9ea541e70bceedd07adde40bc2b5f883d35ae9560fc85c202210099eaffc16f570b7837d74177dae6e6cfd873ea89424581bc690d0e49c4218402", + "result" : "valid" + }, + { + "tcId" : 332, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36333434393536363038", + "sig" : "304502206ce5133579dd044447206b9f6e1605d27f094b2c4466a5bf8e157873176baf3a022100bbe35524d9c1936bacecb6c270bf494eac75933caa8dbb2fef30f6572ed8667c", + "result" : "valid" + }, + { + "tcId" : 333, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34393432383039303331", + "sig" : "304402202855cf6e65812ea246e366ab961970d19387039a93f0bd406365d68b0356661302201b3a9593117380899d5c8f8f976ad4dee97db9f1225f735b1d41c2a115be93fb", + "result" : "valid" + }, + { + "tcId" : 334, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "323636353831393339", + "sig" : "304502210090ed3aa89579b73477e3fcba9f52a5a64b9b6d83b475a3881bc0e63d74f6bf9c022004cb5e2ca1d413b37a71607d5b5fa72ccc87a2edcd5c7f30daaa94241b749920", + "result" : "valid" + }, + { + "tcId" : 335, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33333332323134313134", + "sig" : "30450220055e38188756831ced4b01e0f9d4db6b02293c7ee2c3fd47860d38377ee0f4190221009c29f1688f16e111914d9c843c0a8f0306c1c4ddd5167cdd54338a4f4ab79a91", + "result" : "valid" + }, + { + "tcId" : 336, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "363136353237373135", + "sig" : "3045022006b28cd8538d8cc563473cf6c7abb519e4c8bb4c37915ef76512f37de02c2164022100a62dc2afb01a1a9bc877edd54f25fd1f6d0378b3fbaa219ff9ef28c560cc8065", + "result" : "valid" + }, + { + "tcId" : 337, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32333539393535383133", + "sig" : "3045022100c4b97652702efb1d1b67e966e88789efc0d9eb76d32efbeaf9c1bca36b2ea9a5022013e1b2358c7a34fef3ea738ef1a48fab63a2616455c81f8095394a2230c852e3", + "result" : "valid" + }, + { + "tcId" : 338, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "323931333631393538", + "sig" : "304502206a86100848566b5f5f89c13643515d81390952b6b5ce56b64fc3349e4edf21df022100c9ca4ba3a6fd501dae9917283a6851692f57dfbfa49d7a31aa937534df760c87", + "result" : "valid" + }, + { + "tcId" : 339, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31363230393033333936", + "sig" : "3046022100c1ea204ee71a0502fc47de5d89fad98b897b5c308a4030b4a29de9cc39ff1704022100a5261798ed9665358c31a2368c6705b53b5d7d17023c365ae532573593934481", + "result" : "valid" + }, + { + "tcId" : 340, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33333633313032383432", + "sig" : "3045022100b3c13e4907afa5a629398ff4fb50c48fae69dd3721a6f62ac13b901efcb4717c02206cb8a95728751b6274fb57e0e8fc87bd7911b1b94fb92edf09ef30fce410efe7", + "result" : "valid" + }, + { + "tcId" : 341, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "363237373433343931", + "sig" : "30460221009fafebd8841588e56116b2aa354557be814630bae5824e187405f3398f36bc5e022100f01264feb46aeefe68c967e439986f14aeb85ad99b520db572af8d1349d696a6", + "result" : "valid" + }, + { + "tcId" : 342, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33383536373938313437", + "sig" : "3046022100b45703f2c6e95c2f2378913cb78ecf7a01932b66d85e6f687dbb618b056851e8022100e1333352ea3ad42d7fd9a52a9b6dd1252848a180606d30012e142d135156720b", + "result" : "valid" + }, + { + "tcId" : 343, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32383831313830363430", + "sig" : "304502204138934da6329335702814333f4df8f907df7aa8e684cc38e2366961828ad937022100b90b1b0d77fa39c81f3df7a471499ebbe415a372e7c947eae8612646081aeb47", + "result" : "valid" + }, + { + "tcId" : 344, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130393537333934363738", + "sig" : "3045022100a52a6cca52d60aedc270cfd2fb0e0c2dde1ec4bb61434a7f11cd126ad46bec5602201dba92bb08e5665da3847abf695dbe18aeae37d9fdcd3617fab0c648f48d8ce6", + "result" : "valid" + }, + { + "tcId" : 345, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "353432373131393834", + "sig" : "3045022100b153363d48a58d339a7e53bfedddb63ea63484569bda2630d61c129a45d352e10220592dc8769b4834fae70f2cf3eea157ea9684c56d4875d296313cdf12e4939df8", + "result" : "valid" + }, + { + "tcId" : 346, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33313530303334333235", + "sig" : "304402203516e0c8c97110170a5121b5408043f33c6efbef0e5556165812713be6422ae802205d80c5dffa87d3856083bf67beb27e90ebdc2e54d84760c1588f6432ca733195", + "result" : "valid" + }, + { + "tcId" : 347, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31393939383231333931", + "sig" : "3046022100903d8397244bfc99f2a677507db419597fef6f0cbfd49e0c022709c06c93e358022100f1705f4a19ab86893e0e022bca9081022764bd986c1c891eb80202ec46f50870", + "result" : "valid" + }, + { + "tcId" : 348, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31393731323039323631", + "sig" : "304502203ba4d01ac8cbfc4abf848253d060a4e3faede188fd01c21657c20b61d1943f43022100ca3b5365ffbb98a5539cbe3e71b3d9fc59b5f1d5bee1122870e153ded9e1ce67", + "result" : "valid" + }, + { + "tcId" : 349, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33353731383338383537", + "sig" : "30440220741b76d33821c8cac2361048f10d28060f43e2c30b42b3f1b64a432f322e705c022037331cdebe152ff84bf909183069f278f8b0779042d5486b2d9826b42546952d", + "result" : "valid" + }, + { + "tcId" : 350, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "38363832323639383935", + "sig" : "3045022100d7988135fd211a2cc09a4588f2d91de3a9a9498d5c5c3ef7e78e9bd80906a63f022025de3162aefbd6afedf01116b4e69d498eaefbf29599a7e0ab60614d64fb3db7", + "result" : "valid" + }, + { + "tcId" : 351, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32353438383536303331", + "sig" : "3045022014580cf3aae5ebbb74fed09ff193f347f69ac5b38435eeb7c38a0fd95f5b7ad8022100fcd923fdbdcecb3ece3bd0069c81396b4acf6328648fbe5324ae0c5a276fd87c", + "result" : "valid" + }, + { + "tcId" : 352, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34393935373031333139", + "sig" : "30450220130821bb00d0f4416ef06761aa283d35383cc2d46ad6be76c96d839adce2dbb6022100d9deef38e7d0f136cc535f1f8931f271cbf0b0d9e4e20fc8db7a1fb3c616bb68", + "result" : "valid" + }, + { + "tcId" : 353, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32343536363831373835", + "sig" : "3046022100ab4991cad903fc45f6afe22b939640736aec9788b9d8f94109343649d6327695022100ab126decd1743caf4b461a9c8029cf1230a54a0180e5225a79c075167c2911bc", + "result" : "valid" + }, + { + "tcId" : 354, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34313835333731323336", + "sig" : "3045022100dc3b756b20b906f02dc03b46bbef56708be649bb4b23a41ac4333cd79d72749d0220309dfe0623034d6441332aebb327bf5b0fb2f3d6df5a6c02d836fc908e37b0e0", + "result" : "valid" + }, + { + "tcId" : 355, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "373237383439303034", + "sig" : "3046022100d733b4391a4876d30acdb95977e4fdfded201e698e42be54c5c690b4c83c9036022100f55565475dc58e468b4aaee60eda224770c5b30517944c065758cd5155ae1251", + "result" : "valid" + }, + { + "tcId" : 356, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31353632383139333138", + "sig" : "3045022100aa9ea086e301728e0cac7568bf64095b9f51d070edb46679a9983500245e346802203aeb2415f10625c3a4e818da7ddecea27f56f0a393920f6a5d2f4f3054e2131f", + "result" : "valid" + }, + { + "tcId" : 357, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3231383739393238333836", + "sig" : "3045022100d5a6ffddece918c5fe4e7d3a11344612bfb0cd2735ce071dfade01244c3b303c02200ff4ee3a70b9984e49277b3b15252c9f255b9ed51c7a4473cf55a7955083a985", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0458e71ffbfd2eabf4e4a465f68100f3d23d4702537dfcca5ee89d18a75ad7f75616535d3b19f050e443bf5dc38f7f7cda9df3798d4a2f65a413a9af5df002828c", + "wx" : "58e71ffbfd2eabf4e4a465f68100f3d23d4702537dfcca5ee89d18a75ad7f756", + "wy" : "16535d3b19f050e443bf5dc38f7f7cda9df3798d4a2f65a413a9af5df002828c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000458e71ffbfd2eabf4e4a465f68100f3d23d4702537dfcca5ee89d18a75ad7f75616535d3b19f050e443bf5dc38f7f7cda9df3798d4a2f65a413a9af5df002828c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWOcf+/0uq/TkpGX2gQDz0j1HAlN9\n/Mpe6J0Yp1rX91YWU107GfBQ5EO/XcOPf3zanfN5jUovZaQTqa9d8AKCjA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 358, + "comment" : "k*G has a large x-coordinate", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "303502104319055358e8617b0c46353d039cdaab022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "valid" + }, + { + "tcId" : 359, + "comment" : "r too large", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000fffffffffffffffffffffffc022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040a78dad1701d0551089d3a0ee329a22a9d8bf4263c8a50e0668d24306cf0240b03950b34bb638c683c167a00ac06232c2ef1718d3ed7ebcfc145a41031b04ee0", + "wx" : "0a78dad1701d0551089d3a0ee329a22a9d8bf4263c8a50e0668d24306cf0240b", + "wy" : "03950b34bb638c683c167a00ac06232c2ef1718d3ed7ebcfc145a41031b04ee0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040a78dad1701d0551089d3a0ee329a22a9d8bf4263c8a50e0668d24306cf0240b03950b34bb638c683c167a00ac06232c2ef1718d3ed7ebcfc145a41031b04ee0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECnja0XAdBVEInToO4ymiKp2L9CY8\nilDgZo0kMGzwJAsDlQs0u2OMaDwWegCsBiMsLvFxjT7X68/BRaQQMbBO4A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 360, + "comment" : "r,s are large", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e5b027e1f5daf6e52eca80e35be28651bf849ff3de70d2a34c0d782b5aaad6853c8e2cff9b02c90bf4d7d49c7ff2a261d26aed7d4022b41392c85a857d434579", + "wx" : "00e5b027e1f5daf6e52eca80e35be28651bf849ff3de70d2a34c0d782b5aaad685", + "wy" : "3c8e2cff9b02c90bf4d7d49c7ff2a261d26aed7d4022b41392c85a857d434579" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e5b027e1f5daf6e52eca80e35be28651bf849ff3de70d2a34c0d782b5aaad6853c8e2cff9b02c90bf4d7d49c7ff2a261d26aed7d4022b41392c85a857d434579", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE5bAn4fXa9uUuyoDjW+KGUb+En/Pe\ncNKjTA14K1qq1oU8jiz/mwLJC/TX1Jx/8qJh0mrtfUAitBOSyFqFfUNFeQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 361, + "comment" : "r and s^-1 have a large Hamming weight", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100909135bdb6799286170f5ead2de4f6511453fe50914f3df2de54a36383df8dd4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0424c5462bb7d1f1763ce28b3a9f851d86d7cb4c5f7c61ed9ed7d397f1a920ffc99460936b6919f88646844b27503555262ef8a81e6704f43e07deda12aa06f4ae", + "wx" : "24c5462bb7d1f1763ce28b3a9f851d86d7cb4c5f7c61ed9ed7d397f1a920ffc9", + "wy" : "009460936b6919f88646844b27503555262ef8a81e6704f43e07deda12aa06f4ae" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000424c5462bb7d1f1763ce28b3a9f851d86d7cb4c5f7c61ed9ed7d397f1a920ffc99460936b6919f88646844b27503555262ef8a81e6704f43e07deda12aa06f4ae", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJMVGK7fR8XY84os6n4UdhtfLTF98\nYe2e19OX8akg/8mUYJNraRn4hkaESydQNVUmLvioHmcE9D4H3toSqgb0rg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 362, + "comment" : "r and s^-1 have a large Hamming weight", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022027b4577ca009376f71303fd5dd227dcef5deb773ad5f5a84360644669ca249a5", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046226bb83d3cef01ae27b7d04a905397682d5e4a5964b5160dba8a055a2e2aeca7a3630d49d999d0e85e59fe762c9c567cb767ca2a0a7a7756ac917e6085b18e1", + "wx" : "6226bb83d3cef01ae27b7d04a905397682d5e4a5964b5160dba8a055a2e2aeca", + "wy" : "7a3630d49d999d0e85e59fe762c9c567cb767ca2a0a7a7756ac917e6085b18e1" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046226bb83d3cef01ae27b7d04a905397682d5e4a5964b5160dba8a055a2e2aeca7a3630d49d999d0e85e59fe762c9c567cb767ca2a0a7a7756ac917e6085b18e1", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYia7g9PO8Brie30EqQU5doLV5KWW\nS1Fg26igVaLirsp6NjDUnZmdDoXln+diycVny3Z8oqCnp3VqyRfmCFsY4Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 363, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020101", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0465af8c23310fe060a09e7366d82ea35f48f8e2c682eab3783de7d9711f5923bebebabfaf084741fc806b9698ef87c9459246b7846fa17400094ad0bb222c2cb6", + "wx" : "65af8c23310fe060a09e7366d82ea35f48f8e2c682eab3783de7d9711f5923be", + "wy" : "00bebabfaf084741fc806b9698ef87c9459246b7846fa17400094ad0bb222c2cb6" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000465af8c23310fe060a09e7366d82ea35f48f8e2c682eab3783de7d9711f5923bebebabfaf084741fc806b9698ef87c9459246b7846fa17400094ad0bb222c2cb6", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZa+MIzEP4GCgnnNm2C6jX0j44saC\n6rN4PefZcR9ZI76+ur+vCEdB/IBrlpjvh8lFkka3hG+hdAAJStC7Iiwstg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 364, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020103", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f26ea876edab91b4070c5ec6e36663fff86f1fe5ef73938b227766b1805773cd07059506a5296d5766d4c55c06eebccf81c04e52cb14c3b198a18808d570d417", + "wx" : "00f26ea876edab91b4070c5ec6e36663fff86f1fe5ef73938b227766b1805773cd", + "wy" : "07059506a5296d5766d4c55c06eebccf81c04e52cb14c3b198a18808d570d417" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f26ea876edab91b4070c5ec6e36663fff86f1fe5ef73938b227766b1805773cd07059506a5296d5766d4c55c06eebccf81c04e52cb14c3b198a18808d570d417", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8m6odu2rkbQHDF7G42Zj//hvH+Xv\nc5OLIndmsYBXc80HBZUGpSltV2bUxVwG7rzPgcBOUssUw7GYoYgI1XDUFw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 365, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020105", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "047811e16675799076c4f5ea78e5f833be4649925165672057443c436cf4017e0d8e377d53fecdf1556b1cdfdd8270d920cf7c6d32c946af2db4c864faec6b1eba", + "wx" : "7811e16675799076c4f5ea78e5f833be4649925165672057443c436cf4017e0d", + "wy" : "008e377d53fecdf1556b1cdfdd8270d920cf7c6d32c946af2db4c864faec6b1eba" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200047811e16675799076c4f5ea78e5f833be4649925165672057443c436cf4017e0d8e377d53fecdf1556b1cdfdd8270d920cf7c6d32c946af2db4c864faec6b1eba", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEeBHhZnV5kHbE9ep45fgzvkZJklFl\nZyBXRDxDbPQBfg2ON31T/s3xVWsc392CcNkgz3xtMslGry20yGT67Gseug==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 366, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020106", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04614ec72ada338db0177b53573827f11c5b95b577117f14580aa81e12b47aeb8cd89bf53fd6de48ec10fa6ed7213474c04c5990ca9e14dc098a4ed4b6805937cf", + "wx" : "614ec72ada338db0177b53573827f11c5b95b577117f14580aa81e12b47aeb8c", + "wy" : "00d89bf53fd6de48ec10fa6ed7213474c04c5990ca9e14dc098a4ed4b6805937cf" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004614ec72ada338db0177b53573827f11c5b95b577117f14580aa81e12b47aeb8cd89bf53fd6de48ec10fa6ed7213474c04c5990ca9e14dc098a4ed4b6805937cf", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYU7HKtozjbAXe1NXOCfxHFuVtXcR\nfxRYCqgeErR664zYm/U/1t5I7BD6btchNHTATFmQyp4U3AmKTtS2gFk3zw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 367, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020101", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0452c01eaee2e5c30e7db97061b0e00b44f7199a23c1db44f2428e342a71e1df6ee37cc4355d79bfa76afc34e2db9cdac7f451cc9b28f772269c8b017d964d9a67", + "wx" : "52c01eaee2e5c30e7db97061b0e00b44f7199a23c1db44f2428e342a71e1df6e", + "wy" : "00e37cc4355d79bfa76afc34e2db9cdac7f451cc9b28f772269c8b017d964d9a67" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000452c01eaee2e5c30e7db97061b0e00b44f7199a23c1db44f2428e342a71e1df6ee37cc4355d79bfa76afc34e2db9cdac7f451cc9b28f772269c8b017d964d9a67", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEUsAeruLlww59uXBhsOALRPcZmiPB\n20TyQo40KnHh327jfMQ1XXm/p2r8NOLbnNrH9FHMmyj3ciaciwF9lk2aZw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 368, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020103", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0478c04ef617e9ba8427a4946816e39c1319ff166ad0f248ef61b48e80e8b5a23512d07e5c45e1500c8ca4f714f68d47f762cad5ce8b798fbac0e1e2bfa395bc5e", + "wx" : "78c04ef617e9ba8427a4946816e39c1319ff166ad0f248ef61b48e80e8b5a235", + "wy" : "12d07e5c45e1500c8ca4f714f68d47f762cad5ce8b798fbac0e1e2bfa395bc5e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000478c04ef617e9ba8427a4946816e39c1319ff166ad0f248ef61b48e80e8b5a23512d07e5c45e1500c8ca4f714f68d47f762cad5ce8b798fbac0e1e2bfa395bc5e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEeMBO9hfpuoQnpJRoFuOcExn/FmrQ\n8kjvYbSOgOi1ojUS0H5cReFQDIyk9xT2jUf3YsrVzot5j7rA4eK/o5W8Xg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 369, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020106", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045a6605c4dd6006cd2575c4e5a4eeecb99513b3df4ad1482218951b44b9dc615327d7b42d22a138d10d275fc4bf3363fcabc2d3cb22d8b68e8f358f28bc765c39", + "wx" : "5a6605c4dd6006cd2575c4e5a4eeecb99513b3df4ad1482218951b44b9dc6153", + "wy" : "27d7b42d22a138d10d275fc4bf3363fcabc2d3cb22d8b68e8f358f28bc765c39" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045a6605c4dd6006cd2575c4e5a4eeecb99513b3df4ad1482218951b44b9dc615327d7b42d22a138d10d275fc4bf3363fcabc2d3cb22d8b68e8f358f28bc765c39", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWmYFxN1gBs0ldcTlpO7suZUTs99K\n0UgiGJUbRLncYVMn17QtIqE40Q0nX8S/M2P8q8LTyyLYto6PNY8ovHZcOQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 370, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020107", + "result" : "valid" + }, + { + "tcId" : 371, + "comment" : "r is larger than n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632557020107", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04254166f8cc3c42f25c88ad410aa3e3003165de62377aa1eb2baf1ca00c6f6e402abea7a234b07e3f962839ba9c31fdbc3b86618e2151fe50cbcc24153e86f5d9", + "wx" : "254166f8cc3c42f25c88ad410aa3e3003165de62377aa1eb2baf1ca00c6f6e40", + "wy" : "2abea7a234b07e3f962839ba9c31fdbc3b86618e2151fe50cbcc24153e86f5d9" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004254166f8cc3c42f25c88ad410aa3e3003165de62377aa1eb2baf1ca00c6f6e402abea7a234b07e3f962839ba9c31fdbc3b86618e2151fe50cbcc24153e86f5d9", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJUFm+Mw8QvJciK1BCqPjADFl3mI3\neqHrK68coAxvbkAqvqeiNLB+P5YoObqcMf28O4ZhjiFR/lDLzCQVPob12Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 372, + "comment" : "s is larger than n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3026020106022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc75fbd8", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044b2475ae911ab3e3334bd5acefce2225e35ad7f4523df52c13f581b87898cca195575d5296d1bd97efaa74a12cc0df3d556a614f176c25b06348af8d304ea6c7", + "wx" : "4b2475ae911ab3e3334bd5acefce2225e35ad7f4523df52c13f581b87898cca1", + "wy" : "0095575d5296d1bd97efaa74a12cc0df3d556a614f176c25b06348af8d304ea6c7" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044b2475ae911ab3e3334bd5acefce2225e35ad7f4523df52c13f581b87898cca195575d5296d1bd97efaa74a12cc0df3d556a614f176c25b06348af8d304ea6c7", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAESyR1rpEas+MzS9Ws784iJeNa1/RS\nPfUsE/WBuHiYzKGVV11SltG9l++qdKEswN89VWphTxdsJbBjSK+NME6mxw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 373, + "comment" : "small r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3027020201000221008f1e3c7862c58b16bb76eddbb76eddbb516af4f63f2d74d76e0d28c9bb75ea88", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04211cc26f1f60998bccfc6ae65cfe8f1bf2e70fc28b5aaf8e2a297f3f4460662c3ffc8dbd9b58a341d5160ff03b7a503649967a9a937edbbfc4bf154aa6e1a0ae", + "wx" : "211cc26f1f60998bccfc6ae65cfe8f1bf2e70fc28b5aaf8e2a297f3f4460662c", + "wy" : "3ffc8dbd9b58a341d5160ff03b7a503649967a9a937edbbfc4bf154aa6e1a0ae" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004211cc26f1f60998bccfc6ae65cfe8f1bf2e70fc28b5aaf8e2a297f3f4460662c3ffc8dbd9b58a341d5160ff03b7a503649967a9a937edbbfc4bf154aa6e1a0ae", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIRzCbx9gmYvM/GrmXP6PG/LnD8KL\nWq+OKil/P0RgZiw//I29m1ijQdUWD/A7elA2SZZ6mpN+27/EvxVKpuGgrg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 374, + "comment" : "smallish r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302c02072d9b4d347952d6022100ef3043e7329581dbb3974497710ab11505ee1c87ff907beebadd195a0ffe6d7a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040a7bb520f0cc16284831167d3622b276487a7bbf41bf911d367b484f1bd81a0c0c30d573d27d44e68fb9a109ac7faad2c57ae09de30d8203ab409cd3ca63af3a", + "wx" : "0a7bb520f0cc16284831167d3622b276487a7bbf41bf911d367b484f1bd81a0c", + "wy" : "0c30d573d27d44e68fb9a109ac7faad2c57ae09de30d8203ab409cd3ca63af3a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040a7bb520f0cc16284831167d3622b276487a7bbf41bf911d367b484f1bd81a0c0c30d573d27d44e68fb9a109ac7faad2c57ae09de30d8203ab409cd3ca63af3a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECnu1IPDMFihIMRZ9NiKydkh6e79B\nv5EdNntITxvYGgwMMNVz0n1E5o+5oQmsf6rSxXrgneMNggOrQJzTymOvOg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 375, + "comment" : "100-bit r and small s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3032020d1033e67e37b32b445580bf4eff0221008b748b74000000008b748b748b748b7466e769ad4a16d3dcd87129b8e91d1b4d", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d528a48fb391dd490d3f32810570613d16fe2709b82245027705e359549b0e155f4a5ac279d55c9ea6371f56403f816ee723632911df9804f01c7fa289eb2361", + "wx" : "00d528a48fb391dd490d3f32810570613d16fe2709b82245027705e359549b0e15", + "wy" : "5f4a5ac279d55c9ea6371f56403f816ee723632911df9804f01c7fa289eb2361" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d528a48fb391dd490d3f32810570613d16fe2709b82245027705e359549b0e155f4a5ac279d55c9ea6371f56403f816ee723632911df9804f01c7fa289eb2361", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE1Sikj7OR3UkNPzKBBXBhPRb+Jwm4\nIkUCdwXjWVSbDhVfSlrCedVcnqY3H1ZAP4Fu5yNjKRHfmATwHH+iiesjYQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 376, + "comment" : "small r and 100 bit s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302702020100022100ef9f6ba4d97c09d03178fa20b4aaad83be3cf9cb824a879fec3270fc4b81ef5b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d1f035f0a28c0c49e6248ff373874da5b26b47e7cd89c1b3bd15402dc9bd7b627a182a1884f30222976579d766da681a7f31fe55b14e770dd0f3f1c09654b29c", + "wx" : "00d1f035f0a28c0c49e6248ff373874da5b26b47e7cd89c1b3bd15402dc9bd7b62", + "wy" : "7a182a1884f30222976579d766da681a7f31fe55b14e770dd0f3f1c09654b29c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d1f035f0a28c0c49e6248ff373874da5b26b47e7cd89c1b3bd15402dc9bd7b627a182a1884f30222976579d766da681a7f31fe55b14e770dd0f3f1c09654b29c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0fA18KKMDEnmJI/zc4dNpbJrR+fN\nicGzvRVALcm9e2J6GCoYhPMCIpdleddm2mgafzH+VbFOdw3Q8/HAllSynA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 377, + "comment" : "100-bit r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3032020d062522bbd3ecbe7c39e93e7c25022100ef9f6ba4d97c09d03178fa20b4aaad83be3cf9cb824a879fec3270fc4b81ef5b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0407df495050dcb1738f4e2aac5ba2c8a1f8e09d262a3b001865af3fba086d7aa1b596cde482a6bfdc5e49e4069fce7c2d1145d1e0f7fed63f9e848446fae479ed", + "wx" : "07df495050dcb1738f4e2aac5ba2c8a1f8e09d262a3b001865af3fba086d7aa1", + "wy" : "00b596cde482a6bfdc5e49e4069fce7c2d1145d1e0f7fed63f9e848446fae479ed" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000407df495050dcb1738f4e2aac5ba2c8a1f8e09d262a3b001865af3fba086d7aa1b596cde482a6bfdc5e49e4069fce7c2d1145d1e0f7fed63f9e848446fae479ed", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEB99JUFDcsXOPTiqsW6LIofjgnSYq\nOwAYZa8/ughteqG1ls3kgqa/3F5J5AafznwtEUXR4Pf+1j+ehIRG+uR57Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 378, + "comment" : "r and s^-1 are close to n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3045022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6324d50220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "047191df2d2802bf5c1c7f1a920334e7344ef340e8e5260ba6321bf1d8598099717fb768b3fe7eb246237e1ab5f42cc18d4b73e53b06ccfd7c86b0a13e7f6c411f", + "wx" : "7191df2d2802bf5c1c7f1a920334e7344ef340e8e5260ba6321bf1d859809971", + "wy" : "7fb768b3fe7eb246237e1ab5f42cc18d4b73e53b06ccfd7c86b0a13e7f6c411f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200047191df2d2802bf5c1c7f1a920334e7344ef340e8e5260ba6321bf1d8598099717fb768b3fe7eb246237e1ab5f42cc18d4b73e53b06ccfd7c86b0a13e7f6c411f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcZHfLSgCv1wcfxqSAzTnNE7zQOjl\nJgumMhvx2FmAmXF/t2iz/n6yRiN+GrX0LMGNS3PlOwbM/XyGsKE+f2xBHw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 379, + "comment" : "r and s are 64-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30160209009c44febf31c3594f020900839ed28247c2b06b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042c85a72b248789298f58a5a26a94afa6f5d6a7eb1eaac513ab23eefd9cb4ff99a1a1d193532f4c29d6625055000985809b5e8b8a10c72917d72e01c2f94aeeb2", + "wx" : "2c85a72b248789298f58a5a26a94afa6f5d6a7eb1eaac513ab23eefd9cb4ff99", + "wy" : "00a1a1d193532f4c29d6625055000985809b5e8b8a10c72917d72e01c2f94aeeb2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042c85a72b248789298f58a5a26a94afa6f5d6a7eb1eaac513ab23eefd9cb4ff99a1a1d193532f4c29d6625055000985809b5e8b8a10c72917d72e01c2f94aeeb2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELIWnKySHiSmPWKWiapSvpvXWp+se\nqsUTqyPu/Zy0/5mhodGTUy9MKdZiUFUACYWAm16LihDHKRfXLgHC+Urusg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 380, + "comment" : "r and s are 100-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "301e020d09df8b682430beef6f5fd7c7cd020d0fd0a62e13778f4222a0d61c8a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d12e2032878b23d1de80f0c651ef0808a70dc2d70cc3dcd20b98ac1a92d5d5022fd7907dde50f2787f5624ff87e7c30b1dabfd9205628a77205543aa27f4add6", + "wx" : "00d12e2032878b23d1de80f0c651ef0808a70dc2d70cc3dcd20b98ac1a92d5d502", + "wy" : "2fd7907dde50f2787f5624ff87e7c30b1dabfd9205628a77205543aa27f4add6" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d12e2032878b23d1de80f0c651ef0808a70dc2d70cc3dcd20b98ac1a92d5d5022fd7907dde50f2787f5624ff87e7c30b1dabfd9205628a77205543aa27f4add6", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0S4gMoeLI9HegPDGUe8ICKcNwtcM\nw9zSC5isGpLV1QIv15B93lDyeH9WJP+H58MLHav9kgViincgVUOqJ/St1g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 381, + "comment" : "r and s are 128-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30260211008a598e563a89f526c32ebec8de26367c02110084f633e2042630e99dd0f1e16f7a04bf", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04c426e874ea701e368f3b0bffb0342e6e439769cd5c0cbf412b2114318ae2bb0d8ef8853bebf73416641b4b3516c939364fe0e042a503ee5fe1e3f497371f920b", + "wx" : "00c426e874ea701e368f3b0bffb0342e6e439769cd5c0cbf412b2114318ae2bb0d", + "wy" : "008ef8853bebf73416641b4b3516c939364fe0e042a503ee5fe1e3f497371f920b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c426e874ea701e368f3b0bffb0342e6e439769cd5c0cbf412b2114318ae2bb0d8ef8853bebf73416641b4b3516c939364fe0e042a503ee5fe1e3f497371f920b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExCbodOpwHjaPOwv/sDQubkOXac1c\nDL9BKyEUMYriuw2O+IU76/c0FmQbSzUWyTk2T+DgQqUD7l/h4/SXNx+SCw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 382, + "comment" : "r and s are 160-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302e021500aa6eeb5823f7fa31b466bb473797f0d0314c0bdf021500e2977c479e6d25703cebbc6bd561938cc9d1bfb9", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ccd70d8730532b28c78c27dbd3043fdde3e96f10ede406582c9cba2618dc03c195d592c366bd189683fd581dde22fb91176b55d94e48dd81467234777d8c223a", + "wx" : "00ccd70d8730532b28c78c27dbd3043fdde3e96f10ede406582c9cba2618dc03c1", + "wy" : "0095d592c366bd189683fd581dde22fb91176b55d94e48dd81467234777d8c223a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ccd70d8730532b28c78c27dbd3043fdde3e96f10ede406582c9cba2618dc03c195d592c366bd189683fd581dde22fb91176b55d94e48dd81467234777d8c223a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzNcNhzBTKyjHjCfb0wQ/3ePpbxDt\n5AZYLJy6JhjcA8GV1ZLDZr0YloP9WB3eIvuRF2tV2U5I3YFGcjR3fYwiOg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 383, + "comment" : "s == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70020101", + "result" : "valid" + }, + { + "tcId" : 384, + "comment" : "s == 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70020100", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041f8988dacc3cad2c1b0c8ffd0a658aea1a3087fc17ff0e6b8c18460d27b85c51ff457f9c9d0f0ec9a600f80fffdd61ef4796393412e7a20fde0681d3cf459207", + "wx" : "1f8988dacc3cad2c1b0c8ffd0a658aea1a3087fc17ff0e6b8c18460d27b85c51", + "wy" : "00ff457f9c9d0f0ec9a600f80fffdd61ef4796393412e7a20fde0681d3cf459207" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041f8988dacc3cad2c1b0c8ffd0a658aea1a3087fc17ff0e6b8c18460d27b85c51ff457f9c9d0f0ec9a600f80fffdd61ef4796393412e7a20fde0681d3cf459207", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEH4mI2sw8rSwbDI/9CmWK6howh/wX\n/w5rjBhGDSe4XFH/RX+cnQ8OyaYA+A//3WHvR5Y5NBLnog/eBoHTz0WSBw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 385, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022002f676969f451a8ccafa4c4f09791810e6d632dbd60b1d5540f3284fbe1889b0", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f4abc335796df25dd37438ffa95f10e95a7aa151772866d4d4552f4e57bc8534cd2ffd7ce1c68f1c76273907a63efff7b37d892056e1a92ecc92011f29123149", + "wx" : "00f4abc335796df25dd37438ffa95f10e95a7aa151772866d4d4552f4e57bc8534", + "wy" : "00cd2ffd7ce1c68f1c76273907a63efff7b37d892056e1a92ecc92011f29123149" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f4abc335796df25dd37438ffa95f10e95a7aa151772866d4d4552f4e57bc8534cd2ffd7ce1c68f1c76273907a63efff7b37d892056e1a92ecc92011f29123149", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9KvDNXlt8l3TdDj/qV8Q6Vp6oVF3\nKGbU1FUvTle8hTTNL/184caPHHYnOQemPv/3s32JIFbhqS7MkgEfKRIxSQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 386, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002204e260962e33362ef0046126d2d5a4edc6947ab20e19b8ec19cf79e5908b6e628", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04c14f3c54383dc417e1c5b5435e22970244ca7224b5f1de57e3504ba1d3c2917f1f918ffaf92826215ce07f5f154f85a8a53da1562b21956852b9e17f89a67a30", + "wx" : "00c14f3c54383dc417e1c5b5435e22970244ca7224b5f1de57e3504ba1d3c2917f", + "wy" : "1f918ffaf92826215ce07f5f154f85a8a53da1562b21956852b9e17f89a67a30" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c14f3c54383dc417e1c5b5435e22970244ca7224b5f1de57e3504ba1d3c2917f1f918ffaf92826215ce07f5f154f85a8a53da1562b21956852b9e17f89a67a30", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwU88VDg9xBfhxbVDXiKXAkTKciS1\n8d5X41BLodPCkX8fkY/6+SgmIVzgf18VT4WopT2hVishlWhSueF/iaZ6MA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 387, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220077ed0d8f20f697d8fc591ac64dd5219c7932122b4f9b9ec6441e44a0092cf21", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "049b2c90cfdd7a8a863e7b6c87808084e9aa3139f28f4003a70f5f4eab7451acc21e9d89ce759ca1dacc053c891d62c3cfff7825ae90939eca14144dc412246518", + "wx" : "009b2c90cfdd7a8a863e7b6c87808084e9aa3139f28f4003a70f5f4eab7451acc2", + "wy" : "1e9d89ce759ca1dacc053c891d62c3cfff7825ae90939eca14144dc412246518" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200049b2c90cfdd7a8a863e7b6c87808084e9aa3139f28f4003a70f5f4eab7451acc21e9d89ce759ca1dacc053c891d62c3cfff7825ae90939eca14144dc412246518", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmyyQz916ioY+e2yHgICE6aoxOfKP\nQAOnD19Oq3RRrMIenYnOdZyh2swFPIkdYsPP/3glrpCTnsoUFE3EEiRlGA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 388, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002203e0292a67e181c6c0105ee35e956e78e9bdd033c6e71ae57884039a245e4175f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04610f3e2d4c77a03ef50fa14f493f4339495a1ec17fa8f808a882a511609aa7cff3aa69595f06ad03ad66631776ab92f46bb3ba4076a6700aa8e2506c7c3465dc", + "wx" : "610f3e2d4c77a03ef50fa14f493f4339495a1ec17fa8f808a882a511609aa7cf", + "wy" : "00f3aa69595f06ad03ad66631776ab92f46bb3ba4076a6700aa8e2506c7c3465dc" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004610f3e2d4c77a03ef50fa14f493f4339495a1ec17fa8f808a882a511609aa7cff3aa69595f06ad03ad66631776ab92f46bb3ba4076a6700aa8e2506c7c3465dc", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYQ8+LUx3oD71D6FPST9DOUlaHsF/\nqPgIqIKlEWCap8/zqmlZXwatA61mYxd2q5L0a7O6QHamcAqo4lBsfDRl3A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 389, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022013d22b06d6b8f5d97e0c64962b4a3bae30f668ca6217ef5b35d799f159e23ebe", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041d4adb9b39e60961642009a7fcf652bdf2486a2a1d81d2053e0f74cf44ee25bcfc970fa80e9254aadeaf29953a70bcfec45036e80e9ffd2fcb613e0b77f3a79b", + "wx" : "1d4adb9b39e60961642009a7fcf652bdf2486a2a1d81d2053e0f74cf44ee25bc", + "wy" : "00fc970fa80e9254aadeaf29953a70bcfec45036e80e9ffd2fcb613e0b77f3a79b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041d4adb9b39e60961642009a7fcf652bdf2486a2a1d81d2053e0f74cf44ee25bcfc970fa80e9254aadeaf29953a70bcfec45036e80e9ffd2fcb613e0b77f3a79b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEHUrbmznmCWFkIAmn/PZSvfJIaiod\ngdIFPg90z0TuJbz8lw+oDpJUqt6vKZU6cLz+xFA26A6f/S/LYT4Ld/Onmw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 390, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002204523ce342e4994bb8968bf6613f60c06c86111f15a3a389309e72cd447d5dd99", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e07cd7e84b60e1796d2bc60425d6d78d23d1fd8ac9307dc093f192091729098bfbddbe1f37d56cd70d724351ace73a9bafae86ff25b07f6bc5c3bb0dc9e6c5ea", + "wx" : "00e07cd7e84b60e1796d2bc60425d6d78d23d1fd8ac9307dc093f192091729098b", + "wy" : "00fbddbe1f37d56cd70d724351ace73a9bafae86ff25b07f6bc5c3bb0dc9e6c5ea" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e07cd7e84b60e1796d2bc60425d6d78d23d1fd8ac9307dc093f192091729098bfbddbe1f37d56cd70d724351ace73a9bafae86ff25b07f6bc5c3bb0dc9e6c5ea", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE4HzX6Etg4XltK8YEJdbXjSPR/YrJ\nMH3Ak/GSCRcpCYv73b4fN9Vs1w1yQ1Gs5zqbr66G/yWwf2vFw7sNyebF6g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 391, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022037d765be3c9c78189ad30edb5097a4db670de11686d01420e37039d4677f4809", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0416721082930348f66413f7e2f857e8c274504ea66882968ae67dabd67eacf97547f56aeb5ea69ef5f148a534fc483f3aa1d81ac7fc4c2fb09528d80b7fceee8b", + "wx" : "16721082930348f66413f7e2f857e8c274504ea66882968ae67dabd67eacf975", + "wy" : "47f56aeb5ea69ef5f148a534fc483f3aa1d81ac7fc4c2fb09528d80b7fceee8b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000416721082930348f66413f7e2f857e8c274504ea66882968ae67dabd67eacf97547f56aeb5ea69ef5f148a534fc483f3aa1d81ac7fc4c2fb09528d80b7fceee8b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFnIQgpMDSPZkE/fi+FfownRQTqZo\ngpaK5n2r1n6s+XVH9WrrXqae9fFIpTT8SD86odgax/xML7CVKNgLf87uiw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 392, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022044237823b54e0c74c2bf5f759d9ac5f8cb897d537ffa92effd4f0bb6c9acd860", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ed6a45063ce925581a2f1311175b803d52734b1d1eb228e2b7613fb035fceb176acf1c484f0a1b69edc4a57b7034071ffcf59bbfefbfc0e26bd782001ba64648", + "wx" : "00ed6a45063ce925581a2f1311175b803d52734b1d1eb228e2b7613fb035fceb17", + "wy" : "6acf1c484f0a1b69edc4a57b7034071ffcf59bbfefbfc0e26bd782001ba64648" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ed6a45063ce925581a2f1311175b803d52734b1d1eb228e2b7613fb035fceb176acf1c484f0a1b69edc4a57b7034071ffcf59bbfefbfc0e26bd782001ba64648", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7WpFBjzpJVgaLxMRF1uAPVJzSx0e\nsijit2E/sDX86xdqzxxITwobae3EpXtwNAcf/PWbv++/wOJr14IAG6ZGSA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 393, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220266d30a485385906054ca86d46f5f2b17e7f4646a3092092ad92877126538111", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0473b53fb23c69bd8125654f20f4d06e0c5c95bcf8517f9ddb4b2ebfdaa8cf697728c7ee3f0f7d01f7c1786cca19c2e615e6ae6f5893621c3987497e82da8e48d8", + "wx" : "73b53fb23c69bd8125654f20f4d06e0c5c95bcf8517f9ddb4b2ebfdaa8cf6977", + "wy" : "28c7ee3f0f7d01f7c1786cca19c2e615e6ae6f5893621c3987497e82da8e48d8" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000473b53fb23c69bd8125654f20f4d06e0c5c95bcf8517f9ddb4b2ebfdaa8cf697728c7ee3f0f7d01f7c1786cca19c2e615e6ae6f5893621c3987497e82da8e48d8", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEc7U/sjxpvYElZU8g9NBuDFyVvPhR\nf53bSy6/2qjPaXcox+4/D30B98F4bMoZwuYV5q5vWJNiHDmHSX6C2o5I2A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 394, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220538c7b3798e84d0ce90340165806348971ed44db8f0c674f5f215968390f92ee", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042cce7a425b581db81b8d5cf49dc91b0fc87bfb68fd39441753b95c4553df9e3817c82c0f948a7f87d369342aebb69c7b4c31e7effaeebd47613f178440079b04", + "wx" : "2cce7a425b581db81b8d5cf49dc91b0fc87bfb68fd39441753b95c4553df9e38", + "wy" : "17c82c0f948a7f87d369342aebb69c7b4c31e7effaeebd47613f178440079b04" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042cce7a425b581db81b8d5cf49dc91b0fc87bfb68fd39441753b95c4553df9e3817c82c0f948a7f87d369342aebb69c7b4c31e7effaeebd47613f178440079b04", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELM56QltYHbgbjVz0nckbD8h7+2j9\nOUQXU7lcRVPfnjgXyCwPlIp/h9NpNCrrtpx7TDHn7/ruvUdhPxeEQAebBA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 395, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206fef0ef15d1688e15e704c4e6bb8bb7f40d52d3af5c661bb78c4ed9b408699b3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042def9d0d74cce8abf9392d66d5a615376287960a77d9c4c11a58a263033f09e9666783f2b5fd528738f87da459a51f6ad6be34427366bba458d8f16260427409", + "wx" : "2def9d0d74cce8abf9392d66d5a615376287960a77d9c4c11a58a263033f09e9", + "wy" : "666783f2b5fd528738f87da459a51f6ad6be34427366bba458d8f16260427409" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042def9d0d74cce8abf9392d66d5a615376287960a77d9c4c11a58a263033f09e9666783f2b5fd528738f87da459a51f6ad6be34427366bba458d8f16260427409", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELe+dDXTM6Kv5OS1m1aYVN2KHlgp3\n2cTBGliiYwM/CelmZ4Pytf1Shzj4faRZpR9q1r40QnNmu6RY2PFiYEJ0CQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 396, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206f44275e9aeb1331efcb8d58f35c0252791427e403ad84daad51d247cc2a64c6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e8d58db82caa3cbee903594e9a8d2f68b5dc005303e2272c315b5c9cd9e979c78dc83d900692ee88dd413e1a5ca79e31fcc0fb70da773be382fce154c0859d89", + "wx" : "00e8d58db82caa3cbee903594e9a8d2f68b5dc005303e2272c315b5c9cd9e979c7", + "wy" : "008dc83d900692ee88dd413e1a5ca79e31fcc0fb70da773be382fce154c0859d89" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e8d58db82caa3cbee903594e9a8d2f68b5dc005303e2272c315b5c9cd9e979c78dc83d900692ee88dd413e1a5ca79e31fcc0fb70da773be382fce154c0859d89", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE6NWNuCyqPL7pA1lOmo0vaLXcAFMD\n4icsMVtcnNnpeceNyD2QBpLuiN1BPhpcp54x/MD7cNp3O+OC/OFUwIWdiQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 397, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022021323755b103d2f9da6ab83eccab9ad8598bcf625652f10e7a3eeee3c3945fb3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0471434412bb06b96a7acd4d89017aa877746fd38fc7aac6c65b52443b1af8a29f242e9bdf23984bf7232d6c37a47411c653c89a9093e140e321167b28fd21eb7b", + "wx" : "71434412bb06b96a7acd4d89017aa877746fd38fc7aac6c65b52443b1af8a29f", + "wy" : "242e9bdf23984bf7232d6c37a47411c653c89a9093e140e321167b28fd21eb7b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000471434412bb06b96a7acd4d89017aa877746fd38fc7aac6c65b52443b1af8a29f242e9bdf23984bf7232d6c37a47411c653c89a9093e140e321167b28fd21eb7b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcUNEErsGuWp6zU2JAXqod3Rv04/H\nqsbGW1JEOxr4op8kLpvfI5hL9yMtbDekdBHGU8iakJPhQOMhFnso/SHrew==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 398, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206c50acfe76de1289e7a5edb240f1c2a7879db6873d5d931f3c6ac467a6eac171", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ff9dd577f73a189a2505d428db8c3b298d2c0e4ad749608a5bd69d528ee9d3a1c96de2d4d55742a132b5ce72c79e43bdfd55c8054f6a095ba2c08166bd1ec583", + "wx" : "00ff9dd577f73a189a2505d428db8c3b298d2c0e4ad749608a5bd69d528ee9d3a1", + "wy" : "00c96de2d4d55742a132b5ce72c79e43bdfd55c8054f6a095ba2c08166bd1ec583" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ff9dd577f73a189a2505d428db8c3b298d2c0e4ad749608a5bd69d528ee9d3a1c96de2d4d55742a132b5ce72c79e43bdfd55c8054f6a095ba2c08166bd1ec583", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/53Vd/c6GJolBdQo24w7KY0sDkrX\nSWCKW9adUo7p06HJbeLU1VdCoTK1znLHnkO9/VXIBU9qCVuiwIFmvR7Fgw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 399, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220755b7fffb0b17ad57dca50fcefb7fe297b029df25e5ccb5069e8e70c2742c2a6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04fc13b37baba182ba13dfc8ca74f5896483378aa9bd6f0aa931877ddc5e77262f1bf8b9cfdcbbe0d62eed81e5874310bd51178d1c6d01b6929a345d94190fdf3b", + "wx" : "00fc13b37baba182ba13dfc8ca74f5896483378aa9bd6f0aa931877ddc5e77262f", + "wy" : "1bf8b9cfdcbbe0d62eed81e5874310bd51178d1c6d01b6929a345d94190fdf3b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004fc13b37baba182ba13dfc8ca74f5896483378aa9bd6f0aa931877ddc5e77262f1bf8b9cfdcbbe0d62eed81e5874310bd51178d1c6d01b6929a345d94190fdf3b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/BOze6uhgroT38jKdPWJZIM3iqm9\nbwqpMYd93F53Ji8b+LnP3Lvg1i7tgeWHQxC9UReNHG0BtpKaNF2UGQ/fOw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 400, + "comment" : "point at infinity during verify", + "flags" : [ + "PointDuplication", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a80220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0420adbb6cb9e09ce8ee4b6bdbc2e8047a0b9dc811eb415a2a258906efbd8a88cec16b2111b5991d98dc4c935da619b55f784c79f000830d514ffeb6ad3fcf0640", + "wx" : "20adbb6cb9e09ce8ee4b6bdbc2e8047a0b9dc811eb415a2a258906efbd8a88ce", + "wy" : "00c16b2111b5991d98dc4c935da619b55f784c79f000830d514ffeb6ad3fcf0640" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000420adbb6cb9e09ce8ee4b6bdbc2e8047a0b9dc811eb415a2a258906efbd8a88cec16b2111b5991d98dc4c935da619b55f784c79f000830d514ffeb6ad3fcf0640", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIK27bLngnOjuS2vbwugEegudyBHr\nQVoqJYkG772KiM7BayERtZkdmNxMk12mGbVfeEx58ACDDVFP/ratP88GQA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 401, + "comment" : "edge case for signature malleability", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a902207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a8", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f033aa211cf11ee61c247567974fb8667c78f13a35bc2e6bead4436c261f144d99b4d07b6ce8008fecf8a4c4af561b972b00e63443a2f20038ee84ed0c238a3c", + "wx" : "00f033aa211cf11ee61c247567974fb8667c78f13a35bc2e6bead4436c261f144d", + "wy" : "0099b4d07b6ce8008fecf8a4c4af561b972b00e63443a2f20038ee84ed0c238a3c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f033aa211cf11ee61c247567974fb8667c78f13a35bc2e6bead4436c261f144d99b4d07b6ce8008fecf8a4c4af561b972b00e63443a2f20038ee84ed0c238a3c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8DOqIRzxHuYcJHVnl0+4Znx48To1\nvC5r6tRDbCYfFE2ZtNB7bOgAj+z4pMSvVhuXKwDmNEOi8gA47oTtDCOKPA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 402, + "comment" : "edge case for signature malleability", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a902207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a9", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bef2538da3d07158791556b2d0297ca9c1b306459c9323ce7d07a21282de1ace4e400c8e4eb57751faa0dde6bbebf96faaac9efc80e3de768fb4f5a37f95ead7", + "wx" : "00bef2538da3d07158791556b2d0297ca9c1b306459c9323ce7d07a21282de1ace", + "wy" : "4e400c8e4eb57751faa0dde6bbebf96faaac9efc80e3de768fb4f5a37f95ead7" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bef2538da3d07158791556b2d0297ca9c1b306459c9323ce7d07a21282de1ace4e400c8e4eb57751faa0dde6bbebf96faaac9efc80e3de768fb4f5a37f95ead7", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvvJTjaPQcVh5FVay0Cl8qcGzBkWc\nkyPOfQeiEoLeGs5OQAyOTrV3Ufqg3ea76/lvqqye/IDj3naPtPWjf5Xq1w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 403, + "comment" : "u1 == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002205731b7c4bd04cb9efb836935ff2e547bf2909f86824af4d8df78acf76d7b3d4e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bf2570b58f38183fabca3ca72255bd4651cbb7e8292287809bd8e5c285d24a532f859b7f75c2f5e8d3791a5ccb60fa3888895c63237c9ea65e43f87523e104e5", + "wx" : "00bf2570b58f38183fabca3ca72255bd4651cbb7e8292287809bd8e5c285d24a53", + "wy" : "2f859b7f75c2f5e8d3791a5ccb60fa3888895c63237c9ea65e43f87523e104e5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bf2570b58f38183fabca3ca72255bd4651cbb7e8292287809bd8e5c285d24a532f859b7f75c2f5e8d3791a5ccb60fa3888895c63237c9ea65e43f87523e104e5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvyVwtY84GD+ryjynIlW9RlHLt+gp\nIoeAm9jlwoXSSlMvhZt/dcL16NN5GlzLYPo4iIlcYyN8nqZeQ/h1I+EE5Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 404, + "comment" : "u1 == n - 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30450220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022100a8ce483a42fb3462047c96ca00d1ab83ca565b2724cca9ac14411dcb8ee7e803", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "049ba8f147332270987e5baab2ab0a4ebc9968eb8682c2872266a22b43c2cf55f7728d552fc65b5a3c7cee18876f1d8b46ae60153aec3b8a2b2c2527979f4a7d29", + "wx" : "009ba8f147332270987e5baab2ab0a4ebc9968eb8682c2872266a22b43c2cf55f7", + "wy" : "728d552fc65b5a3c7cee18876f1d8b46ae60153aec3b8a2b2c2527979f4a7d29" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200049ba8f147332270987e5baab2ab0a4ebc9968eb8682c2872266a22b43c2cf55f7728d552fc65b5a3c7cee18876f1d8b46ae60153aec3b8a2b2c2527979f4a7d29", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEm6jxRzMicJh+W6qyqwpOvJlo64aC\nwociZqIrQ8LPVfdyjVUvxltaPHzuGIdvHYtGrmAVOuw7iissJSeXn0p9KQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 405, + "comment" : "u2 == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d9e64db2ea560162dad3ec67d6ebaab9e821a81da8d4584f00fb14813c7e96e153e9e96e17eb05228ff3c9cbc5318bbb87e88bec489dec2be7a20adce06cf8bd", + "wx" : "00d9e64db2ea560162dad3ec67d6ebaab9e821a81da8d4584f00fb14813c7e96e1", + "wy" : "53e9e96e17eb05228ff3c9cbc5318bbb87e88bec489dec2be7a20adce06cf8bd" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d9e64db2ea560162dad3ec67d6ebaab9e821a81da8d4584f00fb14813c7e96e153e9e96e17eb05228ff3c9cbc5318bbb87e88bec489dec2be7a20adce06cf8bd", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2eZNsupWAWLa0+xn1uuqueghqB2o\n1FhPAPsUgTx+luFT6eluF+sFIo/zycvFMYu7h+iL7Eid7Cvnogrc4Gz4vQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 406, + "comment" : "u2 == n - 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30450220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022100aaaaaaaa00000000aaaaaaaaaaaaaaaa7def51c91a0fbf034d26872ca84218e1", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04857c58d9010d1f8386e279cdcc369b32a8960259a3a646f6d89ad5273252f3fc65d2384cabf6a2158b1cd1b2e2477d10b1b719125e9226e99ae90a7afaab499e", + "wx" : "00857c58d9010d1f8386e279cdcc369b32a8960259a3a646f6d89ad5273252f3fc", + "wy" : "65d2384cabf6a2158b1cd1b2e2477d10b1b719125e9226e99ae90a7afaab499e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004857c58d9010d1f8386e279cdcc369b32a8960259a3a646f6d89ad5273252f3fc65d2384cabf6a2158b1cd1b2e2477d10b1b719125e9226e99ae90a7afaab499e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhXxY2QENH4OG4nnNzDabMqiWAlmj\npkb22JrVJzJS8/xl0jhMq/aiFYsc0bLiR30QsbcZEl6SJuma6Qp6+qtJng==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 407, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02201d109296e9ac43dfa92bcdbcaa64c6d3fb858a822b6e519d9fd2e45279d3bf1a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0489d887b0645d2f96b407b080cf6db3685cc9d4454d35a5ac7983bb5ebbfd2e20de4fcd410c3b6e11f5e4cccb19327c181c43c2d216869309f22495d34ee2796f", + "wx" : "0089d887b0645d2f96b407b080cf6db3685cc9d4454d35a5ac7983bb5ebbfd2e20", + "wy" : "00de4fcd410c3b6e11f5e4cccb19327c181c43c2d216869309f22495d34ee2796f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000489d887b0645d2f96b407b080cf6db3685cc9d4454d35a5ac7983bb5ebbfd2e20de4fcd410c3b6e11f5e4cccb19327c181c43c2d216869309f22495d34ee2796f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEidiHsGRdL5a0B7CAz22zaFzJ1EVN\nNaWseYO7Xrv9LiDeT81BDDtuEfXkzMsZMnwYHEPC0haGkwnyJJXTTuJ5bw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 408, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220027d377d04715e43754629961c6233961b921b3283c33fcb541cc27285092e8d", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04040924291aa7975fd04f8b2e923a1f9121836fdfbf2fea123cc1870f4f6cc0f2c510ee34a325e772d232b576052f96d3ec4a33b086508682fc53099c0cd48e45", + "wx" : "040924291aa7975fd04f8b2e923a1f9121836fdfbf2fea123cc1870f4f6cc0f2", + "wy" : "00c510ee34a325e772d232b576052f96d3ec4a33b086508682fc53099c0cd48e45" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004040924291aa7975fd04f8b2e923a1f9121836fdfbf2fea123cc1870f4f6cc0f2c510ee34a325e772d232b576052f96d3ec4a33b086508682fc53099c0cd48e45", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEBAkkKRqnl1/QT4sukjofkSGDb9+/\nL+oSPMGHD09swPLFEO40oyXnctIytXYFL5bT7EozsIZQhoL8UwmcDNSORQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 409, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ce1602ee5a6d686c5b8d8a3f44f419aa6064f0d35323341d77a65a4bc9e1989b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043e7ed2fbb89f7b643d4ab44895ff9fb16e8be7a8649e4ac4ee2f59ec8f68fc634ca91cc26043a8242e2969c871d3ca9833148135b27d377198182ceaa7e70fd4", + "wx" : "3e7ed2fbb89f7b643d4ab44895ff9fb16e8be7a8649e4ac4ee2f59ec8f68fc63", + "wy" : "4ca91cc26043a8242e2969c871d3ca9833148135b27d377198182ceaa7e70fd4" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043e7ed2fbb89f7b643d4ab44895ff9fb16e8be7a8649e4ac4ee2f59ec8f68fc634ca91cc26043a8242e2969c871d3ca9833148135b27d377198182ceaa7e70fd4", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPn7S+7ife2Q9SrRIlf+fsW6L56hk\nnkrE7i9Z7I9o/GNMqRzCYEOoJC4pachx08qYMxSBNbJ9N3GYGCzqp+cP1A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 410, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220328ab273ff681a79a9662dc174ee014ef73d597d32ef42b17f443a33f5e430fe", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e67f559f552772b174d377b239e60750299d379b6bec6fc93adf040269d58c426c397f7984a149f07bf79fbba3b18c925a797cc6678e2eeabec47fb4ac461041", + "wx" : "00e67f559f552772b174d377b239e60750299d379b6bec6fc93adf040269d58c42", + "wy" : "6c397f7984a149f07bf79fbba3b18c925a797cc6678e2eeabec47fb4ac461041" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e67f559f552772b174d377b239e60750299d379b6bec6fc93adf040269d58c426c397f7984a149f07bf79fbba3b18c925a797cc6678e2eeabec47fb4ac461041", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE5n9Vn1UncrF003eyOeYHUCmdN5tr\n7G/JOt8EAmnVjEJsOX95hKFJ8Hv3n7ujsYySWnl8xmeOLuq+xH+0rEYQQQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 411, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ab27431e81a7976e62dc174ee014f0479c909f17919ec453013b47f1aa221858", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0488b1d30e29fe0edeb93ab469d2698d0fbc2977f77f48293d0e87acc0856a51fc3d1b4f23fa3f6ef26f0e94cb7a63907b1923e30d08197115050b9da98a2b5f56", + "wx" : "0088b1d30e29fe0edeb93ab469d2698d0fbc2977f77f48293d0e87acc0856a51fc", + "wy" : "3d1b4f23fa3f6ef26f0e94cb7a63907b1923e30d08197115050b9da98a2b5f56" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000488b1d30e29fe0edeb93ab469d2698d0fbc2977f77f48293d0e87acc0856a51fc3d1b4f23fa3f6ef26f0e94cb7a63907b1923e30d08197115050b9da98a2b5f56", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEiLHTDin+Dt65OrRp0mmND7wpd/d/\nSCk9DoeswIVqUfw9G08j+j9u8m8OlMt6Y5B7GSPjDQgZcRUFC52piitfVg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 412, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220564e863e034f2edbc5b82e9dc029e08f7c3a43817c25ea210ebcc52057e10b5f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0423a6ed2b1064923104d08ee4392b44bb51555a395477dc52546af6c787cc65aa81105b8c72c357d75215b210286df781d6731c4f0b87e9fe7066489653dc35d3", + "wx" : "23a6ed2b1064923104d08ee4392b44bb51555a395477dc52546af6c787cc65aa", + "wy" : "0081105b8c72c357d75215b210286df781d6731c4f0b87e9fe7066489653dc35d3" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000423a6ed2b1064923104d08ee4392b44bb51555a395477dc52546af6c787cc65aa81105b8c72c357d75215b210286df781d6731c4f0b87e9fe7066489653dc35d3", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEI6btKxBkkjEE0I7kOStEu1FVWjlU\nd9xSVGr2x4fMZaqBEFuMcsNX11IVshAobfeB1nMcTwuH6f5wZkiWU9w10w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 413, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022031f2cced76db7b4d74ee014f047c96c9f3ba3e21f11248bcf451526ac376c54c", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04592d27cd81fbb61ebbdd782eaa1d86d53b59eaef43496677c345adc9896c562e355b8ffda4f8683da98653f0d6067bd8134c5c3e22e3dcdee6a5cdbd826f4915", + "wx" : "592d27cd81fbb61ebbdd782eaa1d86d53b59eaef43496677c345adc9896c562e", + "wy" : "355b8ffda4f8683da98653f0d6067bd8134c5c3e22e3dcdee6a5cdbd826f4915" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004592d27cd81fbb61ebbdd782eaa1d86d53b59eaef43496677c345adc9896c562e355b8ffda4f8683da98653f0d6067bd8134c5c3e22e3dcdee6a5cdbd826f4915", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWS0nzYH7th673Xguqh2G1TtZ6u9D\nSWZ3w0WtyYlsVi41W4/9pPhoPamGU/DWBnvYE0xcPiLj3N7mpc29gm9JFQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 414, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220668fcfbedd4eed7eb6840c7f6cf1e3dde504afe5732ee0e1bcbeee15b94a2c64", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048c4aa42ef47c4e2d7b60ca2b5a0b3038a9f8e7ee1de77d299286db3cd635b754f65438558a2271c9444b77405a1f97e84036c3146c425006e65be83f97e41191", + "wx" : "008c4aa42ef47c4e2d7b60ca2b5a0b3038a9f8e7ee1de77d299286db3cd635b754", + "wy" : "00f65438558a2271c9444b77405a1f97e84036c3146c425006e65be83f97e41191" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048c4aa42ef47c4e2d7b60ca2b5a0b3038a9f8e7ee1de77d299286db3cd635b754f65438558a2271c9444b77405a1f97e84036c3146c425006e65be83f97e41191", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEjEqkLvR8Ti17YMorWgswOKn45+4d\n530pkobbPNY1t1T2VDhViiJxyURLd0BaH5foQDbDFGxCUAbmW+g/l+QRkQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 415, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220637e57bd4f085f9d3be20506bbc2b8eab268a33871b19da56b1ba0ac25927bd1", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f5618fb978b70f15b8e07a74edfbcea775dcb92055f9431b816cd4cb5d4fd63cbd1759fd35bae79bf5bb0394646b14fbcb1ed2614fdcc9a9f53663e09f8c6a09", + "wx" : "00f5618fb978b70f15b8e07a74edfbcea775dcb92055f9431b816cd4cb5d4fd63c", + "wy" : "00bd1759fd35bae79bf5bb0394646b14fbcb1ed2614fdcc9a9f53663e09f8c6a09" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f5618fb978b70f15b8e07a74edfbcea775dcb92055f9431b816cd4cb5d4fd63cbd1759fd35bae79bf5bb0394646b14fbcb1ed2614fdcc9a9f53663e09f8c6a09", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9WGPuXi3DxW44Hp07fvOp3XcuSBV\n+UMbgWzUy11P1jy9F1n9Nbrnm/W7A5RkaxT7yx7SYU/cyan1NmPgn4xqCQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 416, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100b0a105281711f1755bbfc1a0b6ea67add1085e84b73016989e20a90be3504d22", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0453c143435247e1e2144c4c32cb1c900b8e9cb160976bdcda1b24877ce7266a7441a21780d91554d349a4c7c61f799bda9ddc81a66323078245dcb3960417a660", + "wx" : "53c143435247e1e2144c4c32cb1c900b8e9cb160976bdcda1b24877ce7266a74", + "wy" : "41a21780d91554d349a4c7c61f799bda9ddc81a66323078245dcb3960417a660" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000453c143435247e1e2144c4c32cb1c900b8e9cb160976bdcda1b24877ce7266a7441a21780d91554d349a4c7c61f799bda9ddc81a66323078245dcb3960417a660", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEU8FDQ1JH4eIUTEwyyxyQC46csWCX\na9zaGySHfOcmanRBoheA2RVU00mkx8YfeZvandyBpmMjB4JF3LOWBBemYA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 417, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100f177b6b38b29de112b6a1921aacd9c95bf24356c916075b623d05899bf7945c4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0493486f6653c2906152eb9d1c2b28e51c085f20ac54016a808f6e3c6b2cdcc02a35439b7b9ab9e86df0ca617737b49f28badf8f5636c9bbaa199bdd20063ec7ff", + "wx" : "0093486f6653c2906152eb9d1c2b28e51c085f20ac54016a808f6e3c6b2cdcc02a", + "wy" : "35439b7b9ab9e86df0ca617737b49f28badf8f5636c9bbaa199bdd20063ec7ff" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000493486f6653c2906152eb9d1c2b28e51c085f20ac54016a808f6e3c6b2cdcc02a35439b7b9ab9e86df0ca617737b49f28badf8f5636c9bbaa199bdd20063ec7ff", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEk0hvZlPCkGFS650cKyjlHAhfIKxU\nAWqAj248ayzcwCo1Q5t7mrnobfDKYXc3tJ8out+PVjbJu6oZm90gBj7H/w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 418, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100e2ef6d681653bc2156d43243559b392bc161702b7ba94ce753e6e670828f6637", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045f2e06f0ec92b6499eb7d249ff0147639253e7abe0e4497226336a5c94caa7774eb3c28acf5012ba023971416c600a10fb6d28a23f3a2c1f77fb0686d06cdf80", + "wx" : "5f2e06f0ec92b6499eb7d249ff0147639253e7abe0e4497226336a5c94caa777", + "wy" : "4eb3c28acf5012ba023971416c600a10fb6d28a23f3a2c1f77fb0686d06cdf80" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045f2e06f0ec92b6499eb7d249ff0147639253e7abe0e4497226336a5c94caa7774eb3c28acf5012ba023971416c600a10fb6d28a23f3a2c1f77fb0686d06cdf80", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXy4G8OyStkmet9JJ/wFHY5JT56vg\n5ElyJjNqXJTKp3dOs8KKz1ASugI5cUFsYAoQ+20ooj86LB93+waG0GzfgA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 419, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100d467241ca17d9a31823e4b650068d5c1c39eaaea65f2241883fd744745a586aa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04c2af0b9da06d54b1a5ff93800b579cbce295d0b2719da307b028bee3c657424b28c4928f185f68312b47de31ad87fac134de90cf114cc85d45a8fefd9a3a2350", + "wx" : "00c2af0b9da06d54b1a5ff93800b579cbce295d0b2719da307b028bee3c657424b", + "wy" : "28c4928f185f68312b47de31ad87fac134de90cf114cc85d45a8fefd9a3a2350" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c2af0b9da06d54b1a5ff93800b579cbce295d0b2719da307b028bee3c657424b28c4928f185f68312b47de31ad87fac134de90cf114cc85d45a8fefd9a3a2350", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwq8LnaBtVLGl/5OAC1ecvOKV0LJx\nnaMHsCi+48ZXQksoxJKPGF9oMStH3jGth/rBNN6QzxFMyF1FqP79mjojUA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 420, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100e70b0176ad36b436adc6c51fa27a0cd50ea5f5c07d1d695135b0128763225ef6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042a3c0253d54dc8a2a72a31f815b0bb6c36d852f8db14edf1e1b71cd3a7389a494891bafa1767b85e36f7507fa5eebd3da0024208fcfef28d56cd49a980ba1465", + "wx" : "2a3c0253d54dc8a2a72a31f815b0bb6c36d852f8db14edf1e1b71cd3a7389a49", + "wy" : "4891bafa1767b85e36f7507fa5eebd3da0024208fcfef28d56cd49a980ba1465" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042a3c0253d54dc8a2a72a31f815b0bb6c36d852f8db14edf1e1b71cd3a7389a494891bafa1767b85e36f7507fa5eebd3da0024208fcfef28d56cd49a980ba1465", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKjwCU9VNyKKnKjH4FbC7bDbYUvjb\nFO3x4bcc06c4mklIkbr6F2e4Xjb3UH+l7r09oAJCCPz+8o1WzUmpgLoUZQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 421, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02207fffffffaaaaaaaaffffffffffffffffe9a2538f37b28a2c513dee40fecbb71a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043dd345114090328ccc0bdeaf8269396593645720b0b326849d1fe81ec956f996ceee0a81d7f65e1205bb1b6963a8e0facfd2a6124701b1a152094d037a216f4e", + "wx" : "3dd345114090328ccc0bdeaf8269396593645720b0b326849d1fe81ec956f996", + "wy" : "00ceee0a81d7f65e1205bb1b6963a8e0facfd2a6124701b1a152094d037a216f4e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043dd345114090328ccc0bdeaf8269396593645720b0b326849d1fe81ec956f996ceee0a81d7f65e1205bb1b6963a8e0facfd2a6124701b1a152094d037a216f4e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPdNFEUCQMozMC96vgmk5ZZNkVyCw\nsyaEnR/oHslW+ZbO7gqB1/ZeEgW7G2ljqOD6z9KmEkcBsaFSCU0DeiFvTg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 422, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100b62f26b5f2a2b26f6de86d42ad8a13da3ab3cccd0459b201de009e526adf21f2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04fc8207ca84c4af4229139de953da3bdebf694537c15406e172d631e98591f40c34a0d957e39e9686914e98ea467972cedec5a5c6bb55bec7916dc71f7a4c6f77", + "wx" : "00fc8207ca84c4af4229139de953da3bdebf694537c15406e172d631e98591f40c", + "wy" : "34a0d957e39e9686914e98ea467972cedec5a5c6bb55bec7916dc71f7a4c6f77" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004fc8207ca84c4af4229139de953da3bdebf694537c15406e172d631e98591f40c34a0d957e39e9686914e98ea467972cedec5a5c6bb55bec7916dc71f7a4c6f77", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/IIHyoTEr0IpE53pU9o73r9pRTfB\nVAbhctYx6YWR9Aw0oNlX456WhpFOmOpGeXLO3sWlxrtVvseRbccfekxvdw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 423, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bb1d9ac949dd748cd02bbbe749bd351cd57b38bb61403d700686aa7b4c90851e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0460bf7beb808286d8abff60c20faed73997395124542e6b7672089d88c14bbed57f4af9606f9be0199e4145698a62ad2545123a49eb14e0c33317f6909e3915b5", + "wx" : "60bf7beb808286d8abff60c20faed73997395124542e6b7672089d88c14bbed5", + "wy" : "7f4af9606f9be0199e4145698a62ad2545123a49eb14e0c33317f6909e3915b5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000460bf7beb808286d8abff60c20faed73997395124542e6b7672089d88c14bbed57f4af9606f9be0199e4145698a62ad2545123a49eb14e0c33317f6909e3915b5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYL9764CChtir/2DCD67XOZc5USRU\nLmt2cgidiMFLvtV/Svlgb5vgGZ5BRWmKYq0lRRI6SesU4MMzF/aQnjkVtQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 424, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022066755a00638cdaec1c732513ca0234ece52545dac11f816e818f725b4f60aaf2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042dcd699362d3665b6c9260608b3faf989d45ac15b9da41fb348d5520ecdf4e0403e483670aadef4615c7a13fe1bf3bf927b4e47a667660b505ba47affee92ab6", + "wx" : "2dcd699362d3665b6c9260608b3faf989d45ac15b9da41fb348d5520ecdf4e04", + "wy" : "03e483670aadef4615c7a13fe1bf3bf927b4e47a667660b505ba47affee92ab6" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042dcd699362d3665b6c9260608b3faf989d45ac15b9da41fb348d5520ecdf4e0403e483670aadef4615c7a13fe1bf3bf927b4e47a667660b505ba47affee92ab6", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELc1pk2LTZltskmBgiz+vmJ1FrBW5\n2kH7NI1VIOzfTgQD5INnCq3vRhXHoT/hvzv5J7TkemZ2YLUFukev/ukqtg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 425, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022055a00c9fcdaebb6032513ca0234ecfffe98ebe492fdf02e48ca48e982beb3669", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e6205f87fa837c474a2badac671578de77d6a077cd286aed45403508767114ffc18daaf2463dea80300c1f4d7e25b9f603eefb2e2cbf012f31a819c91cad7cf2", + "wx" : "00e6205f87fa837c474a2badac671578de77d6a077cd286aed45403508767114ff", + "wy" : "00c18daaf2463dea80300c1f4d7e25b9f603eefb2e2cbf012f31a819c91cad7cf2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e6205f87fa837c474a2badac671578de77d6a077cd286aed45403508767114ffc18daaf2463dea80300c1f4d7e25b9f603eefb2e2cbf012f31a819c91cad7cf2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE5iBfh/qDfEdKK62sZxV43nfWoHfN\nKGrtRUA1CHZxFP/BjaryRj3qgDAMH01+Jbn2A+77Liy/AS8xqBnJHK188g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 426, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ab40193f9b5d76c064a27940469d9fffd31d7c925fbe05c919491d3057d66cd2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04357e7687a79243d5e030eb120a3652c2fb95fcb148813f3da95d044bdc31c8d5e3ed90ea73567cb36c0fccd021da4ccccffe40dfe1b603428969788bed4416db", + "wx" : "357e7687a79243d5e030eb120a3652c2fb95fcb148813f3da95d044bdc31c8d5", + "wy" : "00e3ed90ea73567cb36c0fccd021da4ccccffe40dfe1b603428969788bed4416db" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004357e7687a79243d5e030eb120a3652c2fb95fcb148813f3da95d044bdc31c8d5e3ed90ea73567cb36c0fccd021da4ccccffe40dfe1b603428969788bed4416db", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENX52h6eSQ9XgMOsSCjZSwvuV/LFI\ngT89qV0ES9wxyNXj7ZDqc1Z8s2wPzNAh2kzMz/5A3+G2A0KJaXiL7UQW2w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 427, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ca0234ebb5fdcb13ca0234ecffffffffcb0dadbbc7f549f8a26b4408d0dc8600", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043d9723a8ea5ebaffacab8bf87b1d63e42da7bdf94e6c2520a0786b7b534dacf33725db2fb27248274ac2e6212f9071495c90ae684d056b57ad18e72bce8f36b0", + "wx" : "3d9723a8ea5ebaffacab8bf87b1d63e42da7bdf94e6c2520a0786b7b534dacf3", + "wy" : "3725db2fb27248274ac2e6212f9071495c90ae684d056b57ad18e72bce8f36b0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043d9723a8ea5ebaffacab8bf87b1d63e42da7bdf94e6c2520a0786b7b534dacf33725db2fb27248274ac2e6212f9071495c90ae684d056b57ad18e72bce8f36b0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPZcjqOpeuv+sq4v4ex1j5C2nvflO\nbCUgoHhre1NNrPM3JdsvsnJIJ0rC5iEvkHFJXJCuaE0Fa1etGOcrzo82sA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 428, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff3ea3677e082b9310572620ae19933a9e65b285598711c77298815ad3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044bab5b68667090ed13e5658cfe68f1247031aee80a8ccb52ba0505752f7cd3f085c70129c1715d9610a41bf7a063b81c1bc7ec34bb6a1c95ccd08e09f1476343", + "wx" : "4bab5b68667090ed13e5658cfe68f1247031aee80a8ccb52ba0505752f7cd3f0", + "wy" : "0085c70129c1715d9610a41bf7a063b81c1bc7ec34bb6a1c95ccd08e09f1476343" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044bab5b68667090ed13e5658cfe68f1247031aee80a8ccb52ba0505752f7cd3f085c70129c1715d9610a41bf7a063b81c1bc7ec34bb6a1c95ccd08e09f1476343", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAES6tbaGZwkO0T5WWM/mjxJHAxrugK\njMtSugUFdS980/CFxwEpwXFdlhCkG/egY7gcG8fsNLtqHJXM0I4J8UdjQw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 429, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220266666663bbbbbbbe6666666666666665b37902e023fab7c8f055d86e5cc41f4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "047801780aaab4aaf31b7c94069609a5ecf623a6dd7e97964061c6b3e4103bb84a59c111796624cccbba09394bca04af79a31cbd36176d2ec4ceaa700730d57300", + "wx" : "7801780aaab4aaf31b7c94069609a5ecf623a6dd7e97964061c6b3e4103bb84a", + "wy" : "59c111796624cccbba09394bca04af79a31cbd36176d2ec4ceaa700730d57300" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200047801780aaab4aaf31b7c94069609a5ecf623a6dd7e97964061c6b3e4103bb84a59c111796624cccbba09394bca04af79a31cbd36176d2ec4ceaa700730d57300", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEeAF4Cqq0qvMbfJQGlgml7PYjpt1+\nl5ZAYcaz5BA7uEpZwRF5ZiTMy7oJOUvKBK95oxy9NhdtLsTOqnAHMNVzAA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 430, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff36db6db7a492492492492492146c573f4c6dfc8d08a443e258970b09", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0455b0451d911e9c64516ac9e9da3da1703eaaa46a8b0a7025c8c5ed38b5474713f1fde0cdee830bf169da9ca3d70d56f4607989873fbdcfcbb740e9a42faf860a", + "wx" : "55b0451d911e9c64516ac9e9da3da1703eaaa46a8b0a7025c8c5ed38b5474713", + "wy" : "00f1fde0cdee830bf169da9ca3d70d56f4607989873fbdcfcbb740e9a42faf860a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000455b0451d911e9c64516ac9e9da3da1703eaaa46a8b0a7025c8c5ed38b5474713f1fde0cdee830bf169da9ca3d70d56f4607989873fbdcfcbb740e9a42faf860a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEVbBFHZEenGRRasnp2j2hcD6qpGqL\nCnAlyMXtOLVHRxPx/eDN7oML8WnanKPXDVb0YHmJhz+9z8u3QOmkL6+GCg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 431, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff2aaaaaab7fffffffffffffffc815d0e60b3e596ecb1ad3a27cfd49c4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042e19ea3a973a4c155814f8a7b641e12477d288f958b74f6031326356f5061fa41acdd1be10c052eaeb9c22d3f04cfec6e91bd23d6d3996eca9cd485e50e85909", + "wx" : "2e19ea3a973a4c155814f8a7b641e12477d288f958b74f6031326356f5061fa4", + "wy" : "1acdd1be10c052eaeb9c22d3f04cfec6e91bd23d6d3996eca9cd485e50e85909" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042e19ea3a973a4c155814f8a7b641e12477d288f958b74f6031326356f5061fa41acdd1be10c052eaeb9c22d3f04cfec6e91bd23d6d3996eca9cd485e50e85909", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELhnqOpc6TBVYFPintkHhJHfSiPlY\nt09gMTJjVvUGH6QazdG+EMBS6uucItPwTP7G6RvSPW05luypzUheUOhZCQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 432, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02207fffffff55555555ffffffffffffffffd344a71e6f651458a27bdc81fd976e37", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046eafbcb683e05e0bdb2aa0ac0686f60b34ce66761b7ecffccd3da8fe8799d6244547b4aeca8a8e56dba45750cd9fc4f0e3f1333dcb855566c29bd14457cf489b", + "wx" : "6eafbcb683e05e0bdb2aa0ac0686f60b34ce66761b7ecffccd3da8fe8799d624", + "wy" : "4547b4aeca8a8e56dba45750cd9fc4f0e3f1333dcb855566c29bd14457cf489b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046eafbcb683e05e0bdb2aa0ac0686f60b34ce66761b7ecffccd3da8fe8799d6244547b4aeca8a8e56dba45750cd9fc4f0e3f1333dcb855566c29bd14457cf489b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEbq+8toPgXgvbKqCsBob2CzTOZnYb\nfs/8zT2o/oeZ1iRFR7SuyoqOVtukV1DNn8Tw4/EzPcuFVWbCm9FEV89Imw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 433, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02203fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192aa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0450f51ce959e24ac86b1054ea016c57d1da5f4cee008dd800757a817606234f78aa17f3ef6f7a6c51381c63d66697b1b5c196eb1da73d7b73c33f9115d7432d23", + "wx" : "50f51ce959e24ac86b1054ea016c57d1da5f4cee008dd800757a817606234f78", + "wy" : "00aa17f3ef6f7a6c51381c63d66697b1b5c196eb1da73d7b73c33f9115d7432d23" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000450f51ce959e24ac86b1054ea016c57d1da5f4cee008dd800757a817606234f78aa17f3ef6f7a6c51381c63d66697b1b5c196eb1da73d7b73c33f9115d7432d23", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEUPUc6VniSshrEFTqAWxX0dpfTO4A\njdgAdXqBdgYjT3iqF/Pvb3psUTgcY9Zml7G1wZbrHac9e3PDP5EV10MtIw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 434, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02205d8ecd64a4eeba466815ddf3a4de9a8e6abd9c5db0a01eb80343553da648428f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "049c8ef36f19815572db154e8f47a8dc5cc807d551a7141fed8a2c15460fe7ee10660b936644e1ccad24578811dd45a325214e28a78e99a0ed2df7354fe9bca0ad", + "wx" : "009c8ef36f19815572db154e8f47a8dc5cc807d551a7141fed8a2c15460fe7ee10", + "wy" : "660b936644e1ccad24578811dd45a325214e28a78e99a0ed2df7354fe9bca0ad" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200049c8ef36f19815572db154e8f47a8dc5cc807d551a7141fed8a2c15460fe7ee10660b936644e1ccad24578811dd45a325214e28a78e99a0ed2df7354fe9bca0ad", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnI7zbxmBVXLbFU6PR6jcXMgH1VGn\nFB/tiiwVRg/n7hBmC5NmROHMrSRXiBHdRaMlIU4op46ZoO0t9zVP6bygrQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 435, + "comment" : "point duplication during verification", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "304402206f2347cab7dd76858fe0555ac3bc99048c4aacafdfb6bcbe05ea6c42c4934569022056be8aaebb8627ef5e37057feb3448f726fb605312992466ee8d9ed7cd43c1b1", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "049c8ef36f19815572db154e8f47a8dc5cc807d551a7141fed8a2c15460fe7ee1099f46c98bb1e3353dba877ee22ba5cdadeb1d75971665f12d208cab016435f52", + "wx" : "009c8ef36f19815572db154e8f47a8dc5cc807d551a7141fed8a2c15460fe7ee10", + "wy" : "0099f46c98bb1e3353dba877ee22ba5cdadeb1d75971665f12d208cab016435f52" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200049c8ef36f19815572db154e8f47a8dc5cc807d551a7141fed8a2c15460fe7ee1099f46c98bb1e3353dba877ee22ba5cdadeb1d75971665f12d208cab016435f52", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnI7zbxmBVXLbFU6PR6jcXMgH1VGn\nFB/tiiwVRg/n7hCZ9GyYux4zU9uod+4iulza3rHXWXFmXxLSCMqwFkNfUg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 436, + "comment" : "duplication bug", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "304402206f2347cab7dd76858fe0555ac3bc99048c4aacafdfb6bcbe05ea6c42c4934569022056be8aaebb8627ef5e37057feb3448f726fb605312992466ee8d9ed7cd43c1b1", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f2a3ebc44fe94406cd6dc9bfc79a84600ae568cf533131e01505012649e39b8f0f886d549f83aa61ecd1eeb77ba7256e984f088c3b9183e84a16e96f93860e4f", + "wx" : "00f2a3ebc44fe94406cd6dc9bfc79a84600ae568cf533131e01505012649e39b8f", + "wy" : "0f886d549f83aa61ecd1eeb77ba7256e984f088c3b9183e84a16e96f93860e4f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f2a3ebc44fe94406cd6dc9bfc79a84600ae568cf533131e01505012649e39b8f0f886d549f83aa61ecd1eeb77ba7256e984f088c3b9183e84a16e96f93860e4f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8qPrxE/pRAbNbcm/x5qEYArlaM9T\nMTHgFQUBJknjm48PiG1Un4OqYezR7rd7pyVumE8IjDuRg+hKFulvk4YOTw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 437, + "comment" : "point with x-coordinate 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250201010220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e30751018c302c6916c21e2239baa41f0e69c5acfc371bb3e376ad364ea63802659cceeae0cabfee3ed33abacbc490e8716b5fbf11137647b524e4b855d7d659", + "wx" : "00e30751018c302c6916c21e2239baa41f0e69c5acfc371bb3e376ad364ea63802", + "wy" : "659cceeae0cabfee3ed33abacbc490e8716b5fbf11137647b524e4b855d7d659" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e30751018c302c6916c21e2239baa41f0e69c5acfc371bb3e376ad364ea63802659cceeae0cabfee3ed33abacbc490e8716b5fbf11137647b524e4b855d7d659", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE4wdRAYwwLGkWwh4iObqkHw5pxaz8\nNxuz43atNk6mOAJlnM7q4Mq/7j7TOrrLxJDocWtfvxETdke1JOS4VdfWWQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 438, + "comment" : "point with x-coordinate 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3045022101000000000000000000000000000000000000000000000000000000000000000002203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aa9", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ef28340fb027dabc05a2bd3be99c6cc2730ab0c3d8289e6a242f2b76cfccf9a2405cd0530183db6640119a20ad9c1c24ec87d4d9d5de42bffab54fd6cb6f9ed6", + "wx" : "00ef28340fb027dabc05a2bd3be99c6cc2730ab0c3d8289e6a242f2b76cfccf9a2", + "wy" : "405cd0530183db6640119a20ad9c1c24ec87d4d9d5de42bffab54fd6cb6f9ed6" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ef28340fb027dabc05a2bd3be99c6cc2730ab0c3d8289e6a242f2b76cfccf9a2405cd0530183db6640119a20ad9c1c24ec87d4d9d5de42bffab54fd6cb6f9ed6", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7yg0D7An2rwFor076ZxswnMKsMPY\nKJ5qJC8rds/M+aJAXNBTAYPbZkARmiCtnBwk7IfU2dXeQr/6tU/Wy2+e1g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 439, + "comment" : "comparison with point at infinity ", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aa9", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0401b4e8eb0cf6f321006fc107246c1996f7034f56d82706cd8f14f05da0a7c514f158ad7ff3c6a08b2f057c6c28255f9513811f20ab18f7104df554d591913f78", + "wx" : "01b4e8eb0cf6f321006fc107246c1996f7034f56d82706cd8f14f05da0a7c514", + "wy" : "00f158ad7ff3c6a08b2f057c6c28255f9513811f20ab18f7104df554d591913f78" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000401b4e8eb0cf6f321006fc107246c1996f7034f56d82706cd8f14f05da0a7c514f158ad7ff3c6a08b2f057c6c28255f9513811f20ab18f7104df554d591913f78", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAbTo6wz28yEAb8EHJGwZlvcDT1bY\nJwbNjxTwXaCnxRTxWK1/88agiy8FfGwoJV+VE4EfIKsY9xBN9VTVkZE/eA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 440, + "comment" : "extreme value for k and edgecase s", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc476699780220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040b1cc580bb6f71e4bffb731a1e74f929c04a10ff94ac2312359d3f13213c3b4c870213c2ad3665a3d243dcb55780e21c8601c5f9803f27e31ff22f8ce77e739e", + "wx" : "0b1cc580bb6f71e4bffb731a1e74f929c04a10ff94ac2312359d3f13213c3b4c", + "wy" : "00870213c2ad3665a3d243dcb55780e21c8601c5f9803f27e31ff22f8ce77e739e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040b1cc580bb6f71e4bffb731a1e74f929c04a10ff94ac2312359d3f13213c3b4c870213c2ad3665a3d243dcb55780e21c8601c5f9803f27e31ff22f8ce77e739e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECxzFgLtvceS/+3MaHnT5KcBKEP+U\nrCMSNZ0/EyE8O0yHAhPCrTZlo9JD3LVXgOIchgHF+YA/J+Mf8i+M535zng==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 441, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022100b6db6db6249249254924924924924924625bd7a09bec4ca81bcdd9f8fd6b63cc", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042699736fdb603e90b1d9a04fcd90ed39756ed567214033ddb5ad579213089d2e96acfb0baeec9cfe2df150aa06b01ba58d03162b497c57a0d305adb4c5f7f375", + "wx" : "2699736fdb603e90b1d9a04fcd90ed39756ed567214033ddb5ad579213089d2e", + "wy" : "0096acfb0baeec9cfe2df150aa06b01ba58d03162b497c57a0d305adb4c5f7f375" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042699736fdb603e90b1d9a04fcd90ed39756ed567214033ddb5ad579213089d2e96acfb0baeec9cfe2df150aa06b01ba58d03162b497c57a0d305adb4c5f7f375", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJplzb9tgPpCx2aBPzZDtOXVu1Wch\nQDPdta1XkhMInS6WrPsLruyc/i3xUKoGsBuljQMWK0l8V6DTBa20xffzdQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 442, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022100cccccccc00000000cccccccccccccccc971f2ef152794b9d8fc7d568c9e8eaa7", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042a3021069e8841f9d69ad4c2992b02dc7a2f5447afa55a4683c6451cdc4e728600ca4123520611085cb10ea80bdb851a0b09dd79703c420606ff658dba94c345", + "wx" : "2a3021069e8841f9d69ad4c2992b02dc7a2f5447afa55a4683c6451cdc4e7286", + "wy" : "00ca4123520611085cb10ea80bdb851a0b09dd79703c420606ff658dba94c345" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042a3021069e8841f9d69ad4c2992b02dc7a2f5447afa55a4683c6451cdc4e728600ca4123520611085cb10ea80bdb851a0b09dd79703c420606ff658dba94c345", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKjAhBp6IQfnWmtTCmSsC3HovVEev\npVpGg8ZFHNxOcoYAykEjUgYRCFyxDqgL24UaCwndeXA8QgYG/2WNupTDRQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 443, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc4766997802203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aaa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04535212040d83b1802cd4a9c0b6ceb0a89de68b794ddf979c2ffb9a72e59eea007650166217eb39f4e03fecd48e9e7448032da261caa68d21df639ba68ee667a6", + "wx" : "535212040d83b1802cd4a9c0b6ceb0a89de68b794ddf979c2ffb9a72e59eea00", + "wy" : "7650166217eb39f4e03fecd48e9e7448032da261caa68d21df639ba68ee667a6" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004535212040d83b1802cd4a9c0b6ceb0a89de68b794ddf979c2ffb9a72e59eea007650166217eb39f4e03fecd48e9e7448032da261caa68d21df639ba68ee667a6", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEU1ISBA2DsYAs1KnAts6wqJ3mi3lN\n35ecL/uacuWe6gB2UBZiF+s59OA/7NSOnnRIAy2iYcqmjSHfY5umjuZnpg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 444, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022049249248db6db6dbb6db6db6db6db6db5a8b230d0b2b51dcd7ebf0c9fef7c185", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04884a86a89981e216732916569f9e3f203806359ef9b9ced61ebb82d5f8030045079ceef71b8f9e1deb29aeddaf3bcc780dff88f92b705c68f572ec481139b84a", + "wx" : "00884a86a89981e216732916569f9e3f203806359ef9b9ced61ebb82d5f8030045", + "wy" : "079ceef71b8f9e1deb29aeddaf3bcc780dff88f92b705c68f572ec481139b84a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004884a86a89981e216732916569f9e3f203806359ef9b9ced61ebb82d5f8030045079ceef71b8f9e1deb29aeddaf3bcc780dff88f92b705c68f572ec481139b84a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEiEqGqJmB4hZzKRZWn54/IDgGNZ75\nuc7WHruC1fgDAEUHnO73G4+eHesprt2vO8x4Df+I+StwXGj1cuxIETm4Sg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 445, + "comment" : "extreme value for k", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022016a4502e2781e11ac82cbc9d1edd8c981584d13e18411e2f6e0478c34416e3bb", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04cdb031f0e0bc432f0b959bc270456f6a500635732c76764010a5ea20f54a71d85cf6ce18411cdcb5056e4280e449c3ad6df90f9ae2dea4abc08280d99749643d", + "wx" : "00cdb031f0e0bc432f0b959bc270456f6a500635732c76764010a5ea20f54a71d8", + "wy" : "5cf6ce18411cdcb5056e4280e449c3ad6df90f9ae2dea4abc08280d99749643d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cdb031f0e0bc432f0b959bc270456f6a500635732c76764010a5ea20f54a71d85cf6ce18411cdcb5056e4280e449c3ad6df90f9ae2dea4abc08280d99749643d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzbAx8OC8Qy8LlZvCcEVvalAGNXMs\ndnZAEKXqIPVKcdhc9s4YQRzctQVuQoDkScOtbfkPmuLepKvAgoDZl0lkPQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 446, + "comment" : "extreme value for k and edgecase s", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2960220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046309ffd3c559fe1b0967213461d884b58d1cd549dbc297101d9db5a7e3fcf3d388f5fa86bd31043ca6077cd1da4b283f4179a23e9d680f66a2081ac502732714", + "wx" : "6309ffd3c559fe1b0967213461d884b58d1cd549dbc297101d9db5a7e3fcf3d3", + "wy" : "0088f5fa86bd31043ca6077cd1da4b283f4179a23e9d680f66a2081ac502732714" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046309ffd3c559fe1b0967213461d884b58d1cd549dbc297101d9db5a7e3fcf3d388f5fa86bd31043ca6077cd1da4b283f4179a23e9d680f66a2081ac502732714", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYwn/08VZ/hsJZyE0YdiEtY0c1Unb\nwpcQHZ21p+P889OI9fqGvTEEPKYHfNHaSyg/QXmiPp1oD2aiCBrFAnMnFA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 447, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022100b6db6db6249249254924924924924924625bd7a09bec4ca81bcdd9f8fd6b63cc", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046e564ff8412e92f5ee23fd299c92c57eb6ef0cbd17c28721b92625938d0eab1cff8941068815c9ad2d3b7f05845c41c4acebb92b3dc155aa7a51046948a4eed0", + "wx" : "6e564ff8412e92f5ee23fd299c92c57eb6ef0cbd17c28721b92625938d0eab1c", + "wy" : "00ff8941068815c9ad2d3b7f05845c41c4acebb92b3dc155aa7a51046948a4eed0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046e564ff8412e92f5ee23fd299c92c57eb6ef0cbd17c28721b92625938d0eab1cff8941068815c9ad2d3b7f05845c41c4acebb92b3dc155aa7a51046948a4eed0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEblZP+EEukvXuI/0pnJLFfrbvDL0X\nwochuSYlk40Oqxz/iUEGiBXJrS07fwWEXEHErOu5Kz3BVap6UQRpSKTu0A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 448, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022100cccccccc00000000cccccccccccccccc971f2ef152794b9d8fc7d568c9e8eaa7", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0483fe782d906023da7ba700d097f8cc9618cb23f1cd89c213b98b8f9ae8fc023db15de38b856db24d4d6cc79b6d761fbd9ac94dad5f172883ba09278ba86d9955", + "wx" : "0083fe782d906023da7ba700d097f8cc9618cb23f1cd89c213b98b8f9ae8fc023d", + "wy" : "00b15de38b856db24d4d6cc79b6d761fbd9ac94dad5f172883ba09278ba86d9955" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000483fe782d906023da7ba700d097f8cc9618cb23f1cd89c213b98b8f9ae8fc023db15de38b856db24d4d6cc79b6d761fbd9ac94dad5f172883ba09278ba86d9955", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEg/54LZBgI9p7pwDQl/jMlhjLI/HN\nicITuYuPmuj8Aj2xXeOLhW2yTU1sx5ttdh+9mslNrV8XKIO6CSeLqG2ZVQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 449, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29602203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aaa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d1dddc947aaf9e6930cc46072f2cf2b68eb5e32dcf4ee84ea0647a201b299fbc6b382061309943abefa5938e8465e2f6afd051eab974d261797cd483934097a4", + "wx" : "00d1dddc947aaf9e6930cc46072f2cf2b68eb5e32dcf4ee84ea0647a201b299fbc", + "wy" : "6b382061309943abefa5938e8465e2f6afd051eab974d261797cd483934097a4" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d1dddc947aaf9e6930cc46072f2cf2b68eb5e32dcf4ee84ea0647a201b299fbc6b382061309943abefa5938e8465e2f6afd051eab974d261797cd483934097a4", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0d3clHqvnmkwzEYHLyzyto614y3P\nTuhOoGR6IBspn7xrOCBhMJlDq++lk46EZeL2r9BR6rl00mF5fNSDk0CXpA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 450, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022049249248db6db6dbb6db6db6db6db6db5a8b230d0b2b51dcd7ebf0c9fef7c185", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d17c1c5505bc710145ef74984864fe861e64302c16bb4a4bc69b47507b3f023541480e047b19bfe4bb885ec127cf254db1041ae1d5e8fd77e08294d398b62eb0", + "wx" : "00d17c1c5505bc710145ef74984864fe861e64302c16bb4a4bc69b47507b3f0235", + "wy" : "41480e047b19bfe4bb885ec127cf254db1041ae1d5e8fd77e08294d398b62eb0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d17c1c5505bc710145ef74984864fe861e64302c16bb4a4bc69b47507b3f023541480e047b19bfe4bb885ec127cf254db1041ae1d5e8fd77e08294d398b62eb0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0XwcVQW8cQFF73SYSGT+hh5kMCwW\nu0pLxptHUHs/AjVBSA4Eexm/5LuIXsEnzyVNsQQa4dXo/XfggpTTmLYusA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 451, + "comment" : "extreme value for k", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022016a4502e2781e11ac82cbc9d1edd8c981584d13e18411e2f6e0478c34416e3bb", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5", + "wx" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296", + "wy" : "4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaxfR8uEsQkf4vOblY6RA8ncDfYEt\n6zOg9KE5RdiYwpZP40Li/hp/m47n60p8D54WK84zV2sxXs7LtkBoN79R9Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 452, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "304402205731b7c4bd04cb9efb836935ff2e547bf2909f86824af4d8df78acf76d7b3d4e0220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + }, + { + "tcId" : 453, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3045022100a8ce483a42fb3462047c96ca00d1ab83ca565b2724cca9ac14411dcb8ee7e8030220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a", + "wx" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296", + "wy" : "00b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaxfR8uEsQkf4vOblY6RA8ncDfYEt\n6zOg9KE5RdiYwpawHL0cAeWAZXEYFLWD8GHp1DHMqZTOoTE0Sb+XyECuCg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 454, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "304402205731b7c4bd04cb9efb836935ff2e547bf2909f86824af4d8df78acf76d7b3d4e0220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + }, + { + "tcId" : 455, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3045022100a8ce483a42fb3462047c96ca00d1ab83ca565b2724cca9ac14411dcb8ee7e8030220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685", + "wx" : "4f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000", + "wy" : "00ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETzN8z9Z3JqgF5PFgCuKEnfOAfsoR\nc4Ajn72BaQAAAADtneoSTMjDlkFkEemIww9CfrUEr0OjFGzV336mBmbWhQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 456, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30440220207db605e42c96035d54352c5bc55cf27d5ded42cb6b42bdaee499ea64784db602207f83c09192aa04ce038e861699a0f27ca55bf32741dbc95bbf997dee57f538fc", + "result" : "valid" + }, + { + "tcId" : 457, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022067c259a2580089ed52780755c75ea8a26b9057cc1995e4b044c8176cefe3cc7b022100d48f63d31333054bbd7fab676d207bbdc4dea1cf1b4f71aceb037b8dc7f79555", + "result" : "valid" + }, + { + "tcId" : 458, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502205dc675a2beae6deeb1ef682e922c5fe47156e069acd08073a0f8d9184d6baa6c022100e33cad4ce48f22ff6e50b47ba5dd44046a78ed7873cfd3a2c8b2d4b49aad2580", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f49726500493584fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000", + "wx" : "3cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f497265004935", + "wy" : "0084fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f49726500493584fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPPA9YU2JOc/UmaB4c/rCgWGPBrj/\nh+gBXD9JcmUASTWE+hdNeRxyvyzjiAqJYN0qfHoTOKgvhanlnNvegAAAAA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 459, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502201a3b5c4b4a2fb0c2f9efb028a9efc78993f3151683cedf76214009ea418d3e5d022100e82e87332e7bd004cad9b13857939c01467fc1c3e4207efa45ef827985a82435", + "result" : "valid" + }, + { + "tcId" : 460, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30460221008c44ef660ab8936fe01571168435c1918d005bd24ec76f72cea8f0faeb9f777a022100d793dcb3a6d47e2451e7d62e1c284ae25bbfaa0820f58adab79c201ba8d34a3e", + "result" : "valid" + }, + { + "tcId" : 461, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402204227a3dbff7ac5353cd32c8b3456397a7ee7c0e6809615fcee466b1dcde3eb49022022ea6ad811b27f944abe70b47f490d255760f8c3562e6f7e2c1da3dbe45eb540", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f4972650049357b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff", + "wx" : "3cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f497265004935", + "wy" : "7b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f4972650049357b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPPA9YU2JOc/UmaB4c/rCgWGPBrj/\nh+gBXD9JcmUASTV7BeixhuONQdMcd/V2nyLVg4XsyFfQelYaYyQhf////w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 462, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022036636162db85e8d300ee45c51b9da00a7c2cffd9a6fb200761a647ccbf5d7e8e0221009d18374cf1f87a9051e563838e75728d3f2ff7a86c10292851b6ce885c5b0c76", + "result" : "valid" + }, + { + "tcId" : 463, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100a637fc972f3800705b8d5293096382d1c1ae7f670be45011b8bd29059f3049bd0221009c4abb6bbe06552d5d598b07728ccaed1738eac9fc985fd786fbc0a7347da828", + "result" : "valid" + }, + { + "tcId" : 464, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3044022076bfc74f3b488b34835aee96ee96067f53da021cff4020a10996d6933a27c03202202fd1658fe4e09b2e711b10117f5c37d9c3ea8b6f55cdf1e5a5ddae2c966d7e4e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffffa01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e", + "wx" : "2829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffff", + "wy" : "00a01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffffa01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKCnDH6ouQA40TtlLyj/NBUWVbrz+\nitD236X/jv////+gGq+vAA5SWFhVr6dnat4oQRMJkFLfV+frO9N+vrkiLg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 465, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30450221008e0c35240e9e5b7bf2ab351afb13ac2655653baeabc247cab2c71cc40da44c000220079cbf8c9ba9b53608b219d6989875d960bdefcde224cf7ac6f8e791adaa4364", + "result" : "valid" + }, + { + "tcId" : 466, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100f6ceb6c8f76c337f51f4ec3859eb16caec969fc02a61dec1a70fa4223bdfb254022010c0334298a98a6e5c12e9c0cad587dcab43199b43cdf3785bd9c36b30925ccf", + "result" : "valid" + }, + { + "tcId" : 467, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30450220083000a8e6121939f4b83612727b2091d8abbbdf9c92bf9bdcace8366150ce6f022100ba693f4e0b96dcbeeaa78c0d744365761151740323c346a54d74b332568d939f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f55a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73", + "wx" : "00fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f5", + "wy" : "5a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f55a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE////+UgIHmoEWN2PnnOPJmX/kFmt\naqwHCDGMTKmnpPVairy6LdqEdDEe5UFJuXPK4MD7iVV60L945lKaFmO9cw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 468, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30460221008a1bd6ef283948184b5a32d31860e97cc0c450931f024c30bb3b261f2552cdc7022100b7e50c0513a8ec730d112109e92761a21151e4bec68268e5c79ef804b757deaa", + "result" : "valid" + }, + { + "tcId" : 469, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502200c18337b701b6000d3ce3574664c5dc44ead6a1f2ee0c27a728ea0b0f37990b9022100c31db9b199b3e1709c44a44118d1d7cb75324ee82ada2318744eb89651e6f6c0", + "result" : "valid" + }, + { + "tcId" : 470, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502202133d6fc78b394d4c34e173120b1e48c7fed7b89a03e55cab90b1367155b438a0221009293e67ff4b981e50c48b0304f7b1e6b530416ee35188302b1dd2f21e5cb479a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0400000003fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71", + "wx" : "03fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e", + "wy" : "1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000400000003fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAAAAA/oV+WOUnV8DpvXH+G+eABXu\nsjrrv/EXOTe6dI4QmYcgcOjofFVfoTZZzKXX+tz8sAI+qIlUjKSK8rp+cQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 471, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502203604a98e926b2f9d7585e341a5ecc73a4e811c5c8da82b65790ff8a117a75bda022100a0ff07774c9a0d4bf83db294b970f2696cc29a73637aa454d4d3b45eb964bb88", + "result" : "valid" + }, + { + "tcId" : 472, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502206bf7e8f8bc3a5a2e2249c92725cf0dffa9b72ead3cc56d05107a4d587563beb4022100a05332b5b424d97bfc080fe0353470610931cd538d2e4bcf78c6fc59b481d271", + "result" : "valid" + }, + { + "tcId" : 473, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502210097e099c73088fc37052180d0483987e50c155c993cba2e6c93dd9bea5798e2c302204a9ec5f05739efb4ea93790ea22c3fc423d0aeb109cd13fb1b44d87ea52ca71f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015000000001352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2", + "wx" : "00bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015", + "wy" : "1352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015000000001352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvLspFMefBF6qbsu8YSgWs75dLWeW\ncH2BJen4UcGK8BUAAAAAE1K7Sg+i6kzOuatj3WhK3loRJ7zzAKaYpxk7wg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 474, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502203988bce3195aaf7c9b008a9f1663a5e13a8bee7ddba33a1bc5d55aa49fd3903d022100c39f614828e2f71a4c66d86d1c3ec7e283f768033cff5ed09e93e3218d9df1c9", + "result" : "valid" + }, + { + "tcId" : 475, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100c3eb2e8f78a31f221d6003b949f8df6c7ec1e0c53803231e12438cb2b1b1d9ba022100b97cc1fcce1d8ddbb5e1bfa6d5300d7cac155494603c66f7eee8b8e9c9643431", + "result" : "valid" + }, + { + "tcId" : 476, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304602210089e0c23ccf61e68dc0cb9777f18b18c84b2b02b4360c79eaa40d46ebe7f3d9b1022100a5d0164e398764e7d12d696750fcb092211c22dfdd3941e59cd73bc48eb91496", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d", + "wx" : "00bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015", + "wy" : "00fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvLspFMefBF6qbsu8YSgWs75dLWeW\ncH2BJen4UcGK8BX////+7K1EtvBdFbMxRlScIpe1IqXu2EMM/1lnWObEPQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-256", + "tests" : [ + { + "tcId" : 477, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100bbc1bb4ffceb61a0dbe5a12d9638dc9f004e797cf72cdba8d879fdbcd84dec14022065a7c17d9a6892cf5455a1904fdd9b57ce2b41549b9b2ca5d7d182c305e9a202", + "result" : "valid" + }, + { + "tcId" : 478, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502202f093a33c69eeaf847e332b12bd0758be41dcf75d8131878f16e6f121cb3f4f102210093c304df074aef8cc2c8cddeaffda67eb2428ea7d3a113d51363e178d8068f71", + "result" : "valid" + }, + { + "tcId" : 479, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100b686774db39201a9462b96842adbeea16ae6003789bb18214dab9e5a758bf6ef022100ffc6b396293b94c96fcb325fae127608ebfd118a46f715b49b918caafb602a34", + "result" : "valid" + } + ] + } + ] +} diff --git a/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha3_512_test.json b/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha3_512_test.json new file mode 100644 index 0000000000..c03ffdce0a --- /dev/null +++ b/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha3_512_test.json @@ -0,0 +1,7246 @@ +{ + "algorithm" : "ECDSA", + "schema" : "ecdsa_verify_schema.json", + "generatorVersion" : "0.9rc5", + "numberOfTests" : 545, + "header" : [ + "Test vectors of type EcdsaVerify are meant for the verification", + "of ASN encoded ECDSA signatures." + ], + "notes" : { + "ArithmeticError" : { + "bugType" : "EDGE_CASE", + "description" : "Some implementations of ECDSA have arithmetic errors that occur when intermediate results have extreme values. This test vector has been constructed to test such occurences.", + "cves" : [ + "CVE-2017-18146" + ] + }, + "BerEncodedSignature" : { + "bugType" : "BER_ENCODING", + "description" : "ECDSA signatures are usually DER encoded. This signature contains valid values for r and s, but it uses alternative BER encoding.", + "effect" : "Accepting alternative BER encodings may be benign in some cases, or be an issue if protocol requires signature malleability.", + "cves" : [ + "CVE-2020-14966", + "CVE-2020-13822", + "CVE-2019-14859", + "CVE-2016-1000342" + ] + }, + "EdgeCasePublicKey" : { + "bugType" : "EDGE_CASE", + "description" : "The test vector uses a special case public key. " + }, + "EdgeCaseShamirMultiplication" : { + "bugType" : "EDGE_CASE", + "description" : "Shamir proposed a fast method for computing the sum of two scalar multiplications efficiently. This test vector has been constructed so that an intermediate result is the point at infinity if Shamir's method is used." + }, + "IntegerOverflow" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified, so that the original value is restored if the implementation ignores the most significant bits.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "InvalidEncoding" : { + "bugType" : "CAN_OF_WORMS", + "description" : "ECDSA signatures are encoded using ASN.1. This test vector contains an incorrectly encoded signature. The test vector itself was generated from a valid signature by modifying its encoding.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "InvalidSignature" : { + "bugType" : "AUTH_BYPASS", + "description" : "The signature contains special case values such as r=0 and s=0. Buggy implementations may accept such values, if the implementation does not check boundaries and computes s^(-1) == 0.", + "effect" : "Accepting such signatures can have the effect that an adversary can forge signatures without even knowning the message to sign.", + "cves" : [ + "CVE-2022-21449", + "CVE-2021-43572", + "CVE-2022-24884" + ] + }, + "InvalidTypesInSignature" : { + "bugType" : "AUTH_BYPASS", + "description" : "The signature contains invalid types. Dynamic typed languages sometime coerce such values of different types into integers. If an implementation is careless and has additional bugs, such as not checking integer boundaries then it may be possible that such signatures are accepted.", + "effect" : "Accepting such signatures can have the effect that an adversary can forge signatures without even knowning the message to sign.", + "cves" : [ + "CVE-2022-21449" + ] + }, + "MissingZero" : { + "bugType" : "LEGACY", + "description" : "Some implementations of ECDSA and DSA incorrectly encode r and s by not including leading zeros in the ASN encoding of integers when necessary. Hence, some implementations (e.g. jdk) allow signatures with incorrect ASN encodings assuming that the signature is otherwise valid.", + "effect" : "While signatures are more malleable if such signatures are accepted, this typically leads to no vulnerability, since a badly encoded signature can be reencoded correctly." + }, + "ModifiedInteger" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified. The goal is to check for arithmetic errors.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "ModifiedSignature" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an invalid signature that was generated from a valid signature by modifying it.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "ModularInverse" : { + "bugType" : "EDGE_CASE", + "description" : "The test vectors contains a signature where computing the modular inverse of s hits an edge case.", + "effect" : "While the signature in this test vector is constructed and similar cases are unlikely to occur, it is important to determine if the underlying arithmetic error can be used to forge signatures.", + "cves" : [ + "CVE-2019-0865" + ] + }, + "PointDuplication" : { + "bugType" : "EDGE_CASE", + "description" : "Some implementations of ECDSA do not handle duplication and points at infinity correctly. This is a test vector that has been specially crafted to check for such an omission.", + "cves" : [ + "2020-12607", + "CVE-2015-2730" + ] + }, + "RangeCheck" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified. By adding or subtracting the order of the group (or other values) the test vector checks whether signature verification verifies the range of r and s.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "SmallRandS" : { + "bugType" : "EDGE_CASE", + "description" : "The test vectors contains a signature where both r and s are small integers. Some libraries cannot verify such signatures.", + "effect" : "While the signature in this test vector is constructed and similar cases are unlikely to occur, it is important to determine if the underlying arithmetic error can be used to forge signatures.", + "cves" : [ + "2020-13895" + ] + }, + "SpecialCaseHash" : { + "bugType" : "EDGE_CASE", + "description" : "The test vector contains a signature where the hash of the message is a special case, e.g., contains a long run of 0 or 1 bits." + }, + "Untruncatedhash" : { + "bugType" : "MISSING_STEP", + "description" : "If the size of the digest is longer than the size of the underlying order of the multiplicative subgroup then the hash digest must be truncated during signature generation and verification. This test vector contains a signature where this step has been omitted." + }, + "ValidSignature" : { + "bugType" : "BASIC", + "description" : "The test vector contains a valid signature that was generated pseudorandomly. Such signatures should not fail to verify unless some of the parameters (e.g. curve or hash function) are not supported." + } + }, + "testGroups" : [ + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0404aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad587d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d", + "wx" : "04aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad5", + "wy" : "0087d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000404aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad587d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEBKrsc2NXJvIT+4qeZNo7hjLkFJWp\nRNAEW1IuunJA+tWH2TFXmKqjpboBd1eHztBeqve04J/IHW0apUboNl1SXQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 1, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "", + "sig" : "3046022100ddb577670d5a9b93666df2af7f9baadd8256fca0c81deb2d5cd7301a4b39105f022100a2bcd9f6228a0aa0a4f066aa674b9b08da252b02a77fd1b2f7a2d85929e8b491", + "result" : "valid" + }, + { + "tcId" : 2, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "4d7367", + "sig" : "30440220532d672c307da2891720d11422035ea25771f4fce0dc9948d754ca4f66ef36bb02204f296181799d3e6780086d6908ab8642711bd406e481b0ce3af1c44b9f098496", + "result" : "valid" + }, + { + "tcId" : 3, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "304502201c58cde69ddb363e7a6d2612771b3e713be8bed07f37bcda4875f152db2ac1ad022100a66755b078262b6b0d90c74aee64522104aa58b5f82fc5ba98bcef5bdb9d43a8", + "result" : "valid" + }, + { + "tcId" : 4, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "0000000000000000000000000000000000000000", + "sig" : "304402206637f14369d1dd112c5691969fcc867e64bafb1f5d8f917a9acf8ecf1dc957540220457b4a8bdd1c047b12826897991241700dad09666b4f410a56993023b098fd1e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e", + "wx" : "2927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838", + "wy" : "00c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKSexBRK64+3c/kZ4KBKLrSkDJpkZ\n9whgacjE32xzKDjHeHlk6qwA5ZIfsUmKYPRgZ2az2WhQAVWNGpdOc0FRPg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 5, + "comment" : "signature malleability", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "3045022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d02201202069b6b5ffadede2fdc290da1badc989ba98a9a491db339bfe478450ef9cc", + "result" : "valid" + }, + { + "tcId" : 6, + "comment" : "Legacy: ASN encoding of r misses leading 0", + "flags" : [ + "MissingZero" + ], + "msg" : "313233343030", + "sig" : "30450220dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 7, + "comment" : "Legacy: ASN encoding of s misses leading 0", + "flags" : [ + "MissingZero" + ], + "msg" : "313233343030", + "sig" : "3045022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0220edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 8, + "comment" : "valid", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "valid" + }, + { + "tcId" : 9, + "comment" : "length of sequence [r, s] uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "308146022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 10, + "comment" : "length of sequence [r, s] contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "30820046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 11, + "comment" : "length of sequence [r, s] uses 71 instead of 70", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3047022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 12, + "comment" : "length of sequence [r, s] uses 69 instead of 70", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3045022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 13, + "comment" : "uint32 overflow in length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30850100000046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 14, + "comment" : "uint64 overflow in length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3089010000000000000046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 15, + "comment" : "length of sequence [r, s] = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30847fffffff022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 16, + "comment" : "length of sequence [r, s] = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308480000000022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 17, + "comment" : "length of sequence [r, s] = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3084ffffffff022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 18, + "comment" : "length of sequence [r, s] = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3085ffffffffff022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 19, + "comment" : "length of sequence [r, s] = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3088ffffffffffffffff022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 20, + "comment" : "incorrect length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30ff022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 21, + "comment" : "replaced sequence [r, s] by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3080022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 22, + "comment" : "removing sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "", + "result" : "invalid" + }, + { + "tcId" : 23, + "comment" : "lonely sequence tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30", + "result" : "invalid" + }, + { + "tcId" : 24, + "comment" : "appending 0's to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3048022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000", + "result" : "invalid" + }, + { + "tcId" : 25, + "comment" : "prepending 0's to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30480000022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 26, + "comment" : "appending unused 0's to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000", + "result" : "invalid" + }, + { + "tcId" : 27, + "comment" : "appending null value to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3048022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850500", + "result" : "invalid" + }, + { + "tcId" : 28, + "comment" : "prepending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b4981773046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 29, + "comment" : "prepending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a25003046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 30, + "comment" : "appending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30483046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850004deadbeef", + "result" : "invalid" + }, + { + "tcId" : 31, + "comment" : "including undefined tags", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304eaa00bb00cd003046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 32, + "comment" : "including undefined tags", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e2229aa00bb00cd00022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 33, + "comment" : "including undefined tags", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d2229aa00bb00cd00022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 34, + "comment" : "truncated length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3081", + "result" : "invalid" + }, + { + "tcId" : 35, + "comment" : "including undefined tags to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304caa02aabb3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 36, + "comment" : "using composition with indefinite length for sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30803046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000", + "result" : "invalid" + }, + { + "tcId" : 37, + "comment" : "using composition with wrong tag for sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30803146022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000", + "result" : "invalid" + }, + { + "tcId" : 38, + "comment" : "Replacing sequence [r, s] with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "0500", + "result" : "invalid" + }, + { + "tcId" : 39, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "2e46022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 40, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "2f46022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 41, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3146022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 42, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3246022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 43, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "ff46022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 44, + "comment" : "dropping value of sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3000", + "result" : "invalid" + }, + { + "tcId" : 45, + "comment" : "using composition for sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a30010230452100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 46, + "comment" : "truncated sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3045022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b", + "result" : "invalid" + }, + { + "tcId" : 47, + "comment" : "truncated sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30452100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 48, + "comment" : "sequence [r, s] of size 4167 to check for overflows", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30821047022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 49, + "comment" : "indefinite length", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "3080022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000", + "result" : "invalid" + }, + { + "tcId" : 50, + "comment" : "indefinite length with truncated delimiter", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3080022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b8500", + "result" : "invalid" + }, + { + "tcId" : 51, + "comment" : "indefinite length with additional element", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3080022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b8505000000", + "result" : "invalid" + }, + { + "tcId" : 52, + "comment" : "indefinite length with truncated element", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3080022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85060811220000", + "result" : "invalid" + }, + { + "tcId" : 53, + "comment" : "indefinite length with garbage", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3080022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000fe02beef", + "result" : "invalid" + }, + { + "tcId" : 54, + "comment" : "indefinite length with nonempty EOC", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3080022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850002beef", + "result" : "invalid" + }, + { + "tcId" : 55, + "comment" : "prepend empty sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30483000022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 56, + "comment" : "append empty sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3048022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b853000", + "result" : "invalid" + }, + { + "tcId" : 57, + "comment" : "append zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3049022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85020100", + "result" : "invalid" + }, + { + "tcId" : 58, + "comment" : "append garbage with high tag number", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3049022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85bf7f00", + "result" : "invalid" + }, + { + "tcId" : 59, + "comment" : "append null with explicit tag", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304a022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85a0020500", + "result" : "invalid" + }, + { + "tcId" : 60, + "comment" : "append null with implicit tag", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3048022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85a000", + "result" : "invalid" + }, + { + "tcId" : 61, + "comment" : "sequence of sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30483046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 62, + "comment" : "truncated sequence: removed last 1 elements", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3023022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d", + "result" : "invalid" + }, + { + "tcId" : 63, + "comment" : "repeating element in sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3069022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 64, + "comment" : "flipped bit 0 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304400dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2c022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 65, + "comment" : "flipped bit 32 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304400dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49376ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 66, + "comment" : "flipped bit 48 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304400dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a59377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 67, + "comment" : "flipped bit 64 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304400dcbe02d38091fccba712175e1effda765021c6b8f211bc9c41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 68, + "comment" : "length of r uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "304702812100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 69, + "comment" : "length of r contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "30480282002100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 70, + "comment" : "length of r uses 34 instead of 33", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046022200dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 71, + "comment" : "length of r uses 32 instead of 33", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046022000dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 72, + "comment" : "uint32 overflow in length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b0285010000002100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 73, + "comment" : "uint64 overflow in length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304f028901000000000000002100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 74, + "comment" : "length of r = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a02847fffffff00dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 75, + "comment" : "length of r = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a02848000000000dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 76, + "comment" : "length of r = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a0284ffffffff00dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 77, + "comment" : "length of r = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b0285ffffffffff00dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 78, + "comment" : "length of r = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e0288ffffffffffffffff00dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 79, + "comment" : "incorrect length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304602ff00dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 80, + "comment" : "replaced r by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046028000dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 81, + "comment" : "removing r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3023022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 82, + "comment" : "lonely integer tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "302402022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 83, + "comment" : "lonely integer tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3024022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d02", + "result" : "invalid" + }, + { + "tcId" : 84, + "comment" : "appending 0's to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3048022300dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0000022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 85, + "comment" : "prepending 0's to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30480223000000dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 86, + "comment" : "appending unused 0's to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3048022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0000022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 87, + "comment" : "appending null value to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3048022300dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0500022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 88, + "comment" : "prepending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b2226498177022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 89, + "comment" : "prepending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a22252500022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 90, + "comment" : "appending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e2223022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0004deadbeef022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 91, + "comment" : "truncated length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30250281022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 92, + "comment" : "including undefined tags to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304c2227aa02aabb022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 93, + "comment" : "using composition with indefinite length for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a2280022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0000022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 94, + "comment" : "using composition with wrong tag for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a2280032100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0000022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 95, + "comment" : "Replacing r with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30250500022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 96, + "comment" : "changing tag value of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3046002100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 97, + "comment" : "changing tag value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046012100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 98, + "comment" : "changing tag value of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3046032100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 99, + "comment" : "changing tag value of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3046042100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 100, + "comment" : "changing tag value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046ff2100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 101, + "comment" : "dropping value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30250200022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 102, + "comment" : "using composition for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a22250201000220dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 103, + "comment" : "modifying first byte of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3046022102dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 104, + "comment" : "modifying last byte of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57efad022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 105, + "comment" : "truncated r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3045022000dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 106, + "comment" : "r of size 4130 to check for overflows", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "308210490282102200dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 107, + "comment" : "leading ff in r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30470222ff00dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 108, + "comment" : "replaced r by infinity", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3026090180022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 109, + "comment" : "replacing r with zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 110, + "comment" : "flipped bit 0 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3044022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d00edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b84", + "result" : "invalid" + }, + { + "tcId" : 111, + "comment" : "flipped bit 32 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3044022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d00edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64bb7542b85", + "result" : "invalid" + }, + { + "tcId" : 112, + "comment" : "flipped bit 48 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3044022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d00edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f8e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 113, + "comment" : "flipped bit 64 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3044022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d00edfdf96394a0052221d023d6f25e4523244b51230cce80d0b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 114, + "comment" : "length of s uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "3047022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d02812100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 115, + "comment" : "length of s contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "3048022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0282002100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 116, + "comment" : "length of s uses 34 instead of 33", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022200edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 117, + "comment" : "length of s uses 32 instead of 33", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022000edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 118, + "comment" : "uint32 overflow in length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0285010000002100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 119, + "comment" : "uint64 overflow in length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304f022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d028901000000000000002100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 120, + "comment" : "length of s = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d02847fffffff00edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 121, + "comment" : "length of s = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d02848000000000edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 122, + "comment" : "length of s = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0284ffffffff00edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 123, + "comment" : "length of s = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0285ffffffffff00edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 124, + "comment" : "length of s = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0288ffffffffffffffff00edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 125, + "comment" : "incorrect length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d02ff00edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 126, + "comment" : "replaced s by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d028000edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 127, + "comment" : "appending 0's to s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3048022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022300edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000", + "result" : "invalid" + }, + { + "tcId" : 128, + "comment" : "prepending 0's to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3048022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0223000000edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 129, + "comment" : "appending null value to s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3048022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022300edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850500", + "result" : "invalid" + }, + { + "tcId" : 130, + "comment" : "prepending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d2226498177022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 131, + "comment" : "prepending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d22252500022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 132, + "comment" : "appending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d2223022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850004deadbeef", + "result" : "invalid" + }, + { + "tcId" : 133, + "comment" : "truncated length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3025022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0281", + "result" : "invalid" + }, + { + "tcId" : 134, + "comment" : "including undefined tags to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304c022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d2227aa02aabb022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 135, + "comment" : "using composition with indefinite length for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d2280022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000", + "result" : "invalid" + }, + { + "tcId" : 136, + "comment" : "using composition with wrong tag for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d2280032100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000", + "result" : "invalid" + }, + { + "tcId" : 137, + "comment" : "Replacing s with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0500", + "result" : "invalid" + }, + { + "tcId" : 138, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d002100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 139, + "comment" : "changing tag value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d012100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 140, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d032100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 141, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d042100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 142, + "comment" : "changing tag value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2dff2100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 143, + "comment" : "dropping value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3025022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0200", + "result" : "invalid" + }, + { + "tcId" : 144, + "comment" : "using composition for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d22250201000220edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 145, + "comment" : "modifying first byte of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022102edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 146, + "comment" : "modifying last byte of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b05", + "result" : "invalid" + }, + { + "tcId" : 147, + "comment" : "truncated s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3045022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022000edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b", + "result" : "invalid" + }, + { + "tcId" : 148, + "comment" : "s of size 4130 to check for overflows", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30821049022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0282102200edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b850000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 149, + "comment" : "leading ff in s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3047022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d0222ff00edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 150, + "comment" : "replaced s by infinity", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d090180", + "result" : "invalid" + }, + { + "tcId" : 151, + "comment" : "replacing s with zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d020100", + "result" : "invalid" + }, + { + "tcId" : 152, + "comment" : "replaced r by r + n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "3046022101dcbe02d28091fccca712175e1effda760d08c16699295b22355e5e3ae9bb147e022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 153, + "comment" : "replaced r by r - n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30450220dcbe02d48091fccaa712175e1effda76933acc0b4afa1e184deac8b4f0f4c9dc022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 154, + "comment" : "replaced r by r + 256 * n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "304702220100dcbe01d38091fdcba712175e1effda33371c746009b04190fb6f5674507d402d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 155, + "comment" : "replaced r by -r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30460221ff2341fd2c7f6e033458ede8a1e1002589afde39470dee4362be5b6c8812a810d3022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 156, + "comment" : "replaced r by n - r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "304502202341fd2b7f6e033558ede8a1e10025896cc533f4b505e1e7b215374b0f0b3624022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 157, + "comment" : "replaced r by -n - r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30460221fe2341fd2d7f6e033358ede8a1e1002589f2f73e9966d6a4ddcaa1a1c51644eb82022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 158, + "comment" : "replaced r by r + 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "3046022101dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 159, + "comment" : "replaced r by r + 2**320", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "304e0229010000000000000000dcbe02d38091fccba712175e1effda765021c6b8f211bc9d41a49377ed57ef2d022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 160, + "comment" : "replaced s by s + n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "3046022101edfdf96294a0052321d023d6f25e4522e1324bd0b3e61f56adb3b10db3b750d6022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 161, + "comment" : "replaced s by s - n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30450220edfdf96494a0052121d023d6f25e45236764567565b6e24cc6401b87baf10634022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 162, + "comment" : "replaced s by s + 256 * n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "304702220100edfdf86394a0062221d023d6f25e44e00b45feca246d05c573c4a9471a797c85022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 163, + "comment" : "replaced s by -s", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30460221ff1202069c6b5ffaddde2fdc290da1badcdbb4aedcf3317f2e460619b548abd47b022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 164, + "comment" : "replaced s by -n - s", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30460221fe1202069d6b5ffadcde2fdc290da1badd1ecdb42f4c19e0a9524c4ef24c48af2a022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 165, + "comment" : "replaced s by s + 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "3046022101edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 166, + "comment" : "replaced s by s - 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "30450220edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 167, + "comment" : "replaced s by s + 2**320", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "304e0229010000000000000000edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85022100edfdf96394a0052221d023d6f25e4523244b51230cce80d1b9f9e64ab7542b85", + "result" : "invalid" + }, + { + "tcId" : 168, + "comment" : "Signature with special case values r=0 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100020100", + "result" : "invalid" + }, + { + "tcId" : 169, + "comment" : "Signature with special case values r=0 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100020101", + "result" : "invalid" + }, + { + "tcId" : 170, + "comment" : "Signature with special case values r=0 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201000201ff", + "result" : "invalid" + }, + { + "tcId" : 171, + "comment" : "Signature with special case values r=0 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 172, + "comment" : "Signature with special case values r=0 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 173, + "comment" : "Signature with special case values r=0 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 174, + "comment" : "Signature with special case values r=0 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 175, + "comment" : "Signature with special case values r=0 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 176, + "comment" : "Signature with special case values r=1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101020100", + "result" : "invalid" + }, + { + "tcId" : 177, + "comment" : "Signature with special case values r=1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101020101", + "result" : "invalid" + }, + { + "tcId" : 178, + "comment" : "Signature with special case values r=1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201010201ff", + "result" : "invalid" + }, + { + "tcId" : 179, + "comment" : "Signature with special case values r=1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 180, + "comment" : "Signature with special case values r=1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 181, + "comment" : "Signature with special case values r=1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 182, + "comment" : "Signature with special case values r=1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 183, + "comment" : "Signature with special case values r=1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 184, + "comment" : "Signature with special case values r=-1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff020100", + "result" : "invalid" + }, + { + "tcId" : 185, + "comment" : "Signature with special case values r=-1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff020101", + "result" : "invalid" + }, + { + "tcId" : 186, + "comment" : "Signature with special case values r=-1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff0201ff", + "result" : "invalid" + }, + { + "tcId" : 187, + "comment" : "Signature with special case values r=-1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 188, + "comment" : "Signature with special case values r=-1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 189, + "comment" : "Signature with special case values r=-1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 190, + "comment" : "Signature with special case values r=-1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 191, + "comment" : "Signature with special case values r=-1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 192, + "comment" : "Signature with special case values r=n and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020100", + "result" : "invalid" + }, + { + "tcId" : 193, + "comment" : "Signature with special case values r=n and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101", + "result" : "invalid" + }, + { + "tcId" : 194, + "comment" : "Signature with special case values r=n and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510201ff", + "result" : "invalid" + }, + { + "tcId" : 195, + "comment" : "Signature with special case values r=n and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 196, + "comment" : "Signature with special case values r=n and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 197, + "comment" : "Signature with special case values r=n and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 198, + "comment" : "Signature with special case values r=n and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 199, + "comment" : "Signature with special case values r=n and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 200, + "comment" : "Signature with special case values r=n - 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550020100", + "result" : "invalid" + }, + { + "tcId" : 201, + "comment" : "Signature with special case values r=n - 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550020101", + "result" : "invalid" + }, + { + "tcId" : 202, + "comment" : "Signature with special case values r=n - 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325500201ff", + "result" : "invalid" + }, + { + "tcId" : 203, + "comment" : "Signature with special case values r=n - 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 204, + "comment" : "Signature with special case values r=n - 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 205, + "comment" : "Signature with special case values r=n - 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 206, + "comment" : "Signature with special case values r=n - 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 207, + "comment" : "Signature with special case values r=n - 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 208, + "comment" : "Signature with special case values r=n + 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552020100", + "result" : "invalid" + }, + { + "tcId" : 209, + "comment" : "Signature with special case values r=n + 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552020101", + "result" : "invalid" + }, + { + "tcId" : 210, + "comment" : "Signature with special case values r=n + 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325520201ff", + "result" : "invalid" + }, + { + "tcId" : 211, + "comment" : "Signature with special case values r=n + 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 212, + "comment" : "Signature with special case values r=n + 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 213, + "comment" : "Signature with special case values r=n + 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 214, + "comment" : "Signature with special case values r=n + 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 215, + "comment" : "Signature with special case values r=n + 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 216, + "comment" : "Signature with special case values r=p and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff020100", + "result" : "invalid" + }, + { + "tcId" : 217, + "comment" : "Signature with special case values r=p and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff020101", + "result" : "invalid" + }, + { + "tcId" : 218, + "comment" : "Signature with special case values r=p and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0201ff", + "result" : "invalid" + }, + { + "tcId" : 219, + "comment" : "Signature with special case values r=p and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 220, + "comment" : "Signature with special case values r=p and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 221, + "comment" : "Signature with special case values r=p and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 222, + "comment" : "Signature with special case values r=p and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 223, + "comment" : "Signature with special case values r=p and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 224, + "comment" : "Signature with special case values r=p + 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000001000000000000000000000000020100", + "result" : "invalid" + }, + { + "tcId" : 225, + "comment" : "Signature with special case values r=p + 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000001000000000000000000000000020101", + "result" : "invalid" + }, + { + "tcId" : 226, + "comment" : "Signature with special case values r=p + 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff000000010000000000000000000000010000000000000000000000000201ff", + "result" : "invalid" + }, + { + "tcId" : 227, + "comment" : "Signature with special case values r=p + 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 228, + "comment" : "Signature with special case values r=p + 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 229, + "comment" : "Signature with special case values r=p + 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 230, + "comment" : "Signature with special case values r=p + 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 231, + "comment" : "Signature with special case values r=p + 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 232, + "comment" : "Signature encoding contains incorrect types: r=0, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008020100090380fe01", + "result" : "invalid" + }, + { + "tcId" : 233, + "comment" : "Signature encoding contains incorrect types: r=0, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100090142", + "result" : "invalid" + }, + { + "tcId" : 234, + "comment" : "Signature encoding contains incorrect types: r=0, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100010101", + "result" : "invalid" + }, + { + "tcId" : 235, + "comment" : "Signature encoding contains incorrect types: r=0, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100010100", + "result" : "invalid" + }, + { + "tcId" : 236, + "comment" : "Signature encoding contains incorrect types: r=0, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201000500", + "result" : "invalid" + }, + { + "tcId" : 237, + "comment" : "Signature encoding contains incorrect types: r=0, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201000c00", + "result" : "invalid" + }, + { + "tcId" : 238, + "comment" : "Signature encoding contains incorrect types: r=0, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201000c0130", + "result" : "invalid" + }, + { + "tcId" : 239, + "comment" : "Signature encoding contains incorrect types: r=0, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201003000", + "result" : "invalid" + }, + { + "tcId" : 240, + "comment" : "Signature encoding contains incorrect types: r=0, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201003003020100", + "result" : "invalid" + }, + { + "tcId" : 241, + "comment" : "Signature encoding contains incorrect types: r=1, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008020101090380fe01", + "result" : "invalid" + }, + { + "tcId" : 242, + "comment" : "Signature encoding contains incorrect types: r=1, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101090142", + "result" : "invalid" + }, + { + "tcId" : 243, + "comment" : "Signature encoding contains incorrect types: r=1, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101010101", + "result" : "invalid" + }, + { + "tcId" : 244, + "comment" : "Signature encoding contains incorrect types: r=1, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101010100", + "result" : "invalid" + }, + { + "tcId" : 245, + "comment" : "Signature encoding contains incorrect types: r=1, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201010500", + "result" : "invalid" + }, + { + "tcId" : 246, + "comment" : "Signature encoding contains incorrect types: r=1, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201010c00", + "result" : "invalid" + }, + { + "tcId" : 247, + "comment" : "Signature encoding contains incorrect types: r=1, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201010c0130", + "result" : "invalid" + }, + { + "tcId" : 248, + "comment" : "Signature encoding contains incorrect types: r=1, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201013000", + "result" : "invalid" + }, + { + "tcId" : 249, + "comment" : "Signature encoding contains incorrect types: r=1, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201013003020100", + "result" : "invalid" + }, + { + "tcId" : 250, + "comment" : "Signature encoding contains incorrect types: r=-1, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201ff090380fe01", + "result" : "invalid" + }, + { + "tcId" : 251, + "comment" : "Signature encoding contains incorrect types: r=-1, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff090142", + "result" : "invalid" + }, + { + "tcId" : 252, + "comment" : "Signature encoding contains incorrect types: r=-1, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff010101", + "result" : "invalid" + }, + { + "tcId" : 253, + "comment" : "Signature encoding contains incorrect types: r=-1, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff010100", + "result" : "invalid" + }, + { + "tcId" : 254, + "comment" : "Signature encoding contains incorrect types: r=-1, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff0500", + "result" : "invalid" + }, + { + "tcId" : 255, + "comment" : "Signature encoding contains incorrect types: r=-1, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff0c00", + "result" : "invalid" + }, + { + "tcId" : 256, + "comment" : "Signature encoding contains incorrect types: r=-1, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff0c0130", + "result" : "invalid" + }, + { + "tcId" : 257, + "comment" : "Signature encoding contains incorrect types: r=-1, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff3000", + "result" : "invalid" + }, + { + "tcId" : 258, + "comment" : "Signature encoding contains incorrect types: r=-1, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201ff3003020100", + "result" : "invalid" + }, + { + "tcId" : 259, + "comment" : "Signature encoding contains incorrect types: r=n, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551090380fe01", + "result" : "invalid" + }, + { + "tcId" : 260, + "comment" : "Signature encoding contains incorrect types: r=n, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551090142", + "result" : "invalid" + }, + { + "tcId" : 261, + "comment" : "Signature encoding contains incorrect types: r=n, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551010101", + "result" : "invalid" + }, + { + "tcId" : 262, + "comment" : "Signature encoding contains incorrect types: r=n, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551010100", + "result" : "invalid" + }, + { + "tcId" : 263, + "comment" : "Signature encoding contains incorrect types: r=n, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510500", + "result" : "invalid" + }, + { + "tcId" : 264, + "comment" : "Signature encoding contains incorrect types: r=n, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510c00", + "result" : "invalid" + }, + { + "tcId" : 265, + "comment" : "Signature encoding contains incorrect types: r=n, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510c0130", + "result" : "invalid" + }, + { + "tcId" : 266, + "comment" : "Signature encoding contains incorrect types: r=n, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325513000", + "result" : "invalid" + }, + { + "tcId" : 267, + "comment" : "Signature encoding contains incorrect types: r=n, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325513003020100", + "result" : "invalid" + }, + { + "tcId" : 268, + "comment" : "Signature encoding contains incorrect types: r=p, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff090380fe01", + "result" : "invalid" + }, + { + "tcId" : 269, + "comment" : "Signature encoding contains incorrect types: r=p, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff090142", + "result" : "invalid" + }, + { + "tcId" : 270, + "comment" : "Signature encoding contains incorrect types: r=p, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff010101", + "result" : "invalid" + }, + { + "tcId" : 271, + "comment" : "Signature encoding contains incorrect types: r=p, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff010100", + "result" : "invalid" + }, + { + "tcId" : 272, + "comment" : "Signature encoding contains incorrect types: r=p, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0500", + "result" : "invalid" + }, + { + "tcId" : 273, + "comment" : "Signature encoding contains incorrect types: r=p, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0c00", + "result" : "invalid" + }, + { + "tcId" : 274, + "comment" : "Signature encoding contains incorrect types: r=p, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0c0130", + "result" : "invalid" + }, + { + "tcId" : 275, + "comment" : "Signature encoding contains incorrect types: r=p, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff3000", + "result" : "invalid" + }, + { + "tcId" : 276, + "comment" : "Signature encoding contains incorrect types: r=p, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff3003020100", + "result" : "invalid" + }, + { + "tcId" : 277, + "comment" : "Signature encoding contains incorrect types: r=0.25, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300a090380fe01090380fe01", + "result" : "invalid" + }, + { + "tcId" : 278, + "comment" : "Signature encoding contains incorrect types: r=nan, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006090142090142", + "result" : "invalid" + }, + { + "tcId" : 279, + "comment" : "Signature encoding contains incorrect types: r=True, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010101010101", + "result" : "invalid" + }, + { + "tcId" : 280, + "comment" : "Signature encoding contains incorrect types: r=False, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010100010100", + "result" : "invalid" + }, + { + "tcId" : 281, + "comment" : "Signature encoding contains incorrect types: r=Null, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300405000500", + "result" : "invalid" + }, + { + "tcId" : 282, + "comment" : "Signature encoding contains incorrect types: r=empyt UTF-8 string, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30040c000c00", + "result" : "invalid" + }, + { + "tcId" : 283, + "comment" : "Signature encoding contains incorrect types: r=\"0\", s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060c01300c0130", + "result" : "invalid" + }, + { + "tcId" : 284, + "comment" : "Signature encoding contains incorrect types: r=empty list, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300430003000", + "result" : "invalid" + }, + { + "tcId" : 285, + "comment" : "Signature encoding contains incorrect types: r=list containing 0, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300a30030201003003020100", + "result" : "invalid" + }, + { + "tcId" : 286, + "comment" : "Signature encoding contains incorrect types: r=0.25, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008090380fe01020100", + "result" : "invalid" + }, + { + "tcId" : 287, + "comment" : "Signature encoding contains incorrect types: r=nan, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006090142020100", + "result" : "invalid" + }, + { + "tcId" : 288, + "comment" : "Signature encoding contains incorrect types: r=True, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010101020100", + "result" : "invalid" + }, + { + "tcId" : 289, + "comment" : "Signature encoding contains incorrect types: r=False, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010100020100", + "result" : "invalid" + }, + { + "tcId" : 290, + "comment" : "Signature encoding contains incorrect types: r=Null, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050500020100", + "result" : "invalid" + }, + { + "tcId" : 291, + "comment" : "Signature encoding contains incorrect types: r=empyt UTF-8 string, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050c00020100", + "result" : "invalid" + }, + { + "tcId" : 292, + "comment" : "Signature encoding contains incorrect types: r=\"0\", s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060c0130020100", + "result" : "invalid" + }, + { + "tcId" : 293, + "comment" : "Signature encoding contains incorrect types: r=empty list, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30053000020100", + "result" : "invalid" + }, + { + "tcId" : 294, + "comment" : "Signature encoding contains incorrect types: r=list containing 0, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30083003020100020100", + "result" : "invalid" + }, + { + "tcId" : 295, + "comment" : "Edge case for Shamir multiplication", + "flags" : [ + "EdgeCaseShamirMultiplication" + ], + "msg" : "3335343130", + "sig" : "3044022064a1aab5000d0e804f3e2fc02bdee9be8ff312334e2ba16d11547c97711c898e02203d4e6c69176bb9e30eec304a30d982cb3f6073a2273f36b67b1b284899b08163", + "result" : "valid" + }, + { + "tcId" : 296, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32373239373236343137", + "sig" : "3046022100f521807c1e329ac6df4df24208d1e7088b4e4de5a82ed37dbfd8d49c7406f91b022100c44f723038deea858a25d7264d1680b416ffc0d909b94def9fbda02477d69ef4", + "result" : "valid" + }, + { + "tcId" : 297, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "343331343737363137", + "sig" : "30450220219f842783028cab66f419241dee39da459e2d295d0ab1e56b29b38f50a8bd51022100f6f357077677e2669c1e289f65c6094c68b8e1efbe4c87468327c81d55979bd9", + "result" : "valid" + }, + { + "tcId" : 298, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36363033343338303333", + "sig" : "3045022015768c2623e7093c7dcb468d430007fc7338f1cfd058fe22ab09a451b61ec34c022100a609689226f073c968fc46336cfd116edb92045f2383d5376ff88272dc444ca2", + "result" : "valid" + }, + { + "tcId" : 299, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32383239363231343535", + "sig" : "3045022100bb449ace6f3b900103a09357cda16e3b14e9e99beb3b8f1928f0a66ce30b0ea502206e6b65f9798cd8c32d7068270800da5d98f06d36836ccb7c30551717fae3052f", + "result" : "valid" + }, + { + "tcId" : 300, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34333131383231373336", + "sig" : "30450220589e10e34c3fea59478a9301bde976cbd56ac15afa2f13f14f310e5e8d6bf1e1022100adf5198111939bd395bd3820742a68ae97f8595cfc8b7e1892fc360d13142158", + "result" : "valid" + }, + { + "tcId" : 301, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3131373730373734313735", + "sig" : "3046022100ad5a1daab3023a651b58e3a13ebfaefc14fb9c79ad2610be68e49bd3992e5722022100cfb91fa16a32c8724cef5714e72f2c91b1d50050b4eb272a82327604486cbbb2", + "result" : "valid" + }, + { + "tcId" : 302, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31353938353135353635", + "sig" : "3045022059d0df1176b277e12c097e9e00860dc4ad3bb7f2e4af2282beb13eff9d7b6afc022100d3da4f61e8adc8449885a52bf73eda66ac1b77ba05a1ab8397e42ecaeaff68cf", + "result" : "valid" + }, + { + "tcId" : 303, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32383831313031363138", + "sig" : "3045022100d274baceefc72a921fc4962cc9487263ec6984f0f82c0b992ae3c80ba685b423022024bd9a9f39ed02773e8ba54e3f0f99f4e806a69839b7890099be2978cd55076f", + "result" : "valid" + }, + { + "tcId" : 304, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32303034373833333332", + "sig" : "304502203411db9e53af62472c8afa3a4ae7d044fdbb78b1e3a8e8fd329bc72e9e1dfb5d0221008284d93b62242f6274a26a3419719dc0635e0604fa6da5c2dbfbb85541c88566", + "result" : "valid" + }, + { + "tcId" : 305, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "39353030323437373837", + "sig" : "3044022033b2abf92021a14fd1e5293008c8aff551fd4a0cacaf8ec6e147f40d0f521cb002204d0d3ed085477a4dc7fd86d242905637a71700ffd4c22cf962a67e9ae32b8877", + "result" : "valid" + }, + { + "tcId" : 306, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32323039353030303630", + "sig" : "30440220717f5185242ac57215d8713f902cf9012f45dba76b8e7e51c67b71e6de10f0d8022028a9ad765a6b1248807be126b9eee01e8e2d65d8528cb28f0d45763f507d97f0", + "result" : "valid" + }, + { + "tcId" : 307, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "38313933373839323237", + "sig" : "304402204e57dbece14d3d279f1e831777b28401d2990c4ae477eebb997b583e82f29c5402203e41fe090c8f14b8af7fd39c2628869258cf05b0e289b6692602c10cdcc8dd83", + "result" : "valid" + }, + { + "tcId" : 308, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33363530363033323938", + "sig" : "3045022009eb0b2bf6a2491eb35c3a902da3c6c90933dd374dfb1f60f8ef7bd749725755022100df8a0ee8f757dc599350bb0e2aec515451152ff05bb2e439ba9145fc9a0849fa", + "result" : "valid" + }, + { + "tcId" : 309, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3136333833393533353233", + "sig" : "304402201c66a303f7f548ff4c17ce6c6038879cb9d47abbb71ad69a798d0d8a99518dcd0220485ee205c6fa3ffe5411948dff2351ab9bbbc20ca419d6182da77f5579058749", + "result" : "valid" + }, + { + "tcId" : 310, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32303931373638323035", + "sig" : "3045022100ae1fd2dbad7ebc2b7f19d1789e1f68ce345f40568a576a29dadcf894c51f7a3f022069e80f80c76b57e1767484485915980b5e2493e89d8824b7922ea2cbc687d2b3", + "result" : "valid" + }, + { + "tcId" : 311, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "39333634373032383235", + "sig" : "3044022067afdc527b0003c8400ade54df5663635f811950cb34ea77435c0ce40036524902207afa3d39b8a7e52ce768e466db6da41a354c12ea2f677bf05a24fc689e347323", + "result" : "valid" + }, + { + "tcId" : 312, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "393236383638373931", + "sig" : "30450221009b1a90f8116d33d674137579528f395ed13ecbc238940a1a9a8504a72568a9d7022007f34d9400af004fd657144ce97a13b76d509f7fd4c9245ce54609f749ead3cd", + "result" : "valid" + }, + { + "tcId" : 313, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35313738313334383231", + "sig" : "30450220263040f9babb63aec7d73fdbce988fb3ca2115ab24bba0c80832e3de34b698b9022100f7d99b7738aca745b91b65c697a83ac76ce1e61568d9271631d06af1b77ad5d6", + "result" : "valid" + }, + { + "tcId" : 314, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34373335303130373531", + "sig" : "304502210082f676de71ecae7041b8788e0870a57923c71fd21db1f8864e4519ee2f65d8880220020f12d98b79d45348513696d5b4926856d953e72f267d30e7bcd57ee8147210", + "result" : "valid" + }, + { + "tcId" : 315, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3134333533393131363839", + "sig" : "304502204e3c9c22a54f1ceb9336b656bf7019c375cb7f9137d692454c6d882927f16795022100b3bde8f45d5f885948b45402b9e7a722c292e88bfadb5bb2fdadfe8e1b3f5181", + "result" : "valid" + }, + { + "tcId" : 316, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31333834353439323034", + "sig" : "3046022100b20721bd0e8c9ee6eb790cee9d88481d17d568b4c942ba437e607460031c1df50221009f13ff6a54e6a0c5041cc3690c8f3b499f05e34f235c8adf8fd455df4a17ce97", + "result" : "valid" + }, + { + "tcId" : 317, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32373632313932373839", + "sig" : "304502206b1d46eeacccf7066a0fef27f498a59a9376b2544258510452787bd4a35783b502210088328ac07938b5b9cfe62a3841382cfbe9d623480cec2a3fdb73ee36dd4aef8f", + "result" : "valid" + }, + { + "tcId" : 318, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31383331363534333331", + "sig" : "30440220257e760a54637387b443f829f1a5802c7fc92bdf033039acf68e1acea0cbcdbe022025087f120467a80cc07efb7bb27ae68d8569a38fe2908282c3c7a310322761c5", + "result" : "valid" + }, + { + "tcId" : 319, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32343336383939303330", + "sig" : "304402201869c821e271838453c88c4a867df2301d27662b72d9385bacb6740ab6d6b5c3022022ccc9a0493116556d9ffc7582253c581452d717a7e00618dce21f46f5b64fd0", + "result" : "valid" + }, + { + "tcId" : 320, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "323034303431323232", + "sig" : "304602210094a521fb3bed347b0dcbe55f2e67c0d7abc4aa32ed2e1a6fd1c209de3a25ca250221009b7631a6520ed4b14b5b2a8b57a52de31f583b8d1260eb8dc061ad965d0e9eb6", + "result" : "valid" + }, + { + "tcId" : 321, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33333337313139393735", + "sig" : "3045022100ee4913a5f83dd3310e91595ef197075600ae17785e1c0b9139cbaea8def1d6d002202818f7847c48a9a38739c71653919104db8920a816000ed21e5179980efb6b6d", + "result" : "valid" + }, + { + "tcId" : 322, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36363935363230363738", + "sig" : "3045022100e912b0e5436db2a50817c6424291ffdd41352916e956ccad9068c95125f3a1e9022073309aa384c56486b6a4c699fca446e6f67a1133892971be83b4e2dab49afc2a", + "result" : "valid" + }, + { + "tcId" : 323, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32303933303137373437", + "sig" : "3046022100eb0b719879b2fd1676b3f6f913e353c2b4dd8201facb067e15da1dae9addcc8c022100a73b3a703857aa8d12263290366a19d64e0b3efccd0623f53a7370099e9dcece", + "result" : "valid" + }, + { + "tcId" : 324, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "313233343137393136", + "sig" : "304602210095617b71dc18a99e96a95ab5384324bff797ad704dfb1e2d6b3cc06e76652ced022100b11bc49444a2e2635d4d9b1bdedeb61593b5f3e0e16ce78da813ff64b728f8d2", + "result" : "valid" + }, + { + "tcId" : 325, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31373634333530363837", + "sig" : "3045022028fbebb0c142c6d200bfb173173c03bc3aa55da6d48c1b784628f2b9f59038f2022100c0f1427005a46aac00a0af43b8f54a951e673e0480c6bf7a6b5775d4a3de5e60", + "result" : "valid" + }, + { + "tcId" : 326, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3131343137323431343431", + "sig" : "30440220457ff86369e4efd69592b161aea2b09153f37cf69006907a7558998ab34b38a4022012692ffc569849dc8e3b9fd2cd7c6f42207bb4c07832d490c9d35a702665ce58", + "result" : "valid" + }, + { + "tcId" : 327, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32323638323436343933", + "sig" : "3046022100ac70036f6058fd1eb40dc6f58dd68ab56e73dc6841eaa45a83813b6aaf75fae2022100f70f7f0563c46a07d248e80a65f38532d5759f49fc104184fa6718ca55274372", + "result" : "valid" + }, + { + "tcId" : 328, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32373234373936373737", + "sig" : "3044022059baaba3992dab0b594a2e9fbc4c344cfdabe7868e4e77f47a310d94916d30ce022020b16c383085ee74402157d4f2da5f7e3e995dbbf53ee50985d4f7096882edda", + "result" : "valid" + }, + { + "tcId" : 329, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "393733333935313139", + "sig" : "3046022100aa567a710f7010718b1e02792bc63f9049c02f798bb319214c97bc734e54d115022100ddb7c78b45c4221db6f26e845f8c30be61c29bcf38e38abaf7cbd03e5af914f7", + "result" : "valid" + }, + { + "tcId" : 330, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31353037303032373036", + "sig" : "304402206ac18c06081a51ac5fb6d0a0735af510dd0ad529206e7fc0c1b6d0ea36cec4a8022064d49524cc26ef8eda21ad5f2c371203d6eef8ddfa5da7a6c37d86f29efc1fca", + "result" : "valid" + }, + { + "tcId" : 331, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33373433353638373832", + "sig" : "3046022100cf59dfd67512e2d173a398cb648805fb41e3099f27a7867aa2dda50dcf2e1f86022100bd528be771fa1e52cab6d7485c5887befb378ceaf565aca0f32d2831a466959e", + "result" : "valid" + }, + { + "tcId" : 332, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "393437363731323438", + "sig" : "30440220455f1c4406b598fc828ddb3bc77df7ad04baad399fb4975f542b19aeedfd5a1102204e0555d9bf4211d3ab173e2e6c7edb990867f8f982f6afc1b4b6732ee96a0af0", + "result" : "valid" + }, + { + "tcId" : 333, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "373235343434333234", + "sig" : "3045022100e1dc7a439633b9bc91d37a954943bc94e5f56a0442a3528fba5c6070cf25e86f02200376b7ff7601978a47bbf7d11c6844520a442ceb167aec3a0ddf36e150a385c9", + "result" : "valid" + }, + { + "tcId" : 334, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35353334303231323139", + "sig" : "3046022100aeeeef010cf97f324e6f89f3163656305728a573b885c52ec5973eba863a08da022100904c25f931e78e2b59fa9a138cb80a5c22341601a18501d364af361d69cd0bb8", + "result" : "valid" + }, + { + "tcId" : 335, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3132333031383133373933", + "sig" : "304502200e3798e441e787dae4bf84e2748abce913f362d41d59a39d58d89c889e52229f022100e3a002023296fe6d9395fc92ba31dd35c5ada42e06db01466a24f087ae70cdb4", + "result" : "valid" + }, + { + "tcId" : 336, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "39313135333137363130", + "sig" : "30460221009bfe9e09c40fad40bb442eb045216c20dc1282d3cc4ba77fe2e3db92d312fd800221008a152afa2164548b6edfd6610046ee001fdfb06555677c98bc505b6aef297d15", + "result" : "valid" + }, + { + "tcId" : 337, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32383934333937393632", + "sig" : "304502201531f9b622d3172f72096b8afc7278eb7bee49b72e1b948e48cc1add8f01e365022100edc803cdb54bd4c54b87bc69a42df3dd11ab56bb13d8b5b78642ffa9ef88d31d", + "result" : "valid" + }, + { + "tcId" : 338, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31323333353833303333", + "sig" : "304402207973333617680ff89798c6b64bb42f436be7771887c2d14a98dd3397e6896e0a022011b70b23a62fd9ce1b27c1b669c851187c09e9081f0aa6ae011411425f694929", + "result" : "valid" + }, + { + "tcId" : 339, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "323131323639323536", + "sig" : "304502204fc40e0b3dd49c4f259c5ee2ff271b703b9b7380455167e11360bf336f72c0c4022100d219cdbfefa9ced843f947191ff11bfe4880702a4504f34b28481b424f433a38", + "result" : "valid" + }, + { + "tcId" : 340, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33303035343833383634", + "sig" : "3046022100816c369e7b8672cce325dae1ad2f2a5330d177fe0da399c8e520f361ac770389022100858c9cdf1a2ca40ef9c1e02f883b34701dc1760a9d13ba714c57dd886282acd8", + "result" : "valid" + }, + { + "tcId" : 341, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "38333536373632373235", + "sig" : "3044022051adf43cda1a938e1deb5fe08ab28df1e607f25fb2e98913d2579420b63056e602203b8920181a8ab6f9ea0a1814171db3eb4ff3d5fd9cbd2d9c1ec4018a7625562e", + "result" : "valid" + }, + { + "tcId" : 342, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "38333239353030373630", + "sig" : "3045022042ce9e0f877b7586e7c0eb2fde6f7c4b1f4cc888f54402f2b7bb99dedc2b7f07022100f0413e7636cb6605e0d7284c7804d7c9a3cc0924d37fca7d4943d9e0c9817427", + "result" : "valid" + }, + { + "tcId" : 343, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31393237303834313635", + "sig" : "304402204b2e5a797d240cd8c80b424a41dc47eaad249fc642e3c5b4bc68328fc1e26fc50220117910985597a6f7482bec7632e94676c432684f16f7f3d09a90ff4ed6ad36db", + "result" : "valid" + }, + { + "tcId" : 344, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37333032333538323838", + "sig" : "3044022042bf9a164723ef3f5cb59b528966ae648e80291785a4e0067283a7af59795bb70220017e1d24962a34d850d94187d269836ad437396a0ff134067b1baedef69b5951", + "result" : "valid" + }, + { + "tcId" : 345, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3133343733373337333833", + "sig" : "304502201ec06a62d69fca8d99473b8d5a8af3bbd701891df976e33e2f86c6084fb705f2022100b679eff436faa53c0a3c437717f574b59135d5dc49fb8524a365296db2d119e6", + "result" : "valid" + }, + { + "tcId" : 346, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32353031353533363839", + "sig" : "30440220183c81ab34a7d7c6742ede4198f5c75ed7fb79e8315899ef0dd26f95e3c4ba26022073f0196e459eb980b6e7ac44d868ab632d6421d1788b9f9651fb827b1a8e5dcc", + "result" : "valid" + }, + { + "tcId" : 347, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33353335303430303239", + "sig" : "3045022100f5bec00e6b90ab2a8f188f8163dcdd9b8185a6bbbc623c12d583c9cf55c8e3ba02205dba085bd57b5471f8547cff0aca9e51234d85c0847d01a3aa0b3cf3cace82d9", + "result" : "valid" + }, + { + "tcId" : 348, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31343230333537323930", + "sig" : "304402207c18891499af92cfa1db5538c7afbd44605b17dd0ede573206db85af23d3fe9d022028ceff96833996ebababef332b05372209844ddcc4c2134fd9311397e733b10a", + "result" : "valid" + }, + { + "tcId" : 349, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "393035313735303638", + "sig" : "304502204ed587536ba15e6707014f5ae773a423475e5e37564ffe91aec17722894cff340221009ff59fabe5e8dcf9539ea1bf9f4b880f112a26c915c14827dad9de6b251dd65e", + "result" : "valid" + }, + { + "tcId" : 350, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31363133373734323935", + "sig" : "304402204fb615772d56b6d1ba60f371eb04c557e0c9414c4eec00819c7647d91e7dee0102202623c6c4a3bffc596cb5f2f70a5a381942d350df04c35978f6607ddf7d57e4e3", + "result" : "valid" + }, + { + "tcId" : 351, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "383733363733343931", + "sig" : "3046022100c53d6697f536b8fb0e79f3b002dc626a02948e206d96de7c62bd7f9736408ace022100c9423b8575e4afe16cfebefb03e55d628270264fad0eb67c9acf0268e514584c", + "result" : "valid" + }, + { + "tcId" : 352, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34333535313036343035", + "sig" : "3044022008012cfd3713068d8ba6f3fa453be9da95afa6572a893882075ed5d64d62a41702203c5d1bf341823a4cca251cd67d43a6bcd6b5e47303082b7e54c80df5acbbac82", + "result" : "valid" + }, + { + "tcId" : 353, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34353339353735383736", + "sig" : "30450221008ad3da767111f41558fdc51723c649a87f58d42bea3431c8fdfa1f1096e3f2dd02207d1ea6859a0c932f2298f9d21c89ebea7354bbe508d2b73469dc3efe8613bc87", + "result" : "valid" + }, + { + "tcId" : 354, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "383933363633323031", + "sig" : "3045022062becf5afb08835f6768882c58a26c501f277ecd61a48d1fe683b6a78c49ce8202210089d11230de6953a1eeeb6b30774fc6bfd093c1e7c0422a7253428ba17ef969ce", + "result" : "valid" + }, + { + "tcId" : 355, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33383036303638303338", + "sig" : "3045022022b54382e2f2e6d7cffe3b34fbd567c8b503bfa6b5c3e5b8131e0ffe20747176022100a6d25ae5cab39cc83116d073cd1eb59d80ce2ed208c1c970b134be2ad29d6068", + "result" : "valid" + }, + { + "tcId" : 356, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32323332383137343937", + "sig" : "3045022100e2d9f5c37ddb25978ed4727b63a5e17546292526877e903f11d3d29874e952c802205c28ebafa2c2d285ed7f143d49b6d47daf12ad21c36f78ed7f18cb53d9c29f76", + "result" : "valid" + }, + { + "tcId" : 357, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34303734333232353538", + "sig" : "304402203b4c2fb773223c1dafa6d6de9ed2304dc25eea1fd487442a3a64ae8dc8f14927022056c21579e85fc9075c7601bd36ef8a3fa57d5bc7550c9a17bb8383e7fdbb366f", + "result" : "valid" + }, + { + "tcId" : 358, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "363130363735383237", + "sig" : "3044022005276f6159e2853fc6884c2939997b5a3be7ae615dad7517d6006208111dd6780220059ea3474bc6908c565dfb5bc72fd1a84231363cf78c4c317a061dbf1b03cc07", + "result" : "valid" + }, + { + "tcId" : 359, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3137343138373339323133", + "sig" : "304502205f856a30a8803a2276e8e5b8475f085d14f6de0c5f64eaf9e9b81c75fa831672022100a210a74c1c682de5708b9d19e6fd2f74ea047b1352edac7e4784cc008e8b0b5a", + "result" : "valid" + }, + { + "tcId" : 360, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35313237383432323837", + "sig" : "304402201c058daeb17f995cbaa4b02fc1ccf0a121fb7673d7b9b7bbaa2c9d850f9ba74102203e5400acc992698dbe9c41e25547c6ee08c841d6604de457558ee8af11d54446", + "result" : "valid" + }, + { + "tcId" : 361, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35303338363930383739", + "sig" : "304402207a6c6eb198bced25223fed630dbd2956c3799a21389e007efc23a0b3968f8aa502204535354e8fb477d0be4a16f44719d94650ed4607eabe206848ba24322406c1d5", + "result" : "valid" + }, + { + "tcId" : 362, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33383737303432333937", + "sig" : "30460221009d05a43f8dea2c4a3c0838e5987d899e63317a17fa5f609a4baa3764dac9899a022100d7c1833485f0a6914e5633115330a59b2ade5153b01b2a1af0a815f44d7f0aaa", + "result" : "valid" + }, + { + "tcId" : 363, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "333231373038313738", + "sig" : "3046022100b262a757ffcb496d880739d1937f139d39cde8e7ed29512a3be51ad470dcf5d9022100eb8dd006680530f27326f1c9c54e5c4300f1bca21bdb17245c485d7b296a2372", + "result" : "valid" + }, + { + "tcId" : 364, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37363637303434323730", + "sig" : "30440220480a6875b7bee4ed80f70206400df10264c38be42b07443c6ff19c0aab580444022078e3fa1c2fe11208c189a39e717b19a51f5172054891c083931861c7919d4745", + "result" : "valid" + }, + { + "tcId" : 365, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31313034373435303432", + "sig" : "3045022100f2be8cc615b14c289e50114ae2473b105447ec8c5311ecc3abcedcbeaeea1983022056ae20cd659370712e06bd6d5936bcaa06169737a062438c7e599bfff0099fb1", + "result" : "valid" + }, + { + "tcId" : 366, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "313533383730313534", + "sig" : "3045022100bed38f88fd52bf1cc4b4cc58bdd8a81af894c5a45bd822acf468eee08a68358402201c9f77ab2c821daa896e73b9f6ed4edf72ce62a6c48b5caae6a5ac9edd8d2953", + "result" : "valid" + }, + { + "tcId" : 367, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32323631333835303439", + "sig" : "30460221008513ed012ea7a10d2239c209e172edb565b1bfd2cdfd80269f79956a4aab5af2022100a413070c1e974643e5d5fdc56209e1421a254f47fda3312ceda244064efe69ce", + "result" : "valid" + }, + { + "tcId" : 368, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37353538373437363632", + "sig" : "3045022025bc1c38b291a5f60b7b01eec8a5025c69723b183f9090150a7f0ac87464f2f5022100c986a03025cbf9bdfa4e9a0988822dae44c48624bc63a203072c9cb1b813102d", + "result" : "valid" + }, + { + "tcId" : 369, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33343939333634313832", + "sig" : "3046022100b721214cff1779b8f407f4b1b2b2c5aa4e49a4a517031ff3d24b5af589b28b96022100e9c53670e94337535dda10a599de0a6da240ea813e8081f9caa6bae59cbd310a", + "result" : "valid" + }, + { + "tcId" : 370, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32333639323733393835", + "sig" : "30460221008695064bbd15d76b698e4bb8c0183bc2634a5c2455d6bd2c3f8323a4268edfe0022100c706f66507b52d2c8865e3eb5959267307f51fdb0565c2320132f2ca14123452", + "result" : "valid" + }, + { + "tcId" : 371, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "343933383339353635", + "sig" : "3045022100c91aad6b3c086073dafdb7688c6366be9127d9935cbc6e0c14b9f76c9d272c43022073c0f75156531aad36d2d14169c2b66797e8dd31d6f66b8ddb83f7522fba2176", + "result" : "valid" + }, + { + "tcId" : 372, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32353334333739393337", + "sig" : "30460221008125832edd19949328b170b1067eafcc17b3b79f5c139dfb6c109a1107ac76c8022100fce7f770e2245eeab16c33a230f6dea2ce1da67d11302a8ce7dc6145c30a2bf9", + "result" : "valid" + }, + { + "tcId" : 373, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "383334383031353938", + "sig" : "304402205e399962385aec963cb80dab6b5f5c341ce15e437142f4275ef9c210385348c1022018a8157a0976bb0e349a02134fad0d0286c40a5e43a47b49b5a03653e3ae9e19", + "result" : "valid" + }, + { + "tcId" : 374, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32343131303537343836", + "sig" : "3046022100ada147d5937331d037083c0bcda59adb6125485a9ea78ef6884c1432e93e4093022100b5ea223b88f45533826a8b24fc91ed80ae3560543102fed1d82360372988dd74", + "result" : "valid" + }, + { + "tcId" : 375, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "373836343638363335", + "sig" : "3046022100ff56b22aca9206d8dba458507804c9f80b94e75d2b61443a1c8d72480d8680b4022100a866f620640511357b7dd3bc0eddcddcc5a59e9162204c1d85f223ec485cdee2", + "result" : "valid" + }, + { + "tcId" : 376, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33303534373733373638", + "sig" : "3046022100cf3555d277eb8f6fa629e8ed875df1440352e53f32f9509ceecf222c4197c5de02210084829a1286f98c299ec5c2169a14d0cbf4892a97baca8310279d9b4c98fdef47", + "result" : "valid" + }, + { + "tcId" : 377, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31393237303137373338", + "sig" : "3045022100d8dd5094bc40652ddc19d04beeefee8d90fef82628edbc218a9d2de596bb023d02205c0a46804e7de7c741e5be55a7ebba092dc10a4d1691e6a04ac1690b54acf950", + "result" : "valid" + }, + { + "tcId" : 378, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31303531333235363334", + "sig" : "3044022025236b00a0a67e12ea781ae53a929e13c37994ddce784f3c0c33402a43b4a6f00220117331e5b39fe2a11f5c8bbfa5bb4fdc3659ac0a0efcd03a94362081a4c0e579", + "result" : "valid" + }, + { + "tcId" : 379, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34303139383636363832", + "sig" : "304402200f3564b771337bc8d494a04e4d0518f26d067d07c31689d5e27b503d3652117a022017144740db21874aa58c0de6a4cadb16c5d9230d4f4607980aabd161d21045ae", + "result" : "valid" + }, + { + "tcId" : 380, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130343530323537333530", + "sig" : "3045022100bff706d27dc3c8c59951c342244e3c3552216b9225898de130c6a5a8f58eef4202200e20cb9bffd20d88fe70e5d1f909051528c55efbadbfd7cdcce67de853f64632", + "result" : "valid" + }, + { + "tcId" : 381, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "333236393538353830", + "sig" : "3045022100ec5c12881dae52168aa635c80dcb0031a43e7d1b76ea97231b819051a861a7ff022009149c000d1af12d800225c1ba3587a53e5aabd8a8fe78230b1b4c12ba7df008", + "result" : "valid" + }, + { + "tcId" : 382, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33303734363533323431", + "sig" : "3045022100caeda2ff27eef0c71a30c277dda128692e4850e589d07f84046342ddaef9842a022069d422215439150d1da00a0811d2126de5b5c5a85be18fd3c06eb638703e6031", + "result" : "valid" + }, + { + "tcId" : 383, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37373134363833343830", + "sig" : "304402203977465917472d3cb67d6fc8888834f26fa47c8d3a2c8e046f70680e3037a37e0220785adced4f3d400b286ad7eb7bdf0b7c0f46d9e7268db5a34e740166caafd14a", + "result" : "valid" + }, + { + "tcId" : 384, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31373933333831333230", + "sig" : "30450220051b252934f1c65f39652a893e9517f049af42259936832cc3f8ff56d7f3cc54022100867bc57a96eb9d8dc3afd6db11b527f19e4ad8c031134ae6ec9b2b6ee092549b", + "result" : "valid" + }, + { + "tcId" : 385, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34383830363235353636", + "sig" : "304402200162ba940a75c7a12574736d45d60bbb2c6ce7739b04429cc72352adea4666c302204c686aaafb4f3615247ff06b97bd76d49b93f65b5f66c93fc2a8a22246536c24", + "result" : "valid" + }, + { + "tcId" : 386, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3439343337363438383537", + "sig" : "3045022100f74e65ddb41c6c01564b3344fcaa8db2b7b73f8fd156e500865a04826c5e4ab002206ec0376675b8c3692f397341269667eadc60696d56d8450ced85a65de9d3cfe1", + "result" : "valid" + }, + { + "tcId" : 387, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34373038363839373836", + "sig" : "304502210091f3ccfb87b3667bea8c6bb07d554467fbb9a77685a6523da5cf97dfa710e6b202205559936f9c94c6e4a97c9febbcb2c1a418fbf9f2933dd64def686b3771dc3fa8", + "result" : "valid" + }, + { + "tcId" : 388, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33303239383732393531", + "sig" : "304402200afdcdcf68669ecc53b019d7adbe8dc943f453b74451335a631a2a3dd5672f83022077ea833468953e14bd428663eebce4b3cdef41e9821704fb91d1515d20078e92", + "result" : "valid" + }, + { + "tcId" : 389, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33303137313930333835", + "sig" : "3046022100a197d8f8fa0cccfa7eccfaea7ca4441bda9789cc3e8d22a1d1b14d6deeb2db2102210088fb12318d60b66b68fe80834172813989c24901e3adbcd4c73860fa9500bc75", + "result" : "valid" + }, + { + "tcId" : 390, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "393536333633393339", + "sig" : "304402204b3eeeaf50e9f9bae0bfe64e2776bf2db181ab44c763393136927827f3adb24e0220317abec131eddf2117e27ea2bb4008e8fd0f4a32aa41f74eec7b1659c091fd9c", + "result" : "valid" + }, + { + "tcId" : 391, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35333030373634333530", + "sig" : "30450220464bdc2db7c5a2745a5d8c96a323eb99c175e0f99baa75dbb9c6d29b98facf3b022100d9328ca00ce32934b4ed340a6e15236cb16e5364cc91ef5cd6f675e048985bac", + "result" : "valid" + }, + { + "tcId" : 392, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31393334363634383434", + "sig" : "30440220270250c591cb20c7978d9f457104afa7c3484879cfdcf9dc6ac8e785e1fd20a0022009601dc597c123ed7e76bdbe2d146863bddcf357f9217713dfe1afd8f49891b6", + "result" : "valid" + }, + { + "tcId" : 393, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3335353435303535393632", + "sig" : "30440220729a17311a2fbf9f2325117b2cdac18fd6bbe3db4c5a1bd4e4f4f3d8f3d68dc7022048dd0269cb216e2792f3b410a781c9b10e59abdc553aae2a00d4038f44a2849e", + "result" : "valid" + }, + { + "tcId" : 394, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31333031373232313038", + "sig" : "304502205228f97e5d0dfb62cec6820029175867d7d63b179db3e8a9e7eecd1ec55e0b90022100dc547d7b7b680b40bcbe0cbf9a2d749787864158af3c0e0f8ef08dfcbbb36f7e", + "result" : "valid" + }, + { + "tcId" : 395, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35363137363931363932", + "sig" : "3045022021f775d3c7f7fe68e84842b30de9fbe4ffbb4f3324b295591e36e4651c14830d022100afa24a4cd163042da5f767e7088e6fa03efe039a477fc13f6c23270cda91519f", + "result" : "valid" + }, + { + "tcId" : 396, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33353831393332353334", + "sig" : "3045022100dabec42e9c44f0c230d36c45956cd4a8250f3665b6f291f700e73d06fe203744022023b687c29e03bc69c5491774588e3c519fa1eafae2ff8ede2ffd4a004e233215", + "result" : "valid" + }, + { + "tcId" : 397, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3135373136363738373434", + "sig" : "30440220381458d6c40c888bf90aef1428bc968caace553f94287e7adaa48943dc55315d02201e0e1f75489a451fc7cc4bca61a0a7330a5b4dc4283df68e21798996d8c69bd4", + "result" : "valid" + }, + { + "tcId" : 398, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33313939373833333630", + "sig" : "3045022100e08881dacd7ad6441f80be1d5510b7e29da4c8504d658634f13e5f3cfcf2a16d02203792541548f0d891ddf95ee40b815fc3ac160cbfe8cd948e0786db7cc20b38d2", + "result" : "valid" + }, + { + "tcId" : 399, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "373430343735303832", + "sig" : "3046022100a3efb0abc9d76e6601cb23d28b0276293eb8d6f2103d0da7b06a0169db1ea6a4022100c619ab2ba23b20f90bc815d2fd4c345d0381476b164590cd932b40b2263e4054", + "result" : "valid" + }, + { + "tcId" : 400, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "343137343336353339", + "sig" : "3044022061746df1d5f3d30403f5281767cb6601172b26564e97c35d4c68fb7426db4ffd02207ca2b0a4fb0d58a119a8df391ad3f2de47cb3b1a8fdf04d6ec235f639fe44080", + "result" : "valid" + }, + { + "tcId" : 401, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31323335363538383839", + "sig" : "3045022100ce48fc4bedd4dabacc68f71c4f5b58414e9b054b445c4781cf6d9b40d335b4b602201e73b8299579684b80801d2fd70d5c6f9a904ab0735b26d27ff44021002c6107", + "result" : "valid" + }, + { + "tcId" : 402, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32343239323535343034", + "sig" : "30460221008c936b044cf6dbdbe30cffdeb9eb40b4aa48e697975805dd40455e44fa4d6dfb022100f03bd82bc73dc7a9d518012f9cab5360d6daa06dd0145765b512263b13c3d851", + "result" : "valid" + }, + { + "tcId" : 403, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3531383033303235343636", + "sig" : "304502204bfaa8c78636efe63915dabaaee914deaaf4a06ae473679160eaeca88d5cc1160221008bc24546613e4811facecf605d6b1f79b442c3d8fe458c1c69334cbee31ef532", + "result" : "valid" + }, + { + "tcId" : 404, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34343736333938323030", + "sig" : "30440220130fc664eccece7b71a0a9cadc5369fb5bd54ccc53fd2c515e5ef232acd1b96502204372a69ef34ec2b296dbe94c5e8a8881645b9c0f6b6c4270c19b81493eb59421", + "result" : "valid" + }, + { + "tcId" : 405, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "39303630303335323132", + "sig" : "304402207b675a89f3165e2ad1f3ac4950898d17e7cd869df4ef58aa54901d51193f91f302203a7ea099d7c2909ff4a5c3c286d9f7739f38b7e44605ea3f515fde117a4519ec", + "result" : "valid" + }, + { + "tcId" : 406, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31373536303533303938", + "sig" : "30440220393a056a5ce76dc161daf1a6a77afb72cacb809d4173b9126e636a01cf7ccea102200859e4195124e11e40db391a7bf04f3ecd7dffe2a5629aac9374468fe8f1701b", + "result" : "valid" + }, + { + "tcId" : 407, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34393830383630303338", + "sig" : "304402202d9738a6e36c24a5dcde61ff7fa5ecb1e96e0077a4a183e8953745cb9461e5fa022055abb27fad179d132830f7e5dff0d26a63f0141fe2288b9ff7943c3a482ac124", + "result" : "valid" + }, + { + "tcId" : 408, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33363231383735333335", + "sig" : "30440220460f528bb6f8adb55626c5166c4572a93c3825dd1a695822a81c9e75e37fe8fd02200197c8b83193110f0426a417fae7ec3b99fc669371f1e7debbbd3850f6956c14", + "result" : "valid" + }, + { + "tcId" : 409, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36363433333334373231", + "sig" : "304402202d13939455192c22b1f18f7ca82ad4265ec2c4dbd124ae4a2b0017984512c9e902203d9e4fac784be61e2decb75a1f6768af21873eb49881849b936036b19187a734", + "result" : "valid" + }, + { + "tcId" : 410, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34343534393432373832", + "sig" : "30450221008f2523bbd4a2f4d144c0b7f7b5da84ce20d0d4f551cf5e0ad2b0cb06c6a207f0022005e46a85f61e1676def59d819220edcdf421db36efbe00bda7f9e331d56e8ce1", + "result" : "valid" + }, + { + "tcId" : 411, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3230313834343032", + "sig" : "304502204f60878beb2755b35f7152a33e416e16e10f77bca2ad70b09c86eff148ca6fb3022100bcbc6fa18d8ca570b4a9a5f2a8f6ff9db3e3370ffd3e5a7e19880990f6f8e614", + "result" : "valid" + }, + { + "tcId" : 412, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3538313332313733", + "sig" : "30450221009b148c63588ee8f22436a61d52ae8a60c3f35007dde8bb6e31997d99205973b302202015548563168f496c7b115bff541fd71fc926448a4554a15f97c58fdd039015", + "result" : "valid" + }, + { + "tcId" : 413, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31313833383631383131", + "sig" : "304402202b7d769ea682af0be42866cf3ad8865b12d4b37c3708fb2ad0dc5c87eda10154022011d8c48ba6c400f7950f9dfd9ea65617b3765db0e79778bb079fbd7db67b68f8", + "result" : "valid" + }, + { + "tcId" : 414, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31393232363032393036", + "sig" : "3045022100bfd3ac436e5c4d42f15fbce06d9859ad82d460d322a8c4c1d06ec318fdff4f510220335bd5d0619a5290c7fce42aaa97ccd52d80528a09a62a4ce8d1e7cf00db7a26", + "result" : "valid" + }, + { + "tcId" : 415, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "393735313433323037", + "sig" : "3044022056a5c2c2e803e66c5751fe8fb348822609b167478cad4030e7bf6120fd535bb002207b3fee66768794c0b362f2d40ad64fdf03e0fb0e8a47f2034167aae2ca383c0e", + "result" : "valid" + }, + { + "tcId" : 416, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "38333135313136333833", + "sig" : "3044022071bc399e5643a1d8e2afc317e78a2c43d76b6d87f17a5809a7b6d19f922c2e620220057e7615a2c9033ef0d1a3d3020977002395e196d3b8206c9afecfb98abd52d8", + "result" : "valid" + }, + { + "tcId" : 417, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "333236333136383132", + "sig" : "30450221008f94bcda036e64783935456289aedcb67232932db1ac2e8ad1ca970b14d47a1a022021a71528f9e8fe6067ca74cc0d8b4b48270aad9ade9db44a98c98182a5e8f208", + "result" : "valid" + }, + { + "tcId" : 418, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34303239363837313336", + "sig" : "30450220277a0c4f34b2749fd58f55a0f373430f3c868bb1f485d477102b3e797cea5560022100bccbec7dc1e2740751b7cb8968e7d388e136d7647a29c6845bcf3759f44bf389", + "result" : "valid" + }, + { + "tcId" : 419, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36333230383831313931", + "sig" : "3045022100934762967efc8c97655cb73d7168d1abb5889e55243dc67c1c5517d6298ce2c3022044c32fb9d2b5e6f9c38226538776538a55eb1bdfbac44e3e1229337415645db6", + "result" : "valid" + }, + { + "tcId" : 420, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35323235333930373830", + "sig" : "30450221008f052802126f222ba3ade9cfedf59fc479a120ed8e59366b1be4f3039480004e02203e14e9209be9dc6d00ed76cddca1c2e5b85f112bffd2779f45f246cb60c319a8", + "result" : "valid" + }, + { + "tcId" : 421, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31333439333933363934", + "sig" : "304402204456d6792ff7e4d27517113f309177c26ef3bf6482e131d43f9d8b80e954d61e02204ffbcc50a7a69dfce92a47410f8574f7b0abfc8b4c7f74ac0dc1c1183d393482", + "result" : "valid" + }, + { + "tcId" : 422, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130333937393630373631", + "sig" : "3045022100c0e27a8ad306f4ed4dd77edcefb61a6d8f1a9f6546a9969e794432fcb576cd49022067fdcab3395eebe53dd03b9cadd3eb62d84327de15498b60a60b023fea990436", + "result" : "valid" + }, + { + "tcId" : 423, + "comment" : "Signature generated without truncating the hash", + "flags" : [ + "Untruncatedhash" + ], + "msg" : "313233343030", + "sig" : "30450220504d070e4cf2596e560c1aadc63c573cee0bf8c4d128292c23b47a294c607703022100f181213b28b921af292ea2fbcb8af4a0e14e2c5aa603c45dab7a46f05bbd5d85", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040fbf9d131ff8a037747ac23246c5b0e0ce09a905432d3d75477af2d2993b1e0a4b14e93d4574fc2a553f85eb3c4c0658a1bd7e1cc7f08d47396e76d6d40ed772", + "wx" : "0fbf9d131ff8a037747ac23246c5b0e0ce09a905432d3d75477af2d2993b1e0a", + "wy" : "4b14e93d4574fc2a553f85eb3c4c0658a1bd7e1cc7f08d47396e76d6d40ed772" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040fbf9d131ff8a037747ac23246c5b0e0ce09a905432d3d75477af2d2993b1e0a4b14e93d4574fc2a553f85eb3c4c0658a1bd7e1cc7f08d47396e76d6d40ed772", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAED7+dEx/4oDd0esIyRsWw4M4JqQVD\nLT11R3ry0pk7HgpLFOk9RXT8KlU/hes8TAZYob1+HMfwjUc5bnbW1A7Xcg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 424, + "comment" : "k*G has a large x-coordinate", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "303502104319055358e8617b0c46353d039cdaab022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "valid" + }, + { + "tcId" : 425, + "comment" : "r too large", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000fffffffffffffffffffffffc022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04920945522a364975ffc27bdddd7f01ec26ef8ac48d466a81fbb1d02fc89133e9ce7d01190e815daf1d18e5932ec8a3d83af59c7f66738b6521a9850d794a4ba3", + "wx" : "00920945522a364975ffc27bdddd7f01ec26ef8ac48d466a81fbb1d02fc89133e9", + "wy" : "00ce7d01190e815daf1d18e5932ec8a3d83af59c7f66738b6521a9850d794a4ba3" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004920945522a364975ffc27bdddd7f01ec26ef8ac48d466a81fbb1d02fc89133e9ce7d01190e815daf1d18e5932ec8a3d83af59c7f66738b6521a9850d794a4ba3", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkglFUio2SXX/wnvd3X8B7CbvisSN\nRmqB+7HQL8iRM+nOfQEZDoFdrx0Y5ZMuyKPYOvWcf2Zzi2UhqYUNeUpLow==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 426, + "comment" : "r,s are large", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e0ce6d55dae257d10a06be4fb7333e68475407a401de84ff86a931ac022a4513802ca56c9a1d2f67e8a45703b174f0562dfb7e6a532eb1743b3ceb49f9bea420", + "wx" : "00e0ce6d55dae257d10a06be4fb7333e68475407a401de84ff86a931ac022a4513", + "wy" : "00802ca56c9a1d2f67e8a45703b174f0562dfb7e6a532eb1743b3ceb49f9bea420" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e0ce6d55dae257d10a06be4fb7333e68475407a401de84ff86a931ac022a4513802ca56c9a1d2f67e8a45703b174f0562dfb7e6a532eb1743b3ceb49f9bea420", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE4M5tVdriV9EKBr5PtzM+aEdUB6QB\n3oT/hqkxrAIqRROALKVsmh0vZ+ikVwOxdPBWLft+alMusXQ7POtJ+b6kIA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 427, + "comment" : "r and s^-1 have a large Hamming weight", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100909135bdb6799286170f5ead2de4f6511453fe50914f3df2de54a36383df8dd4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040c5baefb69764c3a55e9d3ef10a76f652ffa697794ab91169878116d058420e3ccd7b9153694151ee2d05048e40fe072d8e0f481af5d3d0a9e8cf39e1ef7e0bb", + "wx" : "0c5baefb69764c3a55e9d3ef10a76f652ffa697794ab91169878116d058420e3", + "wy" : "00ccd7b9153694151ee2d05048e40fe072d8e0f481af5d3d0a9e8cf39e1ef7e0bb" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040c5baefb69764c3a55e9d3ef10a76f652ffa697794ab91169878116d058420e3ccd7b9153694151ee2d05048e40fe072d8e0f481af5d3d0a9e8cf39e1ef7e0bb", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDFuu+2l2TDpV6dPvEKdvZS/6aXeU\nq5EWmHgRbQWEIOPM17kVNpQVHuLQUEjkD+By2OD0ga9dPQqejPOeHvfguw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 428, + "comment" : "r and s^-1 have a large Hamming weight", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022027b4577ca009376f71303fd5dd227dcef5deb773ad5f5a84360644669ca249a5", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041a4cb39a674bf0bec4be1a5b035ae18634f4b681a330c1f91b42366a0a7c75320b3f8018da54a8d0db30f7c2b3f04dc011a4a1c383221e52187632a565e5795c", + "wx" : "1a4cb39a674bf0bec4be1a5b035ae18634f4b681a330c1f91b42366a0a7c7532", + "wy" : "0b3f8018da54a8d0db30f7c2b3f04dc011a4a1c383221e52187632a565e5795c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041a4cb39a674bf0bec4be1a5b035ae18634f4b681a330c1f91b42366a0a7c75320b3f8018da54a8d0db30f7c2b3f04dc011a4a1c383221e52187632a565e5795c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEGkyzmmdL8L7EvhpbA1rhhjT0toGj\nMMH5G0I2agp8dTILP4AY2lSo0Nsw98Kz8E3AEaShw4MiHlIYdjKlZeV5XA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 429, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020101", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041cd72095fd856cf29fafb81c25f7ff24dee34eeaeacc0025d512091b1f1e822b427eb3bbb915209e064bfbe1a1798ff6dac8d0add6d753bff4f128fee7e00f89", + "wx" : "1cd72095fd856cf29fafb81c25f7ff24dee34eeaeacc0025d512091b1f1e822b", + "wy" : "427eb3bbb915209e064bfbe1a1798ff6dac8d0add6d753bff4f128fee7e00f89" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041cd72095fd856cf29fafb81c25f7ff24dee34eeaeacc0025d512091b1f1e822b427eb3bbb915209e064bfbe1a1798ff6dac8d0add6d753bff4f128fee7e00f89", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEHNcglf2FbPKfr7gcJff/JN7jTurq\nzAAl1RIJGx8egitCfrO7uRUgngZL++GheY/22sjQrdbXU7/08Sj+5+APiQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 430, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020103", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04697cd5856c8c347fdfbca4c2cb2fc1be12f1611f190333b80a5cf4e0f7d48dab5d08740936bbc46c90b1da916d5ef39c3d9fb9092f579a43d911472022a7fa90", + "wx" : "697cd5856c8c347fdfbca4c2cb2fc1be12f1611f190333b80a5cf4e0f7d48dab", + "wy" : "5d08740936bbc46c90b1da916d5ef39c3d9fb9092f579a43d911472022a7fa90" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004697cd5856c8c347fdfbca4c2cb2fc1be12f1611f190333b80a5cf4e0f7d48dab5d08740936bbc46c90b1da916d5ef39c3d9fb9092f579a43d911472022a7fa90", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaXzVhWyMNH/fvKTCyy/BvhLxYR8Z\nAzO4Clz04PfUjatdCHQJNrvEbJCx2pFtXvOcPZ+5CS9XmkPZEUcgIqf6kA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 431, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020105", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0469d31ff52dbc0935508755cd48cf3f30f0ea78fb670048983be0ebacf4de1076773c9dce9aa24b783d8688d63547dc987d4650f20c1179e6ae5d4f14f6d55cc1", + "wx" : "69d31ff52dbc0935508755cd48cf3f30f0ea78fb670048983be0ebacf4de1076", + "wy" : "773c9dce9aa24b783d8688d63547dc987d4650f20c1179e6ae5d4f14f6d55cc1" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000469d31ff52dbc0935508755cd48cf3f30f0ea78fb670048983be0ebacf4de1076773c9dce9aa24b783d8688d63547dc987d4650f20c1179e6ae5d4f14f6d55cc1", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEadMf9S28CTVQh1XNSM8/MPDqePtn\nAEiYO+DrrPTeEHZ3PJ3OmqJLeD2GiNY1R9yYfUZQ8gwReeauXU8U9tVcwQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 432, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020106", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048742a58dac696325bb9285ca9fefbd9811456e55b5a7c37b87cb6009251a475f02dc5fd4cd5b5fab165e69663c2a0e76745303131eab5962594de66d5f75a25e", + "wx" : "008742a58dac696325bb9285ca9fefbd9811456e55b5a7c37b87cb6009251a475f", + "wy" : "02dc5fd4cd5b5fab165e69663c2a0e76745303131eab5962594de66d5f75a25e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048742a58dac696325bb9285ca9fefbd9811456e55b5a7c37b87cb6009251a475f02dc5fd4cd5b5fab165e69663c2a0e76745303131eab5962594de66d5f75a25e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEh0KljaxpYyW7koXKn++9mBFFblW1\np8N7h8tgCSUaR18C3F/UzVtfqxZeaWY8Kg52dFMDEx6rWWJZTeZtX3WiXg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 433, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020101", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040ae130e90dba4a6a03a5b1bae96bd53e43170751a19311d251d06c084723c79c0f76151d6ded09a6ad33cbe1ea098adf92db0d7a793020a7f962b0b0bd9e013e", + "wx" : "0ae130e90dba4a6a03a5b1bae96bd53e43170751a19311d251d06c084723c79c", + "wy" : "0f76151d6ded09a6ad33cbe1ea098adf92db0d7a793020a7f962b0b0bd9e013e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040ae130e90dba4a6a03a5b1bae96bd53e43170751a19311d251d06c084723c79c0f76151d6ded09a6ad33cbe1ea098adf92db0d7a793020a7f962b0b0bd9e013e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECuEw6Q26SmoDpbG66WvVPkMXB1Gh\nkxHSUdBsCEcjx5wPdhUdbe0Jpq0zy+HqCYrfktsNenkwIKf5YrCwvZ4BPg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 434, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020103", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0407c0272add144c4b89fe4e96e3bfd2ab765121c8485221bce3b5e4090419a0c7c7899aba984d2fdf78f053c212476e7ec0b38a5ad389ec51d459bc96eebed1ba", + "wx" : "07c0272add144c4b89fe4e96e3bfd2ab765121c8485221bce3b5e4090419a0c7", + "wy" : "00c7899aba984d2fdf78f053c212476e7ec0b38a5ad389ec51d459bc96eebed1ba" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000407c0272add144c4b89fe4e96e3bfd2ab765121c8485221bce3b5e4090419a0c7c7899aba984d2fdf78f053c212476e7ec0b38a5ad389ec51d459bc96eebed1ba", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEB8AnKt0UTEuJ/k6W47/Sq3ZRIchI\nUiG847XkCQQZoMfHiZq6mE0v33jwU8ISR25+wLOKWtOJ7FHUWbyW7r7Rug==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 435, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020106", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04c26d838237a552c8b9d00f95cfd30849330fa4e50857b148f01317913423ad9fcd9308496fc1a86bc21b3cd90a6472a8164690ab7728b0545d8a9aecf07df5fa", + "wx" : "00c26d838237a552c8b9d00f95cfd30849330fa4e50857b148f01317913423ad9f", + "wy" : "00cd9308496fc1a86bc21b3cd90a6472a8164690ab7728b0545d8a9aecf07df5fa" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c26d838237a552c8b9d00f95cfd30849330fa4e50857b148f01317913423ad9fcd9308496fc1a86bc21b3cd90a6472a8164690ab7728b0545d8a9aecf07df5fa", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwm2DgjelUsi50A+Vz9MISTMPpOUI\nV7FI8BMXkTQjrZ/NkwhJb8Goa8IbPNkKZHKoFkaQq3cosFRdiprs8H31+g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 436, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020107", + "result" : "valid" + }, + { + "tcId" : 437, + "comment" : "r is larger than n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632557020107", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0441d762efd59a622d2b8a6eb6260d4d5a02ec69bf91fce3b0d3a4b00014ab26c90646963fd7309a420cfc400580c3e16fc4e39f51f937843158c2a6c4f24ef27c", + "wx" : "41d762efd59a622d2b8a6eb6260d4d5a02ec69bf91fce3b0d3a4b00014ab26c9", + "wy" : "0646963fd7309a420cfc400580c3e16fc4e39f51f937843158c2a6c4f24ef27c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000441d762efd59a622d2b8a6eb6260d4d5a02ec69bf91fce3b0d3a4b00014ab26c90646963fd7309a420cfc400580c3e16fc4e39f51f937843158c2a6c4f24ef27c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQddi79WaYi0rim62Jg1NWgLsab+R\n/OOw06SwABSrJskGRpY/1zCaQgz8QAWAw+FvxOOfUfk3hDFYwqbE8k7yfA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 438, + "comment" : "s is larger than n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3026020106022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc75fbd8", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042f5c464f48423a87806e88e2e6b4e6f947eea1a5f2c0717897406d97dd3c286561b62e969abf04b840be9587a2a16c0a83ff3bf6812b7257c106a26be2e71d25", + "wx" : "2f5c464f48423a87806e88e2e6b4e6f947eea1a5f2c0717897406d97dd3c2865", + "wy" : "61b62e969abf04b840be9587a2a16c0a83ff3bf6812b7257c106a26be2e71d25" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042f5c464f48423a87806e88e2e6b4e6f947eea1a5f2c0717897406d97dd3c286561b62e969abf04b840be9587a2a16c0a83ff3bf6812b7257c106a26be2e71d25", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEL1xGT0hCOoeAboji5rTm+UfuoaXy\nwHF4l0Btl908KGVhti6Wmr8EuEC+lYeioWwKg/879oErclfBBqJr4ucdJQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 439, + "comment" : "small r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3027020201000221008f1e3c7862c58b16bb76eddbb76eddbb516af4f63f2d74d76e0d28c9bb75ea88", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0427527d9ba351f69285cbd9ba144b9e7c6c957d418c8bf63925fb934ab587d385216a626307e247c3d5bcf489b52ad4c1987973d7d4cc90fb5b1f488d80134656", + "wx" : "27527d9ba351f69285cbd9ba144b9e7c6c957d418c8bf63925fb934ab587d385", + "wy" : "216a626307e247c3d5bcf489b52ad4c1987973d7d4cc90fb5b1f488d80134656" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000427527d9ba351f69285cbd9ba144b9e7c6c957d418c8bf63925fb934ab587d385216a626307e247c3d5bcf489b52ad4c1987973d7d4cc90fb5b1f488d80134656", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJ1J9m6NR9pKFy9m6FEuefGyVfUGM\ni/Y5JfuTSrWH04UhamJjB+JHw9W89Im1KtTBmHlz19TMkPtbH0iNgBNGVg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 440, + "comment" : "smallish r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302c02072d9b4d347952d6022100ef3043e7329581dbb3974497710ab11505ee1c87ff907beebadd195a0ffe6d7a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041bfc106d79112f08439a4ffa4e06261bbab3031ff7ed32568172caaeabae2f90b894ecc8922ace776ed6d1526b7771f2cc43b0e84bac400541619e142319059f", + "wx" : "1bfc106d79112f08439a4ffa4e06261bbab3031ff7ed32568172caaeabae2f90", + "wy" : "00b894ecc8922ace776ed6d1526b7771f2cc43b0e84bac400541619e142319059f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041bfc106d79112f08439a4ffa4e06261bbab3031ff7ed32568172caaeabae2f90b894ecc8922ace776ed6d1526b7771f2cc43b0e84bac400541619e142319059f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEG/wQbXkRLwhDmk/6TgYmG7qzAx/3\n7TJWgXLKrquuL5C4lOzIkirOd27W0VJrd3HyzEOw6EusQAVBYZ4UIxkFnw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 441, + "comment" : "100-bit r and small s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3032020d1033e67e37b32b445580bf4eff0221008b748b74000000008b748b748b748b7466e769ad4a16d3dcd87129b8e91d1b4d", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0471e13191229197eefe9224be11217878635056fd8e558b74121036043cb7501709a09bc004ffc98a4051a3fb9798cb9fd5c17919ecab9ff8459a7d561f3058b2", + "wx" : "71e13191229197eefe9224be11217878635056fd8e558b74121036043cb75017", + "wy" : "09a09bc004ffc98a4051a3fb9798cb9fd5c17919ecab9ff8459a7d561f3058b2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000471e13191229197eefe9224be11217878635056fd8e558b74121036043cb7501709a09bc004ffc98a4051a3fb9798cb9fd5c17919ecab9ff8459a7d561f3058b2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEceExkSKRl+7+kiS+ESF4eGNQVv2O\nVYt0EhA2BDy3UBcJoJvABP/JikBRo/uXmMuf1cF5Geyrn/hFmn1WHzBYsg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 442, + "comment" : "small r and 100 bit s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302702020100022100ef9f6ba4d97c09d03178fa20b4aaad83be3cf9cb824a879fec3270fc4b81ef5b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0415b8867217bf4d531a5618509d9cddc6a3ff4fcc55cc94df82d9952b42ae564d7234d5c43238e591501c1fada39a60057fefb46b588d47cbedb529def080fb83", + "wx" : "15b8867217bf4d531a5618509d9cddc6a3ff4fcc55cc94df82d9952b42ae564d", + "wy" : "7234d5c43238e591501c1fada39a60057fefb46b588d47cbedb529def080fb83" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000415b8867217bf4d531a5618509d9cddc6a3ff4fcc55cc94df82d9952b42ae564d7234d5c43238e591501c1fada39a60057fefb46b588d47cbedb529def080fb83", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFbiGche/TVMaVhhQnZzdxqP/T8xV\nzJTfgtmVK0KuVk1yNNXEMjjlkVAcH62jmmAFf++0a1iNR8vttSne8ID7gw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 443, + "comment" : "100-bit r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3032020d062522bbd3ecbe7c39e93e7c25022100ef9f6ba4d97c09d03178fa20b4aaad83be3cf9cb824a879fec3270fc4b81ef5b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e7c1fcc775b8d46770261c413291bc9d913c7785779870eb475f7437da3ee1a016ad8986f7ef63d4237a9c802e5e49471d248e4df64283e77608ee191ec61f3f", + "wx" : "00e7c1fcc775b8d46770261c413291bc9d913c7785779870eb475f7437da3ee1a0", + "wy" : "16ad8986f7ef63d4237a9c802e5e49471d248e4df64283e77608ee191ec61f3f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e7c1fcc775b8d46770261c413291bc9d913c7785779870eb475f7437da3ee1a016ad8986f7ef63d4237a9c802e5e49471d248e4df64283e77608ee191ec61f3f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE58H8x3W41GdwJhxBMpG8nZE8d4V3\nmHDrR190N9o+4aAWrYmG9+9j1CN6nIAuXklHHSSOTfZCg+d2CO4ZHsYfPw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 444, + "comment" : "r and s^-1 are close to n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3045022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6324d50220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e4de4956e823bcd5e6869e25ce155de0ac260bbd1eef4d005f88c9c4d025d2a16eaa99ce6e5f4c68b785594b979f04933c31a97e1362862dc5b86cbf485f4b1d", + "wx" : "00e4de4956e823bcd5e6869e25ce155de0ac260bbd1eef4d005f88c9c4d025d2a1", + "wy" : "6eaa99ce6e5f4c68b785594b979f04933c31a97e1362862dc5b86cbf485f4b1d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e4de4956e823bcd5e6869e25ce155de0ac260bbd1eef4d005f88c9c4d025d2a16eaa99ce6e5f4c68b785594b979f04933c31a97e1362862dc5b86cbf485f4b1d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE5N5JVugjvNXmhp4lzhVd4KwmC70e\n700AX4jJxNAl0qFuqpnObl9MaLeFWUuXnwSTPDGpfhNihi3FuGy/SF9LHQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 445, + "comment" : "r and s are 64-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30160209009c44febf31c3594f020900839ed28247c2b06b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048ec4f82d4d7a728053c1aaa73224cefa565c6f458050c25501ca4d7f60bb1f17085fdb2d7afbb08e0a439e04e8a8a2a702953d731175971787d4c84e378ea9b7", + "wx" : "008ec4f82d4d7a728053c1aaa73224cefa565c6f458050c25501ca4d7f60bb1f17", + "wy" : "085fdb2d7afbb08e0a439e04e8a8a2a702953d731175971787d4c84e378ea9b7" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048ec4f82d4d7a728053c1aaa73224cefa565c6f458050c25501ca4d7f60bb1f17085fdb2d7afbb08e0a439e04e8a8a2a702953d731175971787d4c84e378ea9b7", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEjsT4LU16coBTwaqnMiTO+lZcb0WA\nUMJVAcpNf2C7HxcIX9stevuwjgpDngToqKKnApU9cxF1lxeH1MhON46ptw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 446, + "comment" : "r and s are 100-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "301e020d09df8b682430beef6f5fd7c7cd020d0fd0a62e13778f4222a0d61c8a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b81824d27d30da7d0d71cf9a7a89f4925688d4b414be8fa72cb04d91323e51db0aa7471634de339dd3f9011e088af81ac569fe4473a04597f3ca26124753b53f", + "wx" : "00b81824d27d30da7d0d71cf9a7a89f4925688d4b414be8fa72cb04d91323e51db", + "wy" : "0aa7471634de339dd3f9011e088af81ac569fe4473a04597f3ca26124753b53f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b81824d27d30da7d0d71cf9a7a89f4925688d4b414be8fa72cb04d91323e51db0aa7471634de339dd3f9011e088af81ac569fe4473a04597f3ca26124753b53f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEuBgk0n0w2n0Ncc+aeon0klaI1LQU\nvo+nLLBNkTI+UdsKp0cWNN4zndP5AR4IivgaxWn+RHOgRZfzyiYSR1O1Pw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 447, + "comment" : "r and s are 128-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30260211008a598e563a89f526c32ebec8de26367c02110084f633e2042630e99dd0f1e16f7a04bf", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048e9bd1999133b7ac90cc08926645ae11edd3e636bf66411314f0abd6e381ac02543e1ab4ed25714e4d5f62908730bf3a45cb667afca5157eeafa075646cafceb", + "wx" : "008e9bd1999133b7ac90cc08926645ae11edd3e636bf66411314f0abd6e381ac02", + "wy" : "543e1ab4ed25714e4d5f62908730bf3a45cb667afca5157eeafa075646cafceb" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048e9bd1999133b7ac90cc08926645ae11edd3e636bf66411314f0abd6e381ac02543e1ab4ed25714e4d5f62908730bf3a45cb667afca5157eeafa075646cafceb", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEjpvRmZEzt6yQzAiSZkWuEe3T5ja/\nZkETFPCr1uOBrAJUPhq07SVxTk1fYpCHML86RctmevylFX7q+gdWRsr86w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 448, + "comment" : "r and s are 160-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302e021500aa6eeb5823f7fa31b466bb473797f0d0314c0bdf021500e2977c479e6d25703cebbc6bd561938cc9d1bfb9", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04cfac11bd4b7aa0a29309767eddd337d302f1f42ccab215171f9622992a671e4a1451102ad100a24e6fb5cb130c69de2a61fa50f2d07a099d73ae96f971593588", + "wx" : "00cfac11bd4b7aa0a29309767eddd337d302f1f42ccab215171f9622992a671e4a", + "wy" : "1451102ad100a24e6fb5cb130c69de2a61fa50f2d07a099d73ae96f971593588" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cfac11bd4b7aa0a29309767eddd337d302f1f42ccab215171f9622992a671e4a1451102ad100a24e6fb5cb130c69de2a61fa50f2d07a099d73ae96f971593588", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEz6wRvUt6oKKTCXZ+3dM30wLx9CzK\nshUXH5YimSpnHkoUURAq0QCiTm+1yxMMad4qYfpQ8tB6CZ1zrpb5cVk1iA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 449, + "comment" : "s == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70020101", + "result" : "valid" + }, + { + "tcId" : 450, + "comment" : "s == 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70020100", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0417edf3d93090cf77f4d2942c655d693a2fe28c4db390d7298ea8abc1710057e5dc5dbdaabab0ffbbda80ee961bac9ab1596265e6d6416c97253006f1d4a4a4ee", + "wx" : "17edf3d93090cf77f4d2942c655d693a2fe28c4db390d7298ea8abc1710057e5", + "wy" : "00dc5dbdaabab0ffbbda80ee961bac9ab1596265e6d6416c97253006f1d4a4a4ee" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000417edf3d93090cf77f4d2942c655d693a2fe28c4db390d7298ea8abc1710057e5dc5dbdaabab0ffbbda80ee961bac9ab1596265e6d6416c97253006f1d4a4a4ee", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEF+3z2TCQz3f00pQsZV1pOi/ijE2z\nkNcpjqirwXEAV+XcXb2qurD/u9qA7pYbrJqxWWJl5tZBbJclMAbx1KSk7g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 451, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022002f676969f451a8ccafa4c4f09791810e6d632dbd60b1d5540f3284fbe1889b0", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04027da56bed7d56a9ac595245887992d05d6d1efc0a98298657aa40a3f603b91c108b18bcfff9c382bf6ae4f924607c3db0f39a0baf2e5319b894e7bbabb1d1b4", + "wx" : "027da56bed7d56a9ac595245887992d05d6d1efc0a98298657aa40a3f603b91c", + "wy" : "108b18bcfff9c382bf6ae4f924607c3db0f39a0baf2e5319b894e7bbabb1d1b4" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004027da56bed7d56a9ac595245887992d05d6d1efc0a98298657aa40a3f603b91c108b18bcfff9c382bf6ae4f924607c3db0f39a0baf2e5319b894e7bbabb1d1b4", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAn2la+19VqmsWVJFiHmS0F1tHvwK\nmCmGV6pAo/YDuRwQixi8//nDgr9q5PkkYHw9sPOaC68uUxm4lOe7q7HRtA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 452, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002204e260962e33362ef0046126d2d5a4edc6947ab20e19b8ec19cf79e5908b6e628", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a5afda4dcf49a010c4e0afb54745926d69d4b53e6b255ab43f18c8fe7449c8de41f9eabf20bd50fc7592f772684ce221168c41ae7e47731dc1259f46fd0a7f3f", + "wx" : "00a5afda4dcf49a010c4e0afb54745926d69d4b53e6b255ab43f18c8fe7449c8de", + "wy" : "41f9eabf20bd50fc7592f772684ce221168c41ae7e47731dc1259f46fd0a7f3f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a5afda4dcf49a010c4e0afb54745926d69d4b53e6b255ab43f18c8fe7449c8de41f9eabf20bd50fc7592f772684ce221168c41ae7e47731dc1259f46fd0a7f3f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEpa/aTc9JoBDE4K+1R0WSbWnUtT5r\nJVq0PxjI/nRJyN5B+eq/IL1Q/HWS93JoTOIhFoxBrn5Hcx3BJZ9G/Qp/Pw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 453, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220077ed0d8f20f697d8fc591ac64dd5219c7932122b4f9b9ec6441e44a0092cf21", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "047526afc0c4c1be20c6bc819fa2ec37509b4c8d311d57ef07effc374d73766f2c1af54f9434280547ad854c0f96139fd3437b22fa6eb6676849d659055fea2149", + "wx" : "7526afc0c4c1be20c6bc819fa2ec37509b4c8d311d57ef07effc374d73766f2c", + "wy" : "1af54f9434280547ad854c0f96139fd3437b22fa6eb6676849d659055fea2149" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200047526afc0c4c1be20c6bc819fa2ec37509b4c8d311d57ef07effc374d73766f2c1af54f9434280547ad854c0f96139fd3437b22fa6eb6676849d659055fea2149", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEdSavwMTBviDGvIGfouw3UJtMjTEd\nV+8H7/w3TXN2bywa9U+UNCgFR62FTA+WE5/TQ3si+m62Z2hJ1lkFX+ohSQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 454, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002203e0292a67e181c6c0105ee35e956e78e9bdd033c6e71ae57884039a245e4175f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ce328e614f57f32b46c888cb3302c404dfc831ecc1dfcd3a3dfec7ba0819fe287df4f1de4f31d3ccb6d2e83bfa8113d75537ba6e37177e82384c4d16f8a6ed5b", + "wx" : "00ce328e614f57f32b46c888cb3302c404dfc831ecc1dfcd3a3dfec7ba0819fe28", + "wy" : "7df4f1de4f31d3ccb6d2e83bfa8113d75537ba6e37177e82384c4d16f8a6ed5b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ce328e614f57f32b46c888cb3302c404dfc831ecc1dfcd3a3dfec7ba0819fe287df4f1de4f31d3ccb6d2e83bfa8113d75537ba6e37177e82384c4d16f8a6ed5b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzjKOYU9X8ytGyIjLMwLEBN/IMezB\n3806Pf7HuggZ/ih99PHeTzHTzLbS6Dv6gRPXVTe6bjcXfoI4TE0W+KbtWw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 455, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022013d22b06d6b8f5d97e0c64962b4a3bae30f668ca6217ef5b35d799f159e23ebe", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "049da871b379d5ca4252d7683a9087b85fd92c910c29a5e6acffe5baf18b2c6786db7f1ba6367b62556b683e2c396813587f299b459ed98f2fe34c9fc1e29620ce", + "wx" : "009da871b379d5ca4252d7683a9087b85fd92c910c29a5e6acffe5baf18b2c6786", + "wy" : "00db7f1ba6367b62556b683e2c396813587f299b459ed98f2fe34c9fc1e29620ce" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200049da871b379d5ca4252d7683a9087b85fd92c910c29a5e6acffe5baf18b2c6786db7f1ba6367b62556b683e2c396813587f299b459ed98f2fe34c9fc1e29620ce", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnahxs3nVykJS12g6kIe4X9kskQwp\npeas/+W68YssZ4bbfxumNntiVWtoPiw5aBNYfymbRZ7Zjy/jTJ/B4pYgzg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 456, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002204523ce342e4994bb8968bf6613f60c06c86111f15a3a389309e72cd447d5dd99", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f5f796c6fec37a6e7bd968aac5fdcb444318b2dd93af278f766f730d1eb6972dfff606e22879e2e18de131484310e7f81396bd6e5eb9a92dad82f174f6becadc", + "wx" : "00f5f796c6fec37a6e7bd968aac5fdcb444318b2dd93af278f766f730d1eb6972d", + "wy" : "00fff606e22879e2e18de131484310e7f81396bd6e5eb9a92dad82f174f6becadc" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f5f796c6fec37a6e7bd968aac5fdcb444318b2dd93af278f766f730d1eb6972dfff606e22879e2e18de131484310e7f81396bd6e5eb9a92dad82f174f6becadc", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9feWxv7Dem572Wiqxf3LREMYst2T\nryePdm9zDR62ly3/9gbiKHni4Y3hMUhDEOf4E5a9bl65qS2tgvF09r7K3A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 457, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022037d765be3c9c78189ad30edb5097a4db670de11686d01420e37039d4677f4809", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040f9e25bfb59835d1441a0d620a196f2b7bf7dfa44acec89bd44052b49480bfe468d8420f3fc3812fba033a65e2d976ad168a7bfd7d31fd987bd57caaa2715596", + "wx" : "0f9e25bfb59835d1441a0d620a196f2b7bf7dfa44acec89bd44052b49480bfe4", + "wy" : "68d8420f3fc3812fba033a65e2d976ad168a7bfd7d31fd987bd57caaa2715596" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040f9e25bfb59835d1441a0d620a196f2b7bf7dfa44acec89bd44052b49480bfe468d8420f3fc3812fba033a65e2d976ad168a7bfd7d31fd987bd57caaa2715596", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAED54lv7WYNdFEGg1iChlvK3v336RK\nzsib1EBStJSAv+Ro2EIPP8OBL7oDOmXi2XatFop7/X0x/Zh71XyqonFVlg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 458, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022044237823b54e0c74c2bf5f759d9ac5f8cb897d537ffa92effd4f0bb6c9acd860", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048e18d19b8a0b4b158303761e77fe9e16f48871b1545ea18e87e0745e860b0ad8812ec55ed5b88338b00f178ea435b9f07540253d8e6b0f61d1f632dc76e36290", + "wx" : "008e18d19b8a0b4b158303761e77fe9e16f48871b1545ea18e87e0745e860b0ad8", + "wy" : "00812ec55ed5b88338b00f178ea435b9f07540253d8e6b0f61d1f632dc76e36290" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048e18d19b8a0b4b158303761e77fe9e16f48871b1545ea18e87e0745e860b0ad8812ec55ed5b88338b00f178ea435b9f07540253d8e6b0f61d1f632dc76e36290", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEjhjRm4oLSxWDA3Yed/6eFvSIcbFU\nXqGOh+B0XoYLCtiBLsVe1biDOLAPF46kNbnwdUAlPY5rD2HR9jLcduNikA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 459, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220266d30a485385906054ca86d46f5f2b17e7f4646a3092092ad92877126538111", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bb8cdc50326f91f60c2d92189119fb4fa71822e42b32f418321c4e18acab753c0987643b6fc34b51e606270a5f48a116e33a0154633f8b48bcf416636ffe3e1d", + "wx" : "00bb8cdc50326f91f60c2d92189119fb4fa71822e42b32f418321c4e18acab753c", + "wy" : "0987643b6fc34b51e606270a5f48a116e33a0154633f8b48bcf416636ffe3e1d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bb8cdc50326f91f60c2d92189119fb4fa71822e42b32f418321c4e18acab753c0987643b6fc34b51e606270a5f48a116e33a0154633f8b48bcf416636ffe3e1d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEu4zcUDJvkfYMLZIYkRn7T6cYIuQr\nMvQYMhxOGKyrdTwJh2Q7b8NLUeYGJwpfSKEW4zoBVGM/i0i89BZjb/4+HQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 460, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220538c7b3798e84d0ce90340165806348971ed44db8f0c674f5f215968390f92ee", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "047bb31c1eb5db2b2e852ffdff6cf1922874019fd4a08fb11a7ad7a7b2d2b998f6b00332ed69bc1ee3e9d014a7828e016ad3d7fbcc9bd8c5605ee35ee4c155c9a0", + "wx" : "7bb31c1eb5db2b2e852ffdff6cf1922874019fd4a08fb11a7ad7a7b2d2b998f6", + "wy" : "00b00332ed69bc1ee3e9d014a7828e016ad3d7fbcc9bd8c5605ee35ee4c155c9a0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200047bb31c1eb5db2b2e852ffdff6cf1922874019fd4a08fb11a7ad7a7b2d2b998f6b00332ed69bc1ee3e9d014a7828e016ad3d7fbcc9bd8c5605ee35ee4c155c9a0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEe7McHrXbKy6FL/3/bPGSKHQBn9Sg\nj7EaetenstK5mPawAzLtabwe4+nQFKeCjgFq09f7zJvYxWBe417kwVXJoA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 461, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206fef0ef15d1688e15e704c4e6bb8bb7f40d52d3af5c661bb78c4ed9b408699b3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04c0d73ae13cd4a0d7f5e6c7e0d04a80e777610dd10dce997b29f30b56c3a8cc48a7843569178892b75825807052423a8f069e3b19b49ef16ad0f9755365bd438f", + "wx" : "00c0d73ae13cd4a0d7f5e6c7e0d04a80e777610dd10dce997b29f30b56c3a8cc48", + "wy" : "00a7843569178892b75825807052423a8f069e3b19b49ef16ad0f9755365bd438f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c0d73ae13cd4a0d7f5e6c7e0d04a80e777610dd10dce997b29f30b56c3a8cc48a7843569178892b75825807052423a8f069e3b19b49ef16ad0f9755365bd438f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwNc64TzUoNf15sfg0EqA53dhDdEN\nzpl7KfMLVsOozEinhDVpF4iSt1glgHBSQjqPBp47GbSe8WrQ+XVTZb1Djw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 462, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206f44275e9aeb1331efcb8d58f35c0252791427e403ad84daad51d247cc2a64c6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045f5846c6688b584e2ac1a1ce618353b7f02d3238d6b90e6547031670fbc7a60b48bbe517b630ee4cbd0c1fe2eaff0b23e2710c9320c0024198bb31b4347d2034", + "wx" : "5f5846c6688b584e2ac1a1ce618353b7f02d3238d6b90e6547031670fbc7a60b", + "wy" : "48bbe517b630ee4cbd0c1fe2eaff0b23e2710c9320c0024198bb31b4347d2034" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045f5846c6688b584e2ac1a1ce618353b7f02d3238d6b90e6547031670fbc7a60b48bbe517b630ee4cbd0c1fe2eaff0b23e2710c9320c0024198bb31b4347d2034", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEX1hGxmiLWE4qwaHOYYNTt/AtMjjW\nuQ5lRwMWcPvHpgtIu+UXtjDuTL0MH+Lq/wsj4nEMkyDAAkGYuzG0NH0gNA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 463, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022021323755b103d2f9da6ab83eccab9ad8598bcf625652f10e7a3eeee3c3945fb3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040c51eb799d377bacf2bd1ffafe88086129b8079cacccce3f61fb69da0353877c9c656a31f5008a18b32f7bdd7f7697fa4dbef6cf8f02d06b24d08a0b6bab0dfa", + "wx" : "0c51eb799d377bacf2bd1ffafe88086129b8079cacccce3f61fb69da0353877c", + "wy" : "009c656a31f5008a18b32f7bdd7f7697fa4dbef6cf8f02d06b24d08a0b6bab0dfa" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040c51eb799d377bacf2bd1ffafe88086129b8079cacccce3f61fb69da0353877c9c656a31f5008a18b32f7bdd7f7697fa4dbef6cf8f02d06b24d08a0b6bab0dfa", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDFHreZ03e6zyvR/6/ogIYSm4B5ys\nzM4/Yftp2gNTh3ycZWox9QCKGLMve91/dpf6Tb72z48C0Gsk0IoLa6sN+g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 464, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206c50acfe76de1289e7a5edb240f1c2a7879db6873d5d931f3c6ac467a6eac171", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f90cc708939129c66d61eef220921d197600f2c5dafe53a88b673d3ba5cb6efcb12a2944e5344b50a0781797f874e45c44766c91cce89a2fc000b9fee2ba7c21", + "wx" : "00f90cc708939129c66d61eef220921d197600f2c5dafe53a88b673d3ba5cb6efc", + "wy" : "00b12a2944e5344b50a0781797f874e45c44766c91cce89a2fc000b9fee2ba7c21" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f90cc708939129c66d61eef220921d197600f2c5dafe53a88b673d3ba5cb6efcb12a2944e5344b50a0781797f874e45c44766c91cce89a2fc000b9fee2ba7c21", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE+QzHCJORKcZtYe7yIJIdGXYA8sXa\n/lOoi2c9O6XLbvyxKilE5TRLUKB4F5f4dORcRHZskczomi/AALn+4rp8IQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 465, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220755b7fffb0b17ad57dca50fcefb7fe297b029df25e5ccb5069e8e70c2742c2a6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ca99e8cacb96b9b73a7ecf478617269f08971c307aba958692381696c244443b5c5df1f740db3016b0ad298997131cea685b2ba405c3b0f722c6992bdaa6fd3a", + "wx" : "00ca99e8cacb96b9b73a7ecf478617269f08971c307aba958692381696c244443b", + "wy" : "5c5df1f740db3016b0ad298997131cea685b2ba405c3b0f722c6992bdaa6fd3a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ca99e8cacb96b9b73a7ecf478617269f08971c307aba958692381696c244443b5c5df1f740db3016b0ad298997131cea685b2ba405c3b0f722c6992bdaa6fd3a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEypnoysuWubc6fs9HhhcmnwiXHDB6\nupWGkjgWlsJERDtcXfH3QNswFrCtKYmXExzqaFsrpAXDsPcixpkr2qb9Og==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 466, + "comment" : "point at infinity during verify", + "flags" : [ + "PointDuplication", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a80220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043c31be015178a9c3d3cae9103bf25bc11a709316d06ab46c01f884a8eb33da2e91f32a1352712508642c4774ea67049175161cb2bafd5524b813274b140f8e99", + "wx" : "3c31be015178a9c3d3cae9103bf25bc11a709316d06ab46c01f884a8eb33da2e", + "wy" : "0091f32a1352712508642c4774ea67049175161cb2bafd5524b813274b140f8e99" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043c31be015178a9c3d3cae9103bf25bc11a709316d06ab46c01f884a8eb33da2e91f32a1352712508642c4774ea67049175161cb2bafd5524b813274b140f8e99", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPDG+AVF4qcPTyukQO/JbwRpwkxbQ\narRsAfiEqOsz2i6R8yoTUnElCGQsR3TqZwSRdRYcsrr9VSS4EydLFA+OmQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 467, + "comment" : "edge case for signature malleability", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a902207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a8", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04355d9c3f97a282ac17f7bc98373f271d6a2bc02eb964f13c1e2d7debff4a02fd63282e78fb9b88f81413bcf95f16982d9f50e7f94a5d28685b41da997201db5e", + "wx" : "355d9c3f97a282ac17f7bc98373f271d6a2bc02eb964f13c1e2d7debff4a02fd", + "wy" : "63282e78fb9b88f81413bcf95f16982d9f50e7f94a5d28685b41da997201db5e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004355d9c3f97a282ac17f7bc98373f271d6a2bc02eb964f13c1e2d7debff4a02fd63282e78fb9b88f81413bcf95f16982d9f50e7f94a5d28685b41da997201db5e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENV2cP5eigqwX97yYNz8nHWorwC65\nZPE8Hi196/9KAv1jKC54+5uI+BQTvPlfFpgtn1Dn+UpdKGhbQdqZcgHbXg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 468, + "comment" : "edge case for signature malleability", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a902207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a9", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041c959964cabaa5ce966b95acda1c5264847a780426c878d716d73ae6621d3084d3fedfc4f9c3b8cc8bc6539b821ad208ec08d5737aaaf1801d666ddc37e54faf", + "wx" : "1c959964cabaa5ce966b95acda1c5264847a780426c878d716d73ae6621d3084", + "wy" : "00d3fedfc4f9c3b8cc8bc6539b821ad208ec08d5737aaaf1801d666ddc37e54faf" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041c959964cabaa5ce966b95acda1c5264847a780426c878d716d73ae6621d3084d3fedfc4f9c3b8cc8bc6539b821ad208ec08d5737aaaf1801d666ddc37e54faf", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEHJWZZMq6pc6Wa5Ws2hxSZIR6eAQm\nyHjXFtc65mIdMITT/t/E+cO4zIvGU5uCGtII7AjVc3qq8YAdZm3cN+VPrw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 469, + "comment" : "u1 == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220342dae751a63a3ca8189cf342b3b34eaaa2565e2c7e26121c1bfd5435447f1c3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "049842a82a83932d5a44daab14afb79968dd24d9ffc58e638586a90b0f25b521dd38b2c05c8d548bcf5ab2a906e2f3fbdde7f0b9bbdecb852297d55ae34257f8f3", + "wx" : "009842a82a83932d5a44daab14afb79968dd24d9ffc58e638586a90b0f25b521dd", + "wy" : "38b2c05c8d548bcf5ab2a906e2f3fbdde7f0b9bbdecb852297d55ae34257f8f3" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200049842a82a83932d5a44daab14afb79968dd24d9ffc58e638586a90b0f25b521dd38b2c05c8d548bcf5ab2a906e2f3fbdde7f0b9bbdecb852297d55ae34257f8f3", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmEKoKoOTLVpE2qsUr7eZaN0k2f/F\njmOFhqkLDyW1Id04ssBcjVSLz1qyqQbi8/vd5/C5u97LhSKX1VrjQlf48w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 470, + "comment" : "u1 == n - 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30450220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022100cbd25189e59c5c367e7630cbd4c4cb1512c194cadf353d6331f9f57fa81b338e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04987a839ec570964d3a1bfc6a0334e7328c1624677c66b8fef3a5e64d1178ddae5577dfcd0fe00da9e1d8bb8bbd952aaa5bc10ecb14cae4e3f5e28c506bbc3a21", + "wx" : "00987a839ec570964d3a1bfc6a0334e7328c1624677c66b8fef3a5e64d1178ddae", + "wy" : "5577dfcd0fe00da9e1d8bb8bbd952aaa5bc10ecb14cae4e3f5e28c506bbc3a21" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004987a839ec570964d3a1bfc6a0334e7328c1624677c66b8fef3a5e64d1178ddae5577dfcd0fe00da9e1d8bb8bbd952aaa5bc10ecb14cae4e3f5e28c506bbc3a21", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmHqDnsVwlk06G/xqAzTnMowWJGd8\nZrj+86XmTRF43a5Vd9/ND+ANqeHYu4u9lSqqW8EOyxTK5OP14oxQa7w6IQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 471, + "comment" : "u2 == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ab6590ad5134f8e1bf4581cf90ca0398ceb92861c2af06928cc0303d9654ca3e1d821f6a357dc173f22a3b77145c057a632bb56f31514e31d6d2ed7fddeade55", + "wx" : "00ab6590ad5134f8e1bf4581cf90ca0398ceb92861c2af06928cc0303d9654ca3e", + "wy" : "1d821f6a357dc173f22a3b77145c057a632bb56f31514e31d6d2ed7fddeade55" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ab6590ad5134f8e1bf4581cf90ca0398ceb92861c2af06928cc0303d9654ca3e1d821f6a357dc173f22a3b77145c057a632bb56f31514e31d6d2ed7fddeade55", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEq2WQrVE0+OG/RYHPkMoDmM65KGHC\nrwaSjMAwPZZUyj4dgh9qNX3Bc/IqO3cUXAV6Yyu1bzFRTjHW0u1/3ereVQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 472, + "comment" : "u2 == n - 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30450220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022100aaaaaaaa00000000aaaaaaaaaaaaaaaa7def51c91a0fbf034d26872ca84218e1", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04cde41230f0cdf732ac76e5f284cb7f46915ed309b48debf245f3ff2f243e9366240da36ca5ad289bdfea83213847b14a73079705eab0a2a28aefc999e5ed1504", + "wx" : "00cde41230f0cdf732ac76e5f284cb7f46915ed309b48debf245f3ff2f243e9366", + "wy" : "240da36ca5ad289bdfea83213847b14a73079705eab0a2a28aefc999e5ed1504" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cde41230f0cdf732ac76e5f284cb7f46915ed309b48debf245f3ff2f243e9366240da36ca5ad289bdfea83213847b14a73079705eab0a2a28aefc999e5ed1504", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzeQSMPDN9zKsduXyhMt/RpFe0wm0\njevyRfP/LyQ+k2YkDaNspa0om9/qgyE4R7FKcweXBeqwoqKK78mZ5e0VBA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 473, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bc0f3a265e2136998083451163be66f8b6a673bf5cb08a0e8dbbce4319af6977", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0436c6faa9f6dca42ea8b0e6d02d36c3941582749251bfa88c35fc8a8e9ad51cdac44ce5f20f36b4ae75cc7291678dbff188cf8c838b8963eeb8b78891795a7364", + "wx" : "36c6faa9f6dca42ea8b0e6d02d36c3941582749251bfa88c35fc8a8e9ad51cda", + "wy" : "00c44ce5f20f36b4ae75cc7291678dbff188cf8c838b8963eeb8b78891795a7364" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000436c6faa9f6dca42ea8b0e6d02d36c3941582749251bfa88c35fc8a8e9ad51cdac44ce5f20f36b4ae75cc7291678dbff188cf8c838b8963eeb8b78891795a7364", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENsb6qfbcpC6osObQLTbDlBWCdJJR\nv6iMNfyKjprVHNrETOXyDza0rnXMcpFnjb/xiM+Mg4uJY+64t4iReVpzZA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 474, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02202a06d743967a1330ca91cc46c9394512cc85b4f1b9355eb7f4bbe53a32b76cf4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04709e58a12b12034173395bf91e68255d90d8a3a1d5875c75f87787d9a85a092980e09b79f43489be726a4253ae6c05adce71bcc65389254923cbfacc0775bff6", + "wx" : "709e58a12b12034173395bf91e68255d90d8a3a1d5875c75f87787d9a85a0929", + "wy" : "0080e09b79f43489be726a4253ae6c05adce71bcc65389254923cbfacc0775bff6" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004709e58a12b12034173395bf91e68255d90d8a3a1d5875c75f87787d9a85a092980e09b79f43489be726a4253ae6c05adce71bcc65389254923cbfacc0775bff6", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcJ5YoSsSA0FzOVv5HmglXZDYo6HV\nh1x1+HeH2ahaCSmA4Jt59DSJvnJqQlOubAWtznG8xlOJJUkjy/rMB3W/9g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 475, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0221008a457017b290d6edb5455e167b9944f67dc5ba958c7c8108ac56e8596b9bc9a1", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0486664a9e09db80dbe3bd0158cc4a64a2cded9c852b455f4443e97cca5569f7cc7454f96b52a27a43a1345b5d340902e147880adaf2fe691c168b4203ba2e1df4", + "wx" : "0086664a9e09db80dbe3bd0158cc4a64a2cded9c852b455f4443e97cca5569f7cc", + "wy" : "7454f96b52a27a43a1345b5d340902e147880adaf2fe691c168b4203ba2e1df4" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000486664a9e09db80dbe3bd0158cc4a64a2cded9c852b455f4443e97cca5569f7cc7454f96b52a27a43a1345b5d340902e147880adaf2fe691c168b4203ba2e1df4", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhmZKngnbgNvjvQFYzEpkos3tnIUr\nRV9EQ+l8ylVp98x0VPlrUqJ6Q6E0W100CQLhR4gK2vL+aRwWi0IDui4d9A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 476, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100cbfaf812124638c0b98c18cac3dd8d0848ff921f26aec42a708df7b6a97571c7", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04623c668c5dbae406e7b4e8e97b2bba2028586f2e3c31f694d9fe87a3de29f8433ac7eb04891898dd9077432c38cc978049cab7721630ed033095f850ade83e3e", + "wx" : "623c668c5dbae406e7b4e8e97b2bba2028586f2e3c31f694d9fe87a3de29f843", + "wy" : "3ac7eb04891898dd9077432c38cc978049cab7721630ed033095f850ade83e3e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004623c668c5dbae406e7b4e8e97b2bba2028586f2e3c31f694d9fe87a3de29f8433ac7eb04891898dd9077432c38cc978049cab7721630ed033095f850ade83e3e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYjxmjF265AbntOjpeyu6IChYby48\nMfaU2f6Ho94p+EM6x+sEiRiY3ZB3Qyw4zJeAScq3chYw7QMwlfhQreg+Pg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 477, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100af812de3638bfed9c18cac3dd8d087e7350cc7062635266a525bff486363cc91", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b034897e2a74a787e008b14c62882eaee0e6e53a1c8a58f709a54432713c20fd28e07de2ca64b5e215d25d0530d7807df11b98bb39c26a2405388ac0b163fafc", + "wx" : "00b034897e2a74a787e008b14c62882eaee0e6e53a1c8a58f709a54432713c20fd", + "wy" : "28e07de2ca64b5e215d25d0530d7807df11b98bb39c26a2405388ac0b163fafc" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b034897e2a74a787e008b14c62882eaee0e6e53a1c8a58f709a54432713c20fd28e07de2ca64b5e215d25d0530d7807df11b98bb39c26a2405388ac0b163fafc", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEsDSJfip0p4fgCLFMYoguruDm5Toc\nilj3CaVEMnE8IP0o4H3iymS14hXSXQUw14B98RuYuznCaiQFOIrAsWP6/A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 478, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02205f025bc7c717fdb28319587bb1a10fcead32935ea552ae4fb0fe33cdca6473d1", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0414c4f6210b628edd441651d3cb61a07f7ca87629a9e0add5a4fd92902a20cd255146bebdb22b4d49527ebc90ba6294784ae7ca664724d45a466c9fe8b8699bbf", + "wx" : "14c4f6210b628edd441651d3cb61a07f7ca87629a9e0add5a4fd92902a20cd25", + "wy" : "5146bebdb22b4d49527ebc90ba6294784ae7ca664724d45a466c9fe8b8699bbf" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000414c4f6210b628edd441651d3cb61a07f7ca87629a9e0add5a4fd92902a20cd255146bebdb22b4d49527ebc90ba6294784ae7ca664724d45a466c9fe8b8699bbf", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFMT2IQtijt1EFlHTy2Ggf3yodimp\n4K3VpP2SkCogzSVRRr69sitNSVJ+vJC6YpR4SufKZkck1FpGbJ/ouGmbvw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 479, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100de4130d1ed9120b8c3dd8d087e7630cb9a8402519439af08e96b342788c6e84e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b5408eefbdb7480fad4c1735f378c9a1ded28cf476835f27b6fd3b8af5e4c596a60a806e244c63a798baf2fd5a66c6c0d7f77952ba2d74b0fe3652811caac6f0", + "wx" : "00b5408eefbdb7480fad4c1735f378c9a1ded28cf476835f27b6fd3b8af5e4c596", + "wy" : "00a60a806e244c63a798baf2fd5a66c6c0d7f77952ba2d74b0fe3652811caac6f0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b5408eefbdb7480fad4c1735f378c9a1ded28cf476835f27b6fd3b8af5e4c596a60a806e244c63a798baf2fd5a66c6c0d7f77952ba2d74b0fe3652811caac6f0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEtUCO7723SA+tTBc183jJod7SjPR2\ng18ntv07ivXkxZamCoBuJExjp5i68v1aZsbA1/d5UrotdLD+NlKBHKrG8A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 480, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ec618e7b1af40be0d052f5a020388fc6cafb822933c1bffab137885f52e89d3e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04de9e22bc58f4b9c913e7f7c26fcbc5d7f6bdc9fced5f520ac88e8a03290be403746a125844509d79840e35440b312dbfdf4ab8ab0011e7c36bc9e01201b1b0e0", + "wx" : "00de9e22bc58f4b9c913e7f7c26fcbc5d7f6bdc9fced5f520ac88e8a03290be403", + "wy" : "746a125844509d79840e35440b312dbfdf4ab8ab0011e7c36bc9e01201b1b0e0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004de9e22bc58f4b9c913e7f7c26fcbc5d7f6bdc9fced5f520ac88e8a03290be403746a125844509d79840e35440b312dbfdf4ab8ab0011e7c36bc9e01201b1b0e0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3p4ivFj0uckT5/fCb8vF1/a9yfzt\nX1IKyI6KAykL5AN0ahJYRFCdeYQONUQLMS2/30q4qwAR58NryeASAbGw4A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 481, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100d39813c8102fe0f18cbfac4b0fa028e6e48c093c59ea00dc99fad50f2d614a3d", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ee3bfd2e1c3d99acd88dbf6fc9a3a8f5686b50a6a3e9215f57e83a81389836a5f8ebff9a3e463d47ec36259fdde694bdbb880b0a09fe9ac649d691646ba624f6", + "wx" : "00ee3bfd2e1c3d99acd88dbf6fc9a3a8f5686b50a6a3e9215f57e83a81389836a5", + "wy" : "00f8ebff9a3e463d47ec36259fdde694bdbb880b0a09fe9ac649d691646ba624f6" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ee3bfd2e1c3d99acd88dbf6fc9a3a8f5686b50a6a3e9215f57e83a81389836a5f8ebff9a3e463d47ec36259fdde694bdbb880b0a09fe9ac649d691646ba624f6", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7jv9Lhw9mazYjb9vyaOo9WhrUKaj\n6SFfV+g6gTiYNqX46/+aPkY9R+w2JZ/d5pS9u4gLCgn+msZJ1pFka6Yk9g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 482, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100e9fcbcad906698e02d9aba57b3c4e9eefeaf3cec7a980c422fe7f6303fc4a3ab", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043c0c4d0ad0848d1335b12a8919d32fafc5f2b0d5c2f3cf6494b06ba8eb17cb29dd7054095454fdb519279cde10259ec5d9e5e4b5a8c4daca649a150f2dbf21ac", + "wx" : "3c0c4d0ad0848d1335b12a8919d32fafc5f2b0d5c2f3cf6494b06ba8eb17cb29", + "wy" : "00dd7054095454fdb519279cde10259ec5d9e5e4b5a8c4daca649a150f2dbf21ac" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043c0c4d0ad0848d1335b12a8919d32fafc5f2b0d5c2f3cf6494b06ba8eb17cb29dd7054095454fdb519279cde10259ec5d9e5e4b5a8c4daca649a150f2dbf21ac", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPAxNCtCEjRM1sSqJGdMvr8XysNXC\n889klLBrqOsXyyndcFQJVFT9tRknnN4QJZ7F2eXktajE2spkmhUPLb8hrA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 483, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022021f862ec50ef64b3bfbe5d774e20cc838320437725338a3b32fefe3ff159dded", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046cf91440818ea262b9376e23f7b530b9e44edf5bc6db1a67dd60cc722975d62317c19e7d6ebc0cbdc89388242d604ae94ac4ca179ef2cd8bf33fbf738afcb39b", + "wx" : "6cf91440818ea262b9376e23f7b530b9e44edf5bc6db1a67dd60cc722975d623", + "wy" : "17c19e7d6ebc0cbdc89388242d604ae94ac4ca179ef2cd8bf33fbf738afcb39b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046cf91440818ea262b9376e23f7b530b9e44edf5bc6db1a67dd60cc722975d62317c19e7d6ebc0cbdc89388242d604ae94ac4ca179ef2cd8bf33fbf738afcb39b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEbPkUQIGOomK5N24j97UwueRO31vG\n2xpn3WDMcil11iMXwZ59brwMvciTiCQtYErpSsTKF57yzYvzP79zivyzmw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 484, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022043f0c5d8a1dec9677f7cbaee9c419907064086ee4a67147665fdfc7fe2b3bbda", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041b5afcf39888d2da7215f36421a85c4217b0ac883bf5957c2d066efd8bc89f18d8fb3b6aca0b3577a883948e016905065a3fdc13d6f433172ee0f16784e52c78", + "wx" : "1b5afcf39888d2da7215f36421a85c4217b0ac883bf5957c2d066efd8bc89f18", + "wy" : "00d8fb3b6aca0b3577a883948e016905065a3fdc13d6f433172ee0f16784e52c78" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041b5afcf39888d2da7215f36421a85c4217b0ac883bf5957c2d066efd8bc89f18d8fb3b6aca0b3577a883948e016905065a3fdc13d6f433172ee0f16784e52c78", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEG1r885iI0tpyFfNkIahcQhewrIg7\n9ZV8LQZu/YvInxjY+ztqygs1d6iDlI4BaQUGWj/cE9b0Mxcu4PFnhOUseA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 485, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022065e928c4f2ce2e1b3f3b1865ea62658a8960ca656f9a9eb198fcfabfd40d99c7", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04890d36db646c27c2e6c7bc7fdc3f0cbf66fab36d13279b9ecf6e98457d8cf49207a83cfda8e9d0375404c6cbff66792eef97220239254000b4bf983e6bae26d7", + "wx" : "00890d36db646c27c2e6c7bc7fdc3f0cbf66fab36d13279b9ecf6e98457d8cf492", + "wy" : "07a83cfda8e9d0375404c6cbff66792eef97220239254000b4bf983e6bae26d7" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004890d36db646c27c2e6c7bc7fdc3f0cbf66fab36d13279b9ecf6e98457d8cf49207a83cfda8e9d0375404c6cbff66792eef97220239254000b4bf983e6bae26d7", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEiQ0222RsJ8Lmx7x/3D8Mv2b6s20T\nJ5uez26YRX2M9JIHqDz9qOnQN1QExsv/Znku75ciAjklQAC0v5g+a64m1w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 486, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100c522b80b59486b775aa2af0b3dcca27b1d565aa199ca0fc6d008598e33ff7779", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042a1571ed0ffe39574d030b406f638bf88eea5b4b50754e93431fe0172fdf2fbcbc77f601dc6dbc88cc2b560e8cca5e738f2c769810b2c8762dab917adfe24535", + "wx" : "2a1571ed0ffe39574d030b406f638bf88eea5b4b50754e93431fe0172fdf2fbc", + "wy" : "00bc77f601dc6dbc88cc2b560e8cca5e738f2c769810b2c8762dab917adfe24535" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042a1571ed0ffe39574d030b406f638bf88eea5b4b50754e93431fe0172fdf2fbcbc77f601dc6dbc88cc2b560e8cca5e738f2c769810b2c8762dab917adfe24535", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKhVx7Q/+OVdNAwtAb2OL+I7qW0tQ\ndU6TQx/gFy/fL7y8d/YB3G28iMwrVg6Myl5zjyx2mBCyyHYtq5F63+JFNQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 487, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02207fffffffaaaaaaaaffffffffffffffffe9a2538f37b28a2c513dee40fecbb71a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04612b4467c8b3b8ecbf5374997ec7db8cab2bda9e431982c49727f3fcefb10b47b9d1ecc026c3665425730128138c4e181c61ec28b38910ca59e5fc496ec31f08", + "wx" : "612b4467c8b3b8ecbf5374997ec7db8cab2bda9e431982c49727f3fcefb10b47", + "wy" : "00b9d1ecc026c3665425730128138c4e181c61ec28b38910ca59e5fc496ec31f08" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004612b4467c8b3b8ecbf5374997ec7db8cab2bda9e431982c49727f3fcefb10b47b9d1ecc026c3665425730128138c4e181c61ec28b38910ca59e5fc496ec31f08", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYStEZ8izuOy/U3SZfsfbjKsr2p5D\nGYLElyfz/O+xC0e50ezAJsNmVCVzASgTjE4YHGHsKLOJEMpZ5fxJbsMfCA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 488, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100b62f26b5f2a2b26f6de86d42ad8a13da3ab3cccd0459b201de009e526adf21f2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0434191b6ce8865c2230a514b61e2b2730c94beb072e9de309872aea3743bb3e2722d202fc59984e7421a25e6a82664b5080f72ab28df9c0af4e1e300af11ae9b0", + "wx" : "34191b6ce8865c2230a514b61e2b2730c94beb072e9de309872aea3743bb3e27", + "wy" : "22d202fc59984e7421a25e6a82664b5080f72ab28df9c0af4e1e300af11ae9b0" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000434191b6ce8865c2230a514b61e2b2730c94beb072e9de309872aea3743bb3e2722d202fc59984e7421a25e6a82664b5080f72ab28df9c0af4e1e300af11ae9b0", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENBkbbOiGXCIwpRS2HisnMMlL6wcu\nneMJhyrqN0O7Pici0gL8WZhOdCGiXmqCZktQgPcqso35wK9OHjAK8RrpsA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 489, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bb1d9ac949dd748cd02bbbe749bd351cd57b38bb61403d700686aa7b4c90851e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d533c620a8fd3d5a8342caba89eadc25907d1e9b6fea48ee8f806aa772f0c80f70e09c022fa1139da32a456ec024949824477bf0bdbf603e8faccd6b205d263c", + "wx" : "00d533c620a8fd3d5a8342caba89eadc25907d1e9b6fea48ee8f806aa772f0c80f", + "wy" : "70e09c022fa1139da32a456ec024949824477bf0bdbf603e8faccd6b205d263c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d533c620a8fd3d5a8342caba89eadc25907d1e9b6fea48ee8f806aa772f0c80f70e09c022fa1139da32a456ec024949824477bf0bdbf603e8faccd6b205d263c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE1TPGIKj9PVqDQsq6iercJZB9Hptv\n6kjuj4Bqp3LwyA9w4JwCL6ETnaMqRW7AJJSYJEd78L2/YD6PrM1rIF0mPA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 490, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022066755a00638cdaec1c732513ca0234ece52545dac11f816e818f725b4f60aaf2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0491014bea8705a022972e12b176c96e84c0b61c05eb1c6f8c5c1db731d54d67e29060ef6c764d8d47ed5ebf8f6c23835cb89f8b056cdf7e457f9273b6477ece33", + "wx" : "0091014bea8705a022972e12b176c96e84c0b61c05eb1c6f8c5c1db731d54d67e2", + "wy" : "009060ef6c764d8d47ed5ebf8f6c23835cb89f8b056cdf7e457f9273b6477ece33" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000491014bea8705a022972e12b176c96e84c0b61c05eb1c6f8c5c1db731d54d67e29060ef6c764d8d47ed5ebf8f6c23835cb89f8b056cdf7e457f9273b6477ece33", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkQFL6ocFoCKXLhKxdsluhMC2HAXr\nHG+MXB23MdVNZ+KQYO9sdk2NR+1ev49sI4NcuJ+LBWzffkV/knO2R37OMw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 491, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022055a00c9fcdaebb6032513ca0234ecfffe98ebe492fdf02e48ca48e982beb3669", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04287a7f8edfbb55cbb56d6b7be5b96c410a85a35bc6639661a92bd653e1f59688bbd133a77828493b3e0f867f34acfcac099415399a6b1106a0f9420c06f8bf94", + "wx" : "287a7f8edfbb55cbb56d6b7be5b96c410a85a35bc6639661a92bd653e1f59688", + "wy" : "00bbd133a77828493b3e0f867f34acfcac099415399a6b1106a0f9420c06f8bf94" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004287a7f8edfbb55cbb56d6b7be5b96c410a85a35bc6639661a92bd653e1f59688bbd133a77828493b3e0f867f34acfcac099415399a6b1106a0f9420c06f8bf94", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKHp/jt+7Vcu1bWt75blsQQqFo1vG\nY5ZhqSvWU+H1loi70TOneChJOz4Phn80rPysCZQVOZprEQag+UIMBvi/lA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 492, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ab40193f9b5d76c064a27940469d9fffd31d7c925fbe05c919491d3057d66cd2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0482eca524c9ee8475ec8948721a9409b5090c6c28866d0c12669bd5cb7e685a58066b1e7135946a425ddd228076ea24d131b9bd2eae6b51c8083857628f260b80", + "wx" : "0082eca524c9ee8475ec8948721a9409b5090c6c28866d0c12669bd5cb7e685a58", + "wy" : "066b1e7135946a425ddd228076ea24d131b9bd2eae6b51c8083857628f260b80" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000482eca524c9ee8475ec8948721a9409b5090c6c28866d0c12669bd5cb7e685a58066b1e7135946a425ddd228076ea24d131b9bd2eae6b51c8083857628f260b80", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEguylJMnuhHXsiUhyGpQJtQkMbCiG\nbQwSZpvVy35oWlgGax5xNZRqQl3dIoB26iTRMbm9Lq5rUcgIOFdijyYLgA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 493, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ca0234ebb5fdcb13ca0234ecffffffffcb0dadbbc7f549f8a26b4408d0dc8600", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "049cc512b58d5b921f91075441b0df61e0381459de703a84523cda31dc18549ff85647dd4bd39f6761a144d81ef39db7bc0dedbcb15bdaf084e3a10fdd10bd906a", + "wx" : "009cc512b58d5b921f91075441b0df61e0381459de703a84523cda31dc18549ff8", + "wy" : "5647dd4bd39f6761a144d81ef39db7bc0dedbcb15bdaf084e3a10fdd10bd906a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200049cc512b58d5b921f91075441b0df61e0381459de703a84523cda31dc18549ff85647dd4bd39f6761a144d81ef39db7bc0dedbcb15bdaf084e3a10fdd10bd906a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnMUStY1bkh+RB1RBsN9h4DgUWd5w\nOoRSPNox3BhUn/hWR91L059nYaFE2B7znbe8De28sVva8ITjoQ/dEL2Qag==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 494, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff3ea3677e082b9310572620ae19933a9e65b285598711c77298815ad3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04aa9d33c76ccd011ba23047a420840374b4fa3be480c65263d543baf2ccc6141e5ed3b42ad9527869fae92914b82b952d2c31c8fcc85b4c100983096694285766", + "wx" : "00aa9d33c76ccd011ba23047a420840374b4fa3be480c65263d543baf2ccc6141e", + "wy" : "5ed3b42ad9527869fae92914b82b952d2c31c8fcc85b4c100983096694285766" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004aa9d33c76ccd011ba23047a420840374b4fa3be480c65263d543baf2ccc6141e5ed3b42ad9527869fae92914b82b952d2c31c8fcc85b4c100983096694285766", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqp0zx2zNARuiMEekIIQDdLT6O+SA\nxlJj1UO68szGFB5e07Qq2VJ4afrpKRS4K5UtLDHI/MhbTBAJgwlmlChXZg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 495, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220266666663bbbbbbbe6666666666666665b37902e023fab7c8f055d86e5cc41f4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042812996934db1357048a1aacb07cb2a8730fbe530984a7a5166f84748ff63e4ce6e8a80e235e216e1a9e75ba3b3a321af51d2e4524ad3c8be99288463b91155a", + "wx" : "2812996934db1357048a1aacb07cb2a8730fbe530984a7a5166f84748ff63e4c", + "wy" : "00e6e8a80e235e216e1a9e75ba3b3a321af51d2e4524ad3c8be99288463b91155a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042812996934db1357048a1aacb07cb2a8730fbe530984a7a5166f84748ff63e4ce6e8a80e235e216e1a9e75ba3b3a321af51d2e4524ad3c8be99288463b91155a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKBKZaTTbE1cEihqssHyyqHMPvlMJ\nhKelFm+EdI/2Pkzm6KgOI14hbhqedbo7OjIa9R0uRSStPIvpkohGO5EVWg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 496, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff36db6db7a492492492492492146c573f4c6dfc8d08a443e258970b09", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048286d34afa1904ae756d73bf02a6b6a9db1eaa1b8351ad713a786dcfb829135bf97922dfe80cd4f0e438a8d842e7666853436d972860f715e622a1e876db4251", + "wx" : "008286d34afa1904ae756d73bf02a6b6a9db1eaa1b8351ad713a786dcfb829135b", + "wy" : "00f97922dfe80cd4f0e438a8d842e7666853436d972860f715e622a1e876db4251" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048286d34afa1904ae756d73bf02a6b6a9db1eaa1b8351ad713a786dcfb829135bf97922dfe80cd4f0e438a8d842e7666853436d972860f715e622a1e876db4251", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEgobTSvoZBK51bXO/Aqa2qdseqhuD\nUa1xOnhtz7gpE1v5eSLf6AzU8OQ4qNhC52ZoU0Ntlyhg9xXmIqHodttCUQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 497, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff2aaaaaab7fffffffffffffffc815d0e60b3e596ecb1ad3a27cfd49c4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044b7b9990a6c2c5a810107c09ee09cf3388c1a6e82aaa44c378d9886e2508c2e0867e7632fcc312fcfdc01fb6a579ce6aa6285563b1adbb3272f0e122f9de73e3", + "wx" : "4b7b9990a6c2c5a810107c09ee09cf3388c1a6e82aaa44c378d9886e2508c2e0", + "wy" : "00867e7632fcc312fcfdc01fb6a579ce6aa6285563b1adbb3272f0e122f9de73e3" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044b7b9990a6c2c5a810107c09ee09cf3388c1a6e82aaa44c378d9886e2508c2e0867e7632fcc312fcfdc01fb6a579ce6aa6285563b1adbb3272f0e122f9de73e3", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAES3uZkKbCxagQEHwJ7gnPM4jBpugq\nqkTDeNmIbiUIwuCGfnYy/MMS/P3AH7alec5qpihVY7GtuzJy8OEi+d5z4w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 498, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02207fffffff55555555ffffffffffffffffd344a71e6f651458a27bdc81fd976e37", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04568426540e19be6404e6cb4745fc7a943c0c059d7c7baf3bc4fc782e9aedf2deba7fb20ad12a886c53945d3cdb019afa8b0d58ed307d55f556acf79ec89012d5", + "wx" : "568426540e19be6404e6cb4745fc7a943c0c059d7c7baf3bc4fc782e9aedf2de", + "wy" : "00ba7fb20ad12a886c53945d3cdb019afa8b0d58ed307d55f556acf79ec89012d5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004568426540e19be6404e6cb4745fc7a943c0c059d7c7baf3bc4fc782e9aedf2deba7fb20ad12a886c53945d3cdb019afa8b0d58ed307d55f556acf79ec89012d5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEVoQmVA4ZvmQE5stHRfx6lDwMBZ18\ne687xPx4Lprt8t66f7IK0SqIbFOUXTzbAZr6iw1Y7TB9VfVWrPeeyJAS1Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 499, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02203fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192aa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041bebc1a6823107d1263219e36d2ec1957d20b0b450b481c9de46ea9294d48b6672b7a811af9528e61199f4a2a7f30d8685f5a04767b59276e65a732e8f3950a1", + "wx" : "1bebc1a6823107d1263219e36d2ec1957d20b0b450b481c9de46ea9294d48b66", + "wy" : "72b7a811af9528e61199f4a2a7f30d8685f5a04767b59276e65a732e8f3950a1" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041bebc1a6823107d1263219e36d2ec1957d20b0b450b481c9de46ea9294d48b6672b7a811af9528e61199f4a2a7f30d8685f5a04767b59276e65a732e8f3950a1", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEG+vBpoIxB9EmMhnjbS7BlX0gsLRQ\ntIHJ3kbqkpTUi2Zyt6gRr5Uo5hGZ9KKn8w2GhfWgR2e1knbmWnMujzlQoQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 500, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02205d8ecd64a4eeba466815ddf3a4de9a8e6abd9c5db0a01eb80343553da648428f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0408a2b7fa625f09106a1a8d98f831e53d918fb330d6c388a7b80df98bb9e9c934478da818b4d94082517fa9635a8aa5be05323de604fcfa97bc3a1a57a5e80c34", + "wx" : "08a2b7fa625f09106a1a8d98f831e53d918fb330d6c388a7b80df98bb9e9c934", + "wy" : "478da818b4d94082517fa9635a8aa5be05323de604fcfa97bc3a1a57a5e80c34" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000408a2b7fa625f09106a1a8d98f831e53d918fb330d6c388a7b80df98bb9e9c934478da818b4d94082517fa9635a8aa5be05323de604fcfa97bc3a1a57a5e80c34", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECKK3+mJfCRBqGo2Y+DHlPZGPszDW\nw4inuA35i7npyTRHjagYtNlAglF/qWNaiqW+BTI95gT8+pe8OhpXpegMNA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 501, + "comment" : "point duplication during verification", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "304502206f2347cab7dd76858fe0555ac3bc99048c4aacafdfb6bcbe05ea6c42c4934569022100ae36701f241f6073608b5f77d9039a9aec44aa5a12a99227fd2911b001915de2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0408a2b7fa625f09106a1a8d98f831e53d918fb330d6c388a7b80df98bb9e9c934b87257e64b26bf7eae80569ca5755a41facdc21afb03056843c5e5a85a17f3cb", + "wx" : "08a2b7fa625f09106a1a8d98f831e53d918fb330d6c388a7b80df98bb9e9c934", + "wy" : "00b87257e64b26bf7eae80569ca5755a41facdc21afb03056843c5e5a85a17f3cb" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000408a2b7fa625f09106a1a8d98f831e53d918fb330d6c388a7b80df98bb9e9c934b87257e64b26bf7eae80569ca5755a41facdc21afb03056843c5e5a85a17f3cb", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECKK3+mJfCRBqGo2Y+DHlPZGPszDW\nw4inuA35i7npyTS4clfmSya/fq6AVpyldVpB+s3CGvsDBWhDxeWoWhfzyw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 502, + "comment" : "duplication bug", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "304502206f2347cab7dd76858fe0555ac3bc99048c4aacafdfb6bcbe05ea6c42c4934569022100ae36701f241f6073608b5f77d9039a9aec44aa5a12a99227fd2911b001915de2", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0469aac6897b0457e54cac25f24590be255d352a20055004e7caa7cbb430b3c90f9113bffe220db9143e38514da0481df67f1717c58aab1a189fb9d4f6e53c3900", + "wx" : "69aac6897b0457e54cac25f24590be255d352a20055004e7caa7cbb430b3c90f", + "wy" : "009113bffe220db9143e38514da0481df67f1717c58aab1a189fb9d4f6e53c3900" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000469aac6897b0457e54cac25f24590be255d352a20055004e7caa7cbb430b3c90f9113bffe220db9143e38514da0481df67f1717c58aab1a189fb9d4f6e53c3900", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaarGiXsEV+VMrCXyRZC+JV01KiAF\nUATnyqfLtDCzyQ+RE7/+Ig25FD44UU2gSB32fxcXxYqrGhifudT25Tw5AA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 503, + "comment" : "point with x-coordinate 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250201010220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04449ff6ddbec4bf9bcc3149b8dfe480f9a677c3b8e203d272f3e0a2cf90a2cea787fcbc0799a9323da3f7fddb4818b89b1d97b32b962e1b3edad2fbed47b58d41", + "wx" : "449ff6ddbec4bf9bcc3149b8dfe480f9a677c3b8e203d272f3e0a2cf90a2cea7", + "wy" : "0087fcbc0799a9323da3f7fddb4818b89b1d97b32b962e1b3edad2fbed47b58d41" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004449ff6ddbec4bf9bcc3149b8dfe480f9a677c3b8e203d272f3e0a2cf90a2cea787fcbc0799a9323da3f7fddb4818b89b1d97b32b962e1b3edad2fbed47b58d41", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAERJ/23b7Ev5vMMUm43+SA+aZ3w7ji\nA9Jy8+Ciz5CizqeH/LwHmakyPaP3/dtIGLibHZezK5YuGz7a0vvtR7WNQQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 504, + "comment" : "point with x-coordinate 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3045022101000000000000000000000000000000000000000000000000000000000000000002203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aa9", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b282b1b5bc00c2bb18f28ce678e1cd48c8ced8335af5d8e4abd3d7a7d3616f563d47a55ddc11e966fde2bd87b028e62fc8133def824e3e00528f2442908fe84c", + "wx" : "00b282b1b5bc00c2bb18f28ce678e1cd48c8ced8335af5d8e4abd3d7a7d3616f56", + "wy" : "3d47a55ddc11e966fde2bd87b028e62fc8133def824e3e00528f2442908fe84c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b282b1b5bc00c2bb18f28ce678e1cd48c8ced8335af5d8e4abd3d7a7d3616f563d47a55ddc11e966fde2bd87b028e62fc8133def824e3e00528f2442908fe84c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEsoKxtbwAwrsY8ozmeOHNSMjO2DNa\n9djkq9PXp9Nhb1Y9R6Vd3BHpZv3ivYewKOYvyBM974JOPgBSjyRCkI/oTA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 505, + "comment" : "comparison with point at infinity ", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aa9", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04facbd6f5e996284a53cb1ca41ffc4eb0a3fd73b73c730194011169b9ada14519c5491ede60614d823b491198df7bc6c6768e064e0e43b7f053ab8f279cd4f4ec", + "wx" : "00facbd6f5e996284a53cb1ca41ffc4eb0a3fd73b73c730194011169b9ada14519", + "wy" : "00c5491ede60614d823b491198df7bc6c6768e064e0e43b7f053ab8f279cd4f4ec" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004facbd6f5e996284a53cb1ca41ffc4eb0a3fd73b73c730194011169b9ada14519c5491ede60614d823b491198df7bc6c6768e064e0e43b7f053ab8f279cd4f4ec", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE+svW9emWKEpTyxykH/xOsKP9c7c8\ncwGUARFpua2hRRnFSR7eYGFNgjtJEZjfe8bGdo4GTg5Dt/BTq48nnNT07A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 506, + "comment" : "extreme value for k and edgecase s", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc476699780220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a011801d52a75f4841e40240da49dda8f38e868b4e6f941f77ca9b86665ad5a74751eabf00fc2a7a863fec366975edbcd4885693022cd755c0d8936e660d61db", + "wx" : "00a011801d52a75f4841e40240da49dda8f38e868b4e6f941f77ca9b86665ad5a7", + "wy" : "4751eabf00fc2a7a863fec366975edbcd4885693022cd755c0d8936e660d61db" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a011801d52a75f4841e40240da49dda8f38e868b4e6f941f77ca9b86665ad5a74751eabf00fc2a7a863fec366975edbcd4885693022cd755c0d8936e660d61db", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEoBGAHVKnX0hB5AJA2kndqPOOhotO\nb5Qfd8qbhmZa1adHUeq/APwqeoY/7DZpde281IhWkwIs11XA2JNuZg1h2w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 507, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022100b6db6db6249249254924924924924924625bd7a09bec4ca81bcdd9f8fd6b63cc", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04fdfa5d35e42ef91b1842c9f28aeb6c68bd7732935f748168deb718e66608b980d6f85fa678df3cabb55b5002e63b55d7cae11e89f74940b7990a3b167dfa191b", + "wx" : "00fdfa5d35e42ef91b1842c9f28aeb6c68bd7732935f748168deb718e66608b980", + "wy" : "00d6f85fa678df3cabb55b5002e63b55d7cae11e89f74940b7990a3b167dfa191b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004fdfa5d35e42ef91b1842c9f28aeb6c68bd7732935f748168deb718e66608b980d6f85fa678df3cabb55b5002e63b55d7cae11e89f74940b7990a3b167dfa191b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/fpdNeQu+RsYQsnyiutsaL13MpNf\ndIFo3rcY5mYIuYDW+F+meN88q7VbUALmO1XXyuEeifdJQLeZCjsWffoZGw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 508, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022100cccccccc00000000cccccccccccccccc971f2ef152794b9d8fc7d568c9e8eaa7", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040754de71bd21f14f4927bdab77efc57f148b36275c305a86c1d7a0dcfd53bab4989fc99bc725da84197c2f284ecc6030489eda77ef92f8680130622b631af2b3", + "wx" : "0754de71bd21f14f4927bdab77efc57f148b36275c305a86c1d7a0dcfd53bab4", + "wy" : "00989fc99bc725da84197c2f284ecc6030489eda77ef92f8680130622b631af2b3" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040754de71bd21f14f4927bdab77efc57f148b36275c305a86c1d7a0dcfd53bab4989fc99bc725da84197c2f284ecc6030489eda77ef92f8680130622b631af2b3", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEB1Tecb0h8U9JJ72rd+/FfxSLNidc\nMFqGwdeg3P1TurSYn8mbxyXahBl8LyhOzGAwSJ7ad++S+GgBMGIrYxrysw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 509, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc4766997802203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aaa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048aad84fd5d52afd531f1068fb7a10bb365faefa89975597187470d04a8c9c8b327258e32d19cd58ddfd35bd7ea1f063c77c61b7879451bdd3e8f44cbf40241a2", + "wx" : "008aad84fd5d52afd531f1068fb7a10bb365faefa89975597187470d04a8c9c8b3", + "wy" : "27258e32d19cd58ddfd35bd7ea1f063c77c61b7879451bdd3e8f44cbf40241a2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048aad84fd5d52afd531f1068fb7a10bb365faefa89975597187470d04a8c9c8b327258e32d19cd58ddfd35bd7ea1f063c77c61b7879451bdd3e8f44cbf40241a2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEiq2E/V1Sr9Ux8QaPt6ELs2X676iZ\ndVlxh0cNBKjJyLMnJY4y0ZzVjd/TW9fqHwY8d8YbeHlFG90+j0TL9AJBog==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 510, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022049249248db6db6dbb6db6db6db6db6db5a8b230d0b2b51dcd7ebf0c9fef7c185", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b4a01ec7b10acff3dace05222fae05c75368a375d8ce1faf4a1b2def1ab715ab61a6642e82ff950f373ace5c0cc298639ab9ae739e4614a93fb1122ee16d922f", + "wx" : "00b4a01ec7b10acff3dace05222fae05c75368a375d8ce1faf4a1b2def1ab715ab", + "wy" : "61a6642e82ff950f373ace5c0cc298639ab9ae739e4614a93fb1122ee16d922f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b4a01ec7b10acff3dace05222fae05c75368a375d8ce1faf4a1b2def1ab715ab61a6642e82ff950f373ace5c0cc298639ab9ae739e4614a93fb1122ee16d922f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEtKAex7EKz/PazgUiL64Fx1Noo3XY\nzh+vShst7xq3FathpmQugv+VDzc6zlwMwphjmrmuc55GFKk/sRIu4W2SLw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 511, + "comment" : "extreme value for k", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022016a4502e2781e11ac82cbc9d1edd8c981584d13e18411e2f6e0478c34416e3bb", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044efc2bef42b11e0929edca3b025f01b1fa37aceef4cd3e8c2d4beab500856af87716828fc1788c881ae39f534c3e270ca869a578210b5dad8a8938691d0c4b73", + "wx" : "4efc2bef42b11e0929edca3b025f01b1fa37aceef4cd3e8c2d4beab500856af8", + "wy" : "7716828fc1788c881ae39f534c3e270ca869a578210b5dad8a8938691d0c4b73" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044efc2bef42b11e0929edca3b025f01b1fa37aceef4cd3e8c2d4beab500856af87716828fc1788c881ae39f534c3e270ca869a578210b5dad8a8938691d0c4b73", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETvwr70KxHgkp7co7Al8Bsfo3rO70\nzT6MLUvqtQCFavh3FoKPwXiMiBrjn1NMPicMqGmleCELXa2KiThpHQxLcw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 512, + "comment" : "extreme value for k and edgecase s", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2960220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044606b9fceecc47babcc78de73ca55672f09930aacd560db0a2967a99ef8a595e612a050025785c0e7c7763db0bb53c48b6ff0ed1dfb6055df90299e295092990", + "wx" : "4606b9fceecc47babcc78de73ca55672f09930aacd560db0a2967a99ef8a595e", + "wy" : "612a050025785c0e7c7763db0bb53c48b6ff0ed1dfb6055df90299e295092990" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044606b9fceecc47babcc78de73ca55672f09930aacd560db0a2967a99ef8a595e612a050025785c0e7c7763db0bb53c48b6ff0ed1dfb6055df90299e295092990", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAERga5/O7MR7q8x43nPKVWcvCZMKrN\nVg2wopZ6me+KWV5hKgUAJXhcDnx3Y9sLtTxItv8O0d+2BV35ApnilQkpkA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 513, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022100b6db6db6249249254924924924924924625bd7a09bec4ca81bcdd9f8fd6b63cc", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b6de6de267720d16bccf71fdbe07ebe5c1149f8cfb2041b1d6cabbc9b6656d682d3e21f4025ddcacab035b5da6310361102079f1b40c1ef7c7b88427694c11c6", + "wx" : "00b6de6de267720d16bccf71fdbe07ebe5c1149f8cfb2041b1d6cabbc9b6656d68", + "wy" : "2d3e21f4025ddcacab035b5da6310361102079f1b40c1ef7c7b88427694c11c6" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b6de6de267720d16bccf71fdbe07ebe5c1149f8cfb2041b1d6cabbc9b6656d682d3e21f4025ddcacab035b5da6310361102079f1b40c1ef7c7b88427694c11c6", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEtt5t4mdyDRa8z3H9vgfr5cEUn4z7\nIEGx1sq7ybZlbWgtPiH0Al3crKsDW12mMQNhECB58bQMHvfHuIQnaUwRxg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 514, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022100cccccccc00000000cccccccccccccccc971f2ef152794b9d8fc7d568c9e8eaa7", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04efd3bd1299d4b2bb0afbce2afd90792d8c72e1d29c6092e4681540420664e275390a4dbb20d10f7360c5b794564dcd443bb1df94bf6b1f4be5909a22a6a534ba", + "wx" : "00efd3bd1299d4b2bb0afbce2afd90792d8c72e1d29c6092e4681540420664e275", + "wy" : "390a4dbb20d10f7360c5b794564dcd443bb1df94bf6b1f4be5909a22a6a534ba" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004efd3bd1299d4b2bb0afbce2afd90792d8c72e1d29c6092e4681540420664e275390a4dbb20d10f7360c5b794564dcd443bb1df94bf6b1f4be5909a22a6a534ba", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE79O9EpnUsrsK+84q/ZB5LYxy4dKc\nYJLkaBVAQgZk4nU5Ck27INEPc2DFt5RWTc1EO7HflL9rH0vlkJoipqU0ug==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 515, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29602203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aaa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04dae9cf165867da6482ede84bfc5b94375529bcb953f26d0cd68fc877088f78d951cadc9f61c55f8e2a04dbaae1251fd15cb12df9bcd072a51971127eaa6ce612", + "wx" : "00dae9cf165867da6482ede84bfc5b94375529bcb953f26d0cd68fc877088f78d9", + "wy" : "51cadc9f61c55f8e2a04dbaae1251fd15cb12df9bcd072a51971127eaa6ce612" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004dae9cf165867da6482ede84bfc5b94375529bcb953f26d0cd68fc877088f78d951cadc9f61c55f8e2a04dbaae1251fd15cb12df9bcd072a51971127eaa6ce612", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2unPFlhn2mSC7ehL/FuUN1UpvLlT\n8m0M1o/IdwiPeNlRytyfYcVfjioE26rhJR/RXLEt+bzQcqUZcRJ+qmzmEg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 516, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022049249248db6db6dbb6db6db6db6db6db5a8b230d0b2b51dcd7ebf0c9fef7c185", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048418924e94161d350c9fe8dc1cc087de4b4491d0bc694a6862df4e8a555f9afbb0b391af97b0dacbdceb7a982781d0090978efbf76b8e6914250e92ade9a6126", + "wx" : "008418924e94161d350c9fe8dc1cc087de4b4491d0bc694a6862df4e8a555f9afb", + "wy" : "00b0b391af97b0dacbdceb7a982781d0090978efbf76b8e6914250e92ade9a6126" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048418924e94161d350c9fe8dc1cc087de4b4491d0bc694a6862df4e8a555f9afbb0b391af97b0dacbdceb7a982781d0090978efbf76b8e6914250e92ade9a6126", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhBiSTpQWHTUMn+jcHMCH3ktEkdC8\naUpoYt9OilVfmvuws5Gvl7Day9zrepgngdAJCXjvv3a45pFCUOkq3pphJg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 517, + "comment" : "extreme value for k", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022016a4502e2781e11ac82cbc9d1edd8c981584d13e18411e2f6e0478c34416e3bb", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5", + "wx" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296", + "wy" : "4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaxfR8uEsQkf4vOblY6RA8ncDfYEt\n6zOg9KE5RdiYwpZP40Li/hp/m47n60p8D54WK84zV2sxXs7LtkBoN79R9Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 518, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "30440220342dae751a63a3ca8189cf342b3b34eaaa2565e2c7e26121c1bfd5435447f1c30220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + }, + { + "tcId" : 519, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3045022100cbd25189e59c5c367e7630cbd4c4cb1512c194cadf353d6331f9f57fa81b338e0220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a", + "wx" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296", + "wy" : "00b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaxfR8uEsQkf4vOblY6RA8ncDfYEt\n6zOg9KE5RdiYwpawHL0cAeWAZXEYFLWD8GHp1DHMqZTOoTE0Sb+XyECuCg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 520, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "30440220342dae751a63a3ca8189cf342b3b34eaaa2565e2c7e26121c1bfd5435447f1c30220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + }, + { + "tcId" : 521, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3045022100cbd25189e59c5c367e7630cbd4c4cb1512c194cadf353d6331f9f57fa81b338e0220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685", + "wx" : "4f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000", + "wy" : "00ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETzN8z9Z3JqgF5PFgCuKEnfOAfsoR\nc4Ajn72BaQAAAADtneoSTMjDlkFkEemIww9CfrUEr0OjFGzV336mBmbWhQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 522, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100ef9a4672e0a07a0efd5936a77f4ea0fcd69dae6fd95ccba8dcb685e7490623c3022100cf135d42f5e379f6ef94b6a493db01c740f441ff5b2475638b6b081f445b17e2", + "result" : "valid" + }, + { + "tcId" : 523, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100b8cb05b278c15df7c6a311b0ce7bb5598fe3a95fdb57683ac0821aa2f5d6fa18022100a9dfa1cc0c9ae0015ae2485f22ed6b0925e82d96ff695b8c2ed593f02719f30e", + "result" : "valid" + }, + { + "tcId" : 524, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502202fe6f2aaed0eb760223e8c580363630d3041614806e7fbc863405aa4d98825ee022100f5d2c396e45d9af9fe1b06b27f0db4d9ee66e1855f4846dae5db6b3d8afbc4f8", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f49726500493584fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000", + "wx" : "3cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f497265004935", + "wy" : "0084fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f49726500493584fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPPA9YU2JOc/UmaB4c/rCgWGPBrj/\nh+gBXD9JcmUASTWE+hdNeRxyvyzjiAqJYN0qfHoTOKgvhanlnNvegAAAAA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 525, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100fb9e312ced9f95c91248bae25056b7bbd84a05fc92acbd304269a1269bbf4f4c022100f31426a809ceebb369278a5182bce94835f066cab8654f8bd2339595844244db", + "result" : "valid" + }, + { + "tcId" : 526, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30440220284fe5f1c86a55fcb3c27a12d82d794eab9a0d76d1fdc4f25df5a9bf52e8e76802207aaa75e5a7948be66f06ce52fc3e4916fc93514b08c51f84b73839d2c05acf58", + "result" : "valid" + }, + { + "tcId" : 527, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100812950449ab90351ab0f124774a2633625d0871d42a69d2e473d8ac118b506a6022050c98878c3699c34f3049e6f9496e3199fb5d860232995205f1761c000af4e07", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f4972650049357b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff", + "wx" : "3cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f497265004935", + "wy" : "7b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f4972650049357b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPPA9YU2JOc/UmaB4c/rCgWGPBrj/\nh+gBXD9JcmUASTV7BeixhuONQdMcd/V2nyLVg4XsyFfQelYaYyQhf////w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 528, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100eaa4f3a8805c60cff74cec78c6b7cea71ef116c333612a6e0096a4c42450936b022100fbb3508d6692b8e0854c1a1749ea065262bae7c8b831ece895a1eeda01cebe7d", + "result" : "valid" + }, + { + "tcId" : 529, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502203d0caca44c21d34cfdcfb00098c95203e08847f4aabab5ae6ea7f365aefbbcf8022100bb99be729e51cfd167dad22182383314c9d85432309cbe36f4b1eb73e776b249", + "result" : "valid" + }, + { + "tcId" : 530, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100e4f8b27c3c2c5cb2a6cb9c2049011dd1060085c6e2a15380bcf5224063d3ae0802204b3a19f1be945cd649f34d965e7eecac0a05ac8030b7cd2d6bed84086fda567e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffffa01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e", + "wx" : "2829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffff", + "wy" : "00a01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffffa01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKCnDH6ouQA40TtlLyj/NBUWVbrz+\nitD236X/jv////+gGq+vAA5SWFhVr6dnat4oQRMJkFLfV+frO9N+vrkiLg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 531, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30440220670ce60d0fc7224c8d06f3b01c4416ee0b3ac12f0cff3e1ad214898389ebc819022045da7b6fc8f4f766f82c5132735f2ed94130780b444e2e10c1484d5e45f64332", + "result" : "valid" + }, + { + "tcId" : 532, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100a22928b3022fd554670a86ed519a48d8448dc90856e9c40589076baff591e076022100b4005a89aef027e5063a89709fbc66a05eb12d8d34af84f35ea7ac93f7bbd40e", + "result" : "valid" + }, + { + "tcId" : 533, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100a277181e641edafbdb359801605791c833ff3b462dac3c4d3608d479c98090ff0221008b2ad68880cede2290a996fe5b7003610c5c9f53e1dcf2cdb2ad815e2ba5c1cf", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f55a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73", + "wx" : "00fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f5", + "wy" : "5a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f55a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE////+UgIHmoEWN2PnnOPJmX/kFmt\naqwHCDGMTKmnpPVairy6LdqEdDEe5UFJuXPK4MD7iVV60L945lKaFmO9cw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 534, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30450220760c487841a7214e9850b5569d99fe3ff9dddc41dee7313a780921d8d3657b16022100b99d63e3cc81458801d5fd5926405d33b894e0f96a85c3c4a929a45c828d76d0", + "result" : "valid" + }, + { + "tcId" : 535, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30450221009b7e72ac454505017c5377b2c379f31a7a0268b739fca4c97dfe1c9aa4bc548e02201e65cbee69a42ab0a7ae50e9acceaa0971574fb604958876ad6316c39eebdd96", + "result" : "valid" + }, + { + "tcId" : 536, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502204a7e44e4a8a9fee22647923eaee0368b3fa408edaa19b406507309b13e073855022100fd8597585fa0270c8cdf855a7a69a843eb28124ecf90ac53a58a847c7b43c7a6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0400000003fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71", + "wx" : "03fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e", + "wy" : "1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000400000003fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAAAAA/oV+WOUnV8DpvXH+G+eABXu\nsjrrv/EXOTe6dI4QmYcgcOjofFVfoTZZzKXX+tz8sAI+qIlUjKSK8rp+cQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 537, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402204589f0c24d1b2f89c2e806f667297c844c63330d6b9a079b2bdd2d95247e3eae022075daa1da09a3f1ed8de1aacc7039a721c46f9ebcd4672750f2fd9c2f70f1e6ed", + "result" : "valid" + }, + { + "tcId" : 538, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30450220377578a81da586eae269f05c9bb2280a517ab3184e02179aca5d64dee1a930c7022100cc1735efd4b43e8bdba8c1b44f9ec3e62577e5f4f6543051467bacd9eaaa4d4a", + "result" : "valid" + }, + { + "tcId" : 539, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502207f722716c279f3d14563fbd8cbf3abcd51c3305795609e04c8ed7ede12ae25180221008a996a370679c3ce6232244d64481e96e47bf6611aa5490000c0b1dffc231aa1", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015000000001352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2", + "wx" : "00bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015", + "wy" : "1352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015000000001352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvLspFMefBF6qbsu8YSgWs75dLWeW\ncH2BJen4UcGK8BUAAAAAE1K7Sg+i6kzOuatj3WhK3loRJ7zzAKaYpxk7wg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 540, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402202f11d967790dd4387a218929b3fc0f130238ec6fd9321348fe631a1e607bd74202203b52a42606d0daa135092d89ab74b3c4e72b4ed213137406d4b50fa84c4ea049", + "result" : "valid" + }, + { + "tcId" : 541, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30440220192d299e96272a0c49ed1b15f9047b54b4878eaf350a7b2f5439b1e3c83f9703022026513e9cbbaca7946f3d6d90b5cc65a985cdfe089734f944ab74842a4dc4127d", + "result" : "valid" + }, + { + "tcId" : 542, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100ebd7a6f1450f8bb9e9abf9f66c4143d28c8c845b2e260ab0fff3f7ba5837f9440221009928afe57df6b8c90b7af7c3da981b71db6ae3a5a21a4c5a48b71628e5811a9e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d", + "wx" : "00bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015", + "wy" : "00fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvLspFMefBF6qbsu8YSgWs75dLWeW\ncH2BJen4UcGK8BX////+7K1EtvBdFbMxRlScIpe1IqXu2EMM/1lnWObEPQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA3-512", + "tests" : [ + { + "tcId" : 543, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3044022037fd00b14ff469a8bb4d2f9c6ca228c4c24b85719389a46099653c41174e9afd02205f64dc68893cf3186df3e83af70e96e9f2103d25b8ddffecda96e8e9181619cf", + "result" : "valid" + }, + { + "tcId" : 544, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502203ce339a63ea4cc1a6b12d1e66b91205e8af530eebe3208359c5327b242b2b669022100f2b1d6dae62bfe9c44b1cbd56cf0de865a1201c0486d658da5fc029ad47b917e", + "result" : "valid" + }, + { + "tcId" : 545, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502207bf225bec33ce7fb4014097e350c1504d3374028cda8f6fbbac4e0fa5319a048022100aaa45d54eba6bb3ce00ce8e63de24dc7ee19069062e8d340663adcac07f097cd", + "result" : "valid" + } + ] + } + ] +} diff --git a/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha512_test.json b/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha512_test.json new file mode 100644 index 0000000000..c168f4be1a --- /dev/null +++ b/packages/crypto/testdata/wycheproof/ecdsa_secp256r1_sha512_test.json @@ -0,0 +1,7206 @@ +{ + "algorithm" : "ECDSA", + "schema" : "ecdsa_verify_schema.json", + "generatorVersion" : "0.9rc5", + "numberOfTests" : 541, + "header" : [ + "Test vectors of type EcdsaVerify are meant for the verification", + "of ASN encoded ECDSA signatures." + ], + "notes" : { + "ArithmeticError" : { + "bugType" : "EDGE_CASE", + "description" : "Some implementations of ECDSA have arithmetic errors that occur when intermediate results have extreme values. This test vector has been constructed to test such occurences.", + "cves" : [ + "CVE-2017-18146" + ] + }, + "BerEncodedSignature" : { + "bugType" : "BER_ENCODING", + "description" : "ECDSA signatures are usually DER encoded. This signature contains valid values for r and s, but it uses alternative BER encoding.", + "effect" : "Accepting alternative BER encodings may be benign in some cases, or be an issue if protocol requires signature malleability.", + "cves" : [ + "CVE-2020-14966", + "CVE-2020-13822", + "CVE-2019-14859", + "CVE-2016-1000342" + ] + }, + "EdgeCasePublicKey" : { + "bugType" : "EDGE_CASE", + "description" : "The test vector uses a special case public key. " + }, + "EdgeCaseShamirMultiplication" : { + "bugType" : "EDGE_CASE", + "description" : "Shamir proposed a fast method for computing the sum of two scalar multiplications efficiently. This test vector has been constructed so that an intermediate result is the point at infinity if Shamir's method is used." + }, + "IntegerOverflow" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified, so that the original value is restored if the implementation ignores the most significant bits.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "InvalidEncoding" : { + "bugType" : "CAN_OF_WORMS", + "description" : "ECDSA signatures are encoded using ASN.1. This test vector contains an incorrectly encoded signature. The test vector itself was generated from a valid signature by modifying its encoding.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "InvalidSignature" : { + "bugType" : "AUTH_BYPASS", + "description" : "The signature contains special case values such as r=0 and s=0. Buggy implementations may accept such values, if the implementation does not check boundaries and computes s^(-1) == 0.", + "effect" : "Accepting such signatures can have the effect that an adversary can forge signatures without even knowning the message to sign.", + "cves" : [ + "CVE-2022-21449", + "CVE-2021-43572", + "CVE-2022-24884" + ] + }, + "InvalidTypesInSignature" : { + "bugType" : "AUTH_BYPASS", + "description" : "The signature contains invalid types. Dynamic typed languages sometime coerce such values of different types into integers. If an implementation is careless and has additional bugs, such as not checking integer boundaries then it may be possible that such signatures are accepted.", + "effect" : "Accepting such signatures can have the effect that an adversary can forge signatures without even knowning the message to sign.", + "cves" : [ + "CVE-2022-21449" + ] + }, + "MissingZero" : { + "bugType" : "LEGACY", + "description" : "Some implementations of ECDSA and DSA incorrectly encode r and s by not including leading zeros in the ASN encoding of integers when necessary. Hence, some implementations (e.g. jdk) allow signatures with incorrect ASN encodings assuming that the signature is otherwise valid.", + "effect" : "While signatures are more malleable if such signatures are accepted, this typically leads to no vulnerability, since a badly encoded signature can be reencoded correctly." + }, + "ModifiedInteger" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified. The goal is to check for arithmetic errors.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "ModifiedSignature" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an invalid signature that was generated from a valid signature by modifying it.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "ModularInverse" : { + "bugType" : "EDGE_CASE", + "description" : "The test vectors contains a signature where computing the modular inverse of s hits an edge case.", + "effect" : "While the signature in this test vector is constructed and similar cases are unlikely to occur, it is important to determine if the underlying arithmetic error can be used to forge signatures.", + "cves" : [ + "CVE-2019-0865" + ] + }, + "PointDuplication" : { + "bugType" : "EDGE_CASE", + "description" : "Some implementations of ECDSA do not handle duplication and points at infinity correctly. This is a test vector that has been specially crafted to check for such an omission.", + "cves" : [ + "2020-12607", + "CVE-2015-2730" + ] + }, + "RangeCheck" : { + "bugType" : "CAN_OF_WORMS", + "description" : "The test vector contains an r and s that has been modified. By adding or subtracting the order of the group (or other values) the test vector checks whether signature verification verifies the range of r and s.", + "effect" : "Without further analysis it is unclear if the modification can be used to forge signatures." + }, + "SmallRandS" : { + "bugType" : "EDGE_CASE", + "description" : "The test vectors contains a signature where both r and s are small integers. Some libraries cannot verify such signatures.", + "effect" : "While the signature in this test vector is constructed and similar cases are unlikely to occur, it is important to determine if the underlying arithmetic error can be used to forge signatures.", + "cves" : [ + "2020-13895" + ] + }, + "SpecialCaseHash" : { + "bugType" : "EDGE_CASE", + "description" : "The test vector contains a signature where the hash of the message is a special case, e.g., contains a long run of 0 or 1 bits." + }, + "Untruncatedhash" : { + "bugType" : "MISSING_STEP", + "description" : "If the size of the digest is longer than the size of the underlying order of the multiplicative subgroup then the hash digest must be truncated during signature generation and verification. This test vector contains a signature where this step has been omitted." + }, + "ValidSignature" : { + "bugType" : "BASIC", + "description" : "The test vector contains a valid signature that was generated pseudorandomly. Such signatures should not fail to verify unless some of the parameters (e.g. curve or hash function) are not supported." + } + }, + "testGroups" : [ + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0404aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad587d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d", + "wx" : "04aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad5", + "wy" : "0087d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000404aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad587d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEBKrsc2NXJvIT+4qeZNo7hjLkFJWp\nRNAEW1IuunJA+tWH2TFXmKqjpboBd1eHztBeqve04J/IHW0apUboNl1SXQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 1, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "", + "sig" : "30440220093f3825c0cf820cced816a3a67446c85606a6d529e43857643fccc11e1f705f0220769782888c63058630f97a5891c8700e82979e4f233586bfc5042fa73cb70a4e", + "result" : "valid" + }, + { + "tcId" : 2, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "4d7367", + "sig" : "3046022100e8564e3e515a09f9f35258442b99e162d27e10975fcb7963d3c26319dc093f84022100c3af01ed0fd0148749ca323364846c862fc6f4beb682b7ead3b2d89b9da8bad4", + "result" : "valid" + }, + { + "tcId" : 3, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "304502201412254f8c1dd2742a00ddee5192e7baa288741026871f3057ad9f983b5ab114022100bcdf878fa156f37040922698ad6fb6928601ddc26c40448ea660e67c25eda090", + "result" : "valid" + }, + { + "tcId" : 4, + "comment" : "pseudorandom signature", + "flags" : [ + "ValidSignature" + ], + "msg" : "0000000000000000000000000000000000000000", + "sig" : "30450221009e0676048381839bb0a4703a0ae38facfe1e2c61bd25950c896aa975cd6ec86902206ea0cedf96f11fff0e746941183492f4d17272c92449afd20e34041a6894ee82", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e", + "wx" : "2927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838", + "wy" : "00c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKSexBRK64+3c/kZ4KBKLrSkDJpkZ\n9whgacjE32xzKDjHeHlk6qwA5ZIfsUmKYPRgZ2az2WhQAVWNGpdOc0FRPg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 5, + "comment" : "signature malleability", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "304402202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c002205f85a63a5be977ad714cea16b10035f07cadf7513ae8cca86f35b7692aafd69f", + "result" : "valid" + }, + { + "tcId" : 6, + "comment" : "Legacy: ASN encoding of s misses leading 0", + "flags" : [ + "MissingZero" + ], + "msg" : "313233343030", + "sig" : "304402202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00220a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 7, + "comment" : "valid", + "flags" : [ + "ValidSignature" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "valid" + }, + { + "tcId" : 8, + "comment" : "length of sequence [r, s] uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "30814502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 9, + "comment" : "length of sequence [r, s] contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "3082004502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 10, + "comment" : "length of sequence [r, s] uses 70 instead of 69", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304602202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 11, + "comment" : "length of sequence [r, s] uses 68 instead of 69", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304402202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 12, + "comment" : "uint32 overflow in length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3085010000004502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 13, + "comment" : "uint64 overflow in length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308901000000000000004502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 14, + "comment" : "length of sequence [r, s] = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30847fffffff02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 15, + "comment" : "length of sequence [r, s] = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30848000000002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 16, + "comment" : "length of sequence [r, s] = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3084ffffffff02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 17, + "comment" : "length of sequence [r, s] = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3085ffffffffff02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 18, + "comment" : "length of sequence [r, s] = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3088ffffffffffffffff02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 19, + "comment" : "incorrect length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30ff02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 20, + "comment" : "replaced sequence [r, s] by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 21, + "comment" : "removing sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "", + "result" : "invalid" + }, + { + "tcId" : 22, + "comment" : "lonely sequence tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30", + "result" : "invalid" + }, + { + "tcId" : 23, + "comment" : "appending 0's to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000", + "result" : "invalid" + }, + { + "tcId" : 24, + "comment" : "prepending 0's to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3047000002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 25, + "comment" : "appending unused 0's to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000", + "result" : "invalid" + }, + { + "tcId" : 26, + "comment" : "appending null value to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20500", + "result" : "invalid" + }, + { + "tcId" : 27, + "comment" : "prepending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a498177304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 28, + "comment" : "prepending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30492500304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 29, + "comment" : "appending garbage to sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3047304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20004deadbeef", + "result" : "invalid" + }, + { + "tcId" : 30, + "comment" : "including undefined tags", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304daa00bb00cd00304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 31, + "comment" : "including undefined tags", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d2228aa00bb00cd0002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 32, + "comment" : "including undefined tags", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c02229aa00bb00cd00022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 33, + "comment" : "truncated length of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3081", + "result" : "invalid" + }, + { + "tcId" : 34, + "comment" : "including undefined tags to sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304baa02aabb304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 35, + "comment" : "using composition with indefinite length for sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3080304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000", + "result" : "invalid" + }, + { + "tcId" : 36, + "comment" : "using composition with wrong tag for sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3080314502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000", + "result" : "invalid" + }, + { + "tcId" : 37, + "comment" : "Replacing sequence [r, s] with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "0500", + "result" : "invalid" + }, + { + "tcId" : 38, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "2e4502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 39, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "2f4502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 40, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "314502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 41, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "324502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 42, + "comment" : "changing tag value of sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "ff4502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 43, + "comment" : "dropping value of sequence [r, s]", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3000", + "result" : "invalid" + }, + { + "tcId" : 44, + "comment" : "using composition for sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30493001023044202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 45, + "comment" : "truncated sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304402202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34e", + "result" : "invalid" + }, + { + "tcId" : 46, + "comment" : "truncated sequence [r, s]", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3044202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 47, + "comment" : "sequence [r, s] of size 4166 to check for overflows", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3082104602202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 48, + "comment" : "indefinite length", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "308002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000", + "result" : "invalid" + }, + { + "tcId" : 49, + "comment" : "indefinite length with truncated delimiter", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb200", + "result" : "invalid" + }, + { + "tcId" : 50, + "comment" : "indefinite length with additional element", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "308002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb205000000", + "result" : "invalid" + }, + { + "tcId" : 51, + "comment" : "indefinite length with truncated element", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2060811220000", + "result" : "invalid" + }, + { + "tcId" : 52, + "comment" : "indefinite length with garbage", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000fe02beef", + "result" : "invalid" + }, + { + "tcId" : 53, + "comment" : "indefinite length with nonempty EOC", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "308002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20002beef", + "result" : "invalid" + }, + { + "tcId" : 54, + "comment" : "prepend empty sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3047300002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 55, + "comment" : "append empty sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb23000", + "result" : "invalid" + }, + { + "tcId" : 56, + "comment" : "append zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304802202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2020100", + "result" : "invalid" + }, + { + "tcId" : 57, + "comment" : "append garbage with high tag number", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304802202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2bf7f00", + "result" : "invalid" + }, + { + "tcId" : 58, + "comment" : "append null with explicit tag", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304902202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2a0020500", + "result" : "invalid" + }, + { + "tcId" : 59, + "comment" : "append null with implicit tag", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2a000", + "result" : "invalid" + }, + { + "tcId" : 60, + "comment" : "sequence of sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3047304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 61, + "comment" : "truncated sequence: removed last 1 elements", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302202202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0", + "result" : "invalid" + }, + { + "tcId" : 62, + "comment" : "repeating element in sequence", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "306802202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 63, + "comment" : "flipped bit 0 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30432478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c1022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 64, + "comment" : "flipped bit 32 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30432478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42a98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 65, + "comment" : "flipped bit 48 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30432478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c67f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 66, + "comment" : "flipped bit 64 in r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30432478f1d049f6d857ac900a7af1772226a4c59b345fbb90603c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 67, + "comment" : "length of r uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "30460281202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 68, + "comment" : "length of r contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "3047028200202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 69, + "comment" : "length of r uses 33 instead of 32", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502212478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 70, + "comment" : "length of r uses 31 instead of 32", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3045021f2478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 71, + "comment" : "uint32 overflow in length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a028501000000202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 72, + "comment" : "uint64 overflow in length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e02890100000000000000202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 73, + "comment" : "length of r = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902847fffffff2478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 74, + "comment" : "length of r = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490284800000002478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 75, + "comment" : "length of r = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30490284ffffffff2478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 76, + "comment" : "length of r = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a0285ffffffffff2478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 77, + "comment" : "length of r = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d0288ffffffffffffffff2478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 78, + "comment" : "incorrect length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502ff2478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 79, + "comment" : "replaced r by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502802478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 80, + "comment" : "removing r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3023022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 81, + "comment" : "lonely integer tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "302402022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 82, + "comment" : "lonely integer tag", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "302302202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c002", + "result" : "invalid" + }, + { + "tcId" : 83, + "comment" : "appending 0's to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702222478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00000022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 84, + "comment" : "prepending 0's to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3047022200002478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 85, + "comment" : "appending unused 0's to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00000022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 86, + "comment" : "appending null value to r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702222478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00500022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 87, + "comment" : "prepending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a222549817702202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 88, + "comment" : "prepending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30492224250002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 89, + "comment" : "appending garbage to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d222202202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00004deadbeef022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 90, + "comment" : "truncated length of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30250281022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 91, + "comment" : "including undefined tags to r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b2226aa02aabb02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 92, + "comment" : "using composition with indefinite length for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3049228002202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00000022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 93, + "comment" : "using composition with wrong tag for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3049228003202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00000022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 94, + "comment" : "Replacing r with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30250500022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 95, + "comment" : "changing tag value of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304500202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 96, + "comment" : "changing tag value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304501202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 97, + "comment" : "changing tag value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304503202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 98, + "comment" : "changing tag value of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304504202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 99, + "comment" : "changing tag value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "3045ff202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 100, + "comment" : "dropping value of r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30250200022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 101, + "comment" : "using composition for r", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "30492224020124021f78f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 102, + "comment" : "modifying first byte of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202678f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 103, + "comment" : "modifying last byte of r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f98140022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 104, + "comment" : "truncated r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3044021f2478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 105, + "comment" : "truncated r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3044021f78f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 106, + "comment" : "r of size 4129 to check for overflows", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30821048028210212478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 107, + "comment" : "leading ff in r", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "30460221ff2478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 108, + "comment" : "replaced r by infinity", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3026090180022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 109, + "comment" : "replacing r with zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 110, + "comment" : "flipped bit 0 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304302202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c000a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb3", + "result" : "invalid" + }, + { + "tcId" : 111, + "comment" : "flipped bit 32 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304302202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c000a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841358d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 112, + "comment" : "flipped bit 48 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304302202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c000a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84851359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 113, + "comment" : "flipped bit 64 in s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304302202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c000a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dd84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 114, + "comment" : "length of s uses long form encoding", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "304602202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c002812100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 115, + "comment" : "length of s contains a leading 0", + "flags" : [ + "BerEncodedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00282002100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 116, + "comment" : "length of s uses 34 instead of 33", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022200a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 117, + "comment" : "length of s uses 32 instead of 33", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022000a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 118, + "comment" : "uint32 overflow in length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00285010000002100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 119, + "comment" : "uint64 overflow in length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304e02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0028901000000000000002100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 120, + "comment" : "length of s = 2**31 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c002847fffffff00a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 121, + "comment" : "length of s = 2**31", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c002848000000000a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 122, + "comment" : "length of s = 2**32 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00284ffffffff00a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 123, + "comment" : "length of s = 2**40 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00285ffffffffff00a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 124, + "comment" : "length of s = 2**64 - 1", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00288ffffffffffffffff00a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 125, + "comment" : "incorrect length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c002ff00a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 126, + "comment" : "replaced s by an indefinite length tag without termination", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0028000a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 127, + "comment" : "appending 0's to s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022300a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000", + "result" : "invalid" + }, + { + "tcId" : 128, + "comment" : "prepending 0's to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304702202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00223000000a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 129, + "comment" : "appending null value to s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304702202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022300a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20500", + "result" : "invalid" + }, + { + "tcId" : 130, + "comment" : "prepending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304a02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c02226498177022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 131, + "comment" : "prepending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c022252500022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 132, + "comment" : "appending garbage to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304d02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c02223022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20004deadbeef", + "result" : "invalid" + }, + { + "tcId" : 133, + "comment" : "truncated length of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "302402202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00281", + "result" : "invalid" + }, + { + "tcId" : 134, + "comment" : "including undefined tags to s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304b02202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c02227aa02aabb022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 135, + "comment" : "using composition with indefinite length for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c02280022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000", + "result" : "invalid" + }, + { + "tcId" : 136, + "comment" : "using composition with wrong tag for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c02280032100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000", + "result" : "invalid" + }, + { + "tcId" : 137, + "comment" : "Replacing s with NULL", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302402202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00500", + "result" : "invalid" + }, + { + "tcId" : 138, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0002100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 139, + "comment" : "changing tag value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0012100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 140, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0032100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 141, + "comment" : "changing tag value of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0042100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 142, + "comment" : "changing tag value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0ff2100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 143, + "comment" : "dropping value of s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "302402202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00200", + "result" : "invalid" + }, + { + "tcId" : 144, + "comment" : "using composition for s", + "flags" : [ + "InvalidEncoding" + ], + "msg" : "313233343030", + "sig" : "304902202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c022250201000220a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 145, + "comment" : "modifying first byte of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022102a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 146, + "comment" : "modifying last byte of s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34e32", + "result" : "invalid" + }, + { + "tcId" : 147, + "comment" : "truncated s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304402202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022000a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34e", + "result" : "invalid" + }, + { + "tcId" : 148, + "comment" : "s of size 4130 to check for overflows", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "3082104802202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00282102200a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 149, + "comment" : "leading ff in s", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "304602202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c00222ff00a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 150, + "comment" : "replaced s by infinity", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0090180", + "result" : "invalid" + }, + { + "tcId" : 151, + "comment" : "replacing s with zero", + "flags" : [ + "ModifiedSignature" + ], + "msg" : "313233343030", + "sig" : "302502202478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0020100", + "result" : "invalid" + }, + { + "tcId" : 152, + "comment" : "replaced r by r + n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30460221012478f1cf49f6d858ac900a7af177222661ac95e206d32ee63020beee955ca711022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 153, + "comment" : "replaced r by r - n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30460221ff2478f1d149f6d856ac900a7af1772226e7dea086b8a3f1dc48ad29689c965c6f022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 154, + "comment" : "replaced r by r + 256 * n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "3047022201002478f0d049f6d957ac900a7af17721e38bc048db775a1554f631b727fc1ed2c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 155, + "comment" : "replaced r by -r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30450220db870e2fb60927a8536ff5850e88ddd95b3a64cba0446f9ec3990bd467067e40022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 156, + "comment" : "replaced r by n - r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "3046022100db870e2eb60927a9536ff5850e88ddd918215f79475c0e23b752d6976369a391022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 157, + "comment" : "replaced r by -n - r", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30460221fedb870e30b60927a7536ff5850e88ddd99e536a1df92cd119cfdf41116aa358ef022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 158, + "comment" : "replaced r by r + 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "30460221012478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 159, + "comment" : "replaced r by r + 2**320", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "304e02290100000000000000002478f1d049f6d857ac900a7af1772226a4c59b345fbb90613c66f42b98f981c0022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 160, + "comment" : "replaced s by s + n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "3046022101a07a59c3a41688548eb315e94effca0efd1ffe0a13467061783dde1cce167403022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 161, + "comment" : "replaced s by s - n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "30450220a07a59c5a41688528eb315e94effca0f835208aec517335790ca4896d5502961022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 162, + "comment" : "replaced s by s + 256 * n", + "flags" : [ + "RangeCheck" + ], + "msg" : "313233343030", + "sig" : "304702220100a07a58c4a41689538eb315e94effc9cc2733b10383cd56d03e4ed65634d89fb2022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 163, + "comment" : "replaced s by -s", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30460221ff5f85a63b5be977ac714cea16b10035f0bfc6fca393d12e237b7beca62e4cb14e022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 164, + "comment" : "replaced s by -n - s", + "flags" : [ + "ModifiedInteger" + ], + "msg" : "313233343030", + "sig" : "30460221fe5f85a63c5be977ab714cea16b10035f102e001f5ecb98f9e87c221e331e98bfd022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 165, + "comment" : "replaced s by s + 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "3046022101a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 166, + "comment" : "replaced s by s - 2**256", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "30450220a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 167, + "comment" : "replaced s by s + 2**320", + "flags" : [ + "IntegerOverflow" + ], + "msg" : "313233343030", + "sig" : "304e0229010000000000000000a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2022100a07a59c4a41688538eb315e94effca0f4039035c6c2ed1dc84841359d1b34eb2", + "result" : "invalid" + }, + { + "tcId" : 168, + "comment" : "Signature with special case values r=0 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100020100", + "result" : "invalid" + }, + { + "tcId" : 169, + "comment" : "Signature with special case values r=0 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100020101", + "result" : "invalid" + }, + { + "tcId" : 170, + "comment" : "Signature with special case values r=0 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201000201ff", + "result" : "invalid" + }, + { + "tcId" : 171, + "comment" : "Signature with special case values r=0 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 172, + "comment" : "Signature with special case values r=0 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 173, + "comment" : "Signature with special case values r=0 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 174, + "comment" : "Signature with special case values r=0 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 175, + "comment" : "Signature with special case values r=0 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020100022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 176, + "comment" : "Signature with special case values r=1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101020100", + "result" : "invalid" + }, + { + "tcId" : 177, + "comment" : "Signature with special case values r=1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101020101", + "result" : "invalid" + }, + { + "tcId" : 178, + "comment" : "Signature with special case values r=1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201010201ff", + "result" : "invalid" + }, + { + "tcId" : 179, + "comment" : "Signature with special case values r=1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 180, + "comment" : "Signature with special case values r=1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 181, + "comment" : "Signature with special case values r=1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 182, + "comment" : "Signature with special case values r=1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 183, + "comment" : "Signature with special case values r=1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026020101022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 184, + "comment" : "Signature with special case values r=-1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff020100", + "result" : "invalid" + }, + { + "tcId" : 185, + "comment" : "Signature with special case values r=-1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff020101", + "result" : "invalid" + }, + { + "tcId" : 186, + "comment" : "Signature with special case values r=-1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff0201ff", + "result" : "invalid" + }, + { + "tcId" : 187, + "comment" : "Signature with special case values r=-1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 188, + "comment" : "Signature with special case values r=-1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 189, + "comment" : "Signature with special case values r=-1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 190, + "comment" : "Signature with special case values r=-1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 191, + "comment" : "Signature with special case values r=-1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "30260201ff022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 192, + "comment" : "Signature with special case values r=n and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020100", + "result" : "invalid" + }, + { + "tcId" : 193, + "comment" : "Signature with special case values r=n and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551020101", + "result" : "invalid" + }, + { + "tcId" : 194, + "comment" : "Signature with special case values r=n and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510201ff", + "result" : "invalid" + }, + { + "tcId" : 195, + "comment" : "Signature with special case values r=n and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 196, + "comment" : "Signature with special case values r=n and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 197, + "comment" : "Signature with special case values r=n and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 198, + "comment" : "Signature with special case values r=n and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 199, + "comment" : "Signature with special case values r=n and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 200, + "comment" : "Signature with special case values r=n - 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550020100", + "result" : "invalid" + }, + { + "tcId" : 201, + "comment" : "Signature with special case values r=n - 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550020101", + "result" : "invalid" + }, + { + "tcId" : 202, + "comment" : "Signature with special case values r=n - 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325500201ff", + "result" : "invalid" + }, + { + "tcId" : 203, + "comment" : "Signature with special case values r=n - 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 204, + "comment" : "Signature with special case values r=n - 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 205, + "comment" : "Signature with special case values r=n - 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 206, + "comment" : "Signature with special case values r=n - 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 207, + "comment" : "Signature with special case values r=n - 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 208, + "comment" : "Signature with special case values r=n + 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552020100", + "result" : "invalid" + }, + { + "tcId" : 209, + "comment" : "Signature with special case values r=n + 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552020101", + "result" : "invalid" + }, + { + "tcId" : 210, + "comment" : "Signature with special case values r=n + 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325520201ff", + "result" : "invalid" + }, + { + "tcId" : 211, + "comment" : "Signature with special case values r=n + 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 212, + "comment" : "Signature with special case values r=n + 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 213, + "comment" : "Signature with special case values r=n + 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 214, + "comment" : "Signature with special case values r=n + 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 215, + "comment" : "Signature with special case values r=n + 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 216, + "comment" : "Signature with special case values r=p and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff020100", + "result" : "invalid" + }, + { + "tcId" : 217, + "comment" : "Signature with special case values r=p and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff020101", + "result" : "invalid" + }, + { + "tcId" : 218, + "comment" : "Signature with special case values r=p and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0201ff", + "result" : "invalid" + }, + { + "tcId" : 219, + "comment" : "Signature with special case values r=p and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 220, + "comment" : "Signature with special case values r=p and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 221, + "comment" : "Signature with special case values r=p and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 222, + "comment" : "Signature with special case values r=p and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 223, + "comment" : "Signature with special case values r=p and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 224, + "comment" : "Signature with special case values r=p + 1 and s=0", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000001000000000000000000000000020100", + "result" : "invalid" + }, + { + "tcId" : 225, + "comment" : "Signature with special case values r=p + 1 and s=1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000001000000000000000000000000020101", + "result" : "invalid" + }, + { + "tcId" : 226, + "comment" : "Signature with special case values r=p + 1 and s=-1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff000000010000000000000000000000010000000000000000000000000201ff", + "result" : "invalid" + }, + { + "tcId" : 227, + "comment" : "Signature with special case values r=p + 1 and s=n", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "result" : "invalid" + }, + { + "tcId" : 228, + "comment" : "Signature with special case values r=p + 1 and s=n - 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550", + "result" : "invalid" + }, + { + "tcId" : 229, + "comment" : "Signature with special case values r=p + 1 and s=n + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552", + "result" : "invalid" + }, + { + "tcId" : 230, + "comment" : "Signature with special case values r=p + 1 and s=p", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff", + "result" : "invalid" + }, + { + "tcId" : 231, + "comment" : "Signature with special case values r=p + 1 and s=p + 1", + "flags" : [ + "InvalidSignature" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000001000000000000000000000000022100ffffffff00000001000000000000000000000001000000000000000000000000", + "result" : "invalid" + }, + { + "tcId" : 232, + "comment" : "Signature encoding contains incorrect types: r=0, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008020100090380fe01", + "result" : "invalid" + }, + { + "tcId" : 233, + "comment" : "Signature encoding contains incorrect types: r=0, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100090142", + "result" : "invalid" + }, + { + "tcId" : 234, + "comment" : "Signature encoding contains incorrect types: r=0, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100010101", + "result" : "invalid" + }, + { + "tcId" : 235, + "comment" : "Signature encoding contains incorrect types: r=0, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020100010100", + "result" : "invalid" + }, + { + "tcId" : 236, + "comment" : "Signature encoding contains incorrect types: r=0, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201000500", + "result" : "invalid" + }, + { + "tcId" : 237, + "comment" : "Signature encoding contains incorrect types: r=0, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201000c00", + "result" : "invalid" + }, + { + "tcId" : 238, + "comment" : "Signature encoding contains incorrect types: r=0, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201000c0130", + "result" : "invalid" + }, + { + "tcId" : 239, + "comment" : "Signature encoding contains incorrect types: r=0, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201003000", + "result" : "invalid" + }, + { + "tcId" : 240, + "comment" : "Signature encoding contains incorrect types: r=0, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201003003020100", + "result" : "invalid" + }, + { + "tcId" : 241, + "comment" : "Signature encoding contains incorrect types: r=1, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008020101090380fe01", + "result" : "invalid" + }, + { + "tcId" : 242, + "comment" : "Signature encoding contains incorrect types: r=1, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101090142", + "result" : "invalid" + }, + { + "tcId" : 243, + "comment" : "Signature encoding contains incorrect types: r=1, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101010101", + "result" : "invalid" + }, + { + "tcId" : 244, + "comment" : "Signature encoding contains incorrect types: r=1, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006020101010100", + "result" : "invalid" + }, + { + "tcId" : 245, + "comment" : "Signature encoding contains incorrect types: r=1, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201010500", + "result" : "invalid" + }, + { + "tcId" : 246, + "comment" : "Signature encoding contains incorrect types: r=1, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201010c00", + "result" : "invalid" + }, + { + "tcId" : 247, + "comment" : "Signature encoding contains incorrect types: r=1, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201010c0130", + "result" : "invalid" + }, + { + "tcId" : 248, + "comment" : "Signature encoding contains incorrect types: r=1, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201013000", + "result" : "invalid" + }, + { + "tcId" : 249, + "comment" : "Signature encoding contains incorrect types: r=1, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201013003020100", + "result" : "invalid" + }, + { + "tcId" : 250, + "comment" : "Signature encoding contains incorrect types: r=-1, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201ff090380fe01", + "result" : "invalid" + }, + { + "tcId" : 251, + "comment" : "Signature encoding contains incorrect types: r=-1, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff090142", + "result" : "invalid" + }, + { + "tcId" : 252, + "comment" : "Signature encoding contains incorrect types: r=-1, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff010101", + "result" : "invalid" + }, + { + "tcId" : 253, + "comment" : "Signature encoding contains incorrect types: r=-1, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff010100", + "result" : "invalid" + }, + { + "tcId" : 254, + "comment" : "Signature encoding contains incorrect types: r=-1, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff0500", + "result" : "invalid" + }, + { + "tcId" : 255, + "comment" : "Signature encoding contains incorrect types: r=-1, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff0c00", + "result" : "invalid" + }, + { + "tcId" : 256, + "comment" : "Signature encoding contains incorrect types: r=-1, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060201ff0c0130", + "result" : "invalid" + }, + { + "tcId" : 257, + "comment" : "Signature encoding contains incorrect types: r=-1, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050201ff3000", + "result" : "invalid" + }, + { + "tcId" : 258, + "comment" : "Signature encoding contains incorrect types: r=-1, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30080201ff3003020100", + "result" : "invalid" + }, + { + "tcId" : 259, + "comment" : "Signature encoding contains incorrect types: r=n, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551090380fe01", + "result" : "invalid" + }, + { + "tcId" : 260, + "comment" : "Signature encoding contains incorrect types: r=n, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551090142", + "result" : "invalid" + }, + { + "tcId" : 261, + "comment" : "Signature encoding contains incorrect types: r=n, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551010101", + "result" : "invalid" + }, + { + "tcId" : 262, + "comment" : "Signature encoding contains incorrect types: r=n, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551010100", + "result" : "invalid" + }, + { + "tcId" : 263, + "comment" : "Signature encoding contains incorrect types: r=n, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510500", + "result" : "invalid" + }, + { + "tcId" : 264, + "comment" : "Signature encoding contains incorrect types: r=n, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510c00", + "result" : "invalid" + }, + { + "tcId" : 265, + "comment" : "Signature encoding contains incorrect types: r=n, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510c0130", + "result" : "invalid" + }, + { + "tcId" : 266, + "comment" : "Signature encoding contains incorrect types: r=n, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325513000", + "result" : "invalid" + }, + { + "tcId" : 267, + "comment" : "Signature encoding contains incorrect types: r=n, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325513003020100", + "result" : "invalid" + }, + { + "tcId" : 268, + "comment" : "Signature encoding contains incorrect types: r=p, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff090380fe01", + "result" : "invalid" + }, + { + "tcId" : 269, + "comment" : "Signature encoding contains incorrect types: r=p, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff090142", + "result" : "invalid" + }, + { + "tcId" : 270, + "comment" : "Signature encoding contains incorrect types: r=p, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff010101", + "result" : "invalid" + }, + { + "tcId" : 271, + "comment" : "Signature encoding contains incorrect types: r=p, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff010100", + "result" : "invalid" + }, + { + "tcId" : 272, + "comment" : "Signature encoding contains incorrect types: r=p, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0500", + "result" : "invalid" + }, + { + "tcId" : 273, + "comment" : "Signature encoding contains incorrect types: r=p, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0c00", + "result" : "invalid" + }, + { + "tcId" : 274, + "comment" : "Signature encoding contains incorrect types: r=p, s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0c0130", + "result" : "invalid" + }, + { + "tcId" : 275, + "comment" : "Signature encoding contains incorrect types: r=p, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3025022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff3000", + "result" : "invalid" + }, + { + "tcId" : 276, + "comment" : "Signature encoding contains incorrect types: r=p, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3028022100ffffffff00000001000000000000000000000000ffffffffffffffffffffffff3003020100", + "result" : "invalid" + }, + { + "tcId" : 277, + "comment" : "Signature encoding contains incorrect types: r=0.25, s=0.25", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300a090380fe01090380fe01", + "result" : "invalid" + }, + { + "tcId" : 278, + "comment" : "Signature encoding contains incorrect types: r=nan, s=nan", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006090142090142", + "result" : "invalid" + }, + { + "tcId" : 279, + "comment" : "Signature encoding contains incorrect types: r=True, s=True", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010101010101", + "result" : "invalid" + }, + { + "tcId" : 280, + "comment" : "Signature encoding contains incorrect types: r=False, s=False", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010100010100", + "result" : "invalid" + }, + { + "tcId" : 281, + "comment" : "Signature encoding contains incorrect types: r=Null, s=Null", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300405000500", + "result" : "invalid" + }, + { + "tcId" : 282, + "comment" : "Signature encoding contains incorrect types: r=empyt UTF-8 string, s=empyt UTF-8 string", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30040c000c00", + "result" : "invalid" + }, + { + "tcId" : 283, + "comment" : "Signature encoding contains incorrect types: r=\"0\", s=\"0\"", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060c01300c0130", + "result" : "invalid" + }, + { + "tcId" : 284, + "comment" : "Signature encoding contains incorrect types: r=empty list, s=empty list", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300430003000", + "result" : "invalid" + }, + { + "tcId" : 285, + "comment" : "Signature encoding contains incorrect types: r=list containing 0, s=list containing 0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "300a30030201003003020100", + "result" : "invalid" + }, + { + "tcId" : 286, + "comment" : "Signature encoding contains incorrect types: r=0.25, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3008090380fe01020100", + "result" : "invalid" + }, + { + "tcId" : 287, + "comment" : "Signature encoding contains incorrect types: r=nan, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006090142020100", + "result" : "invalid" + }, + { + "tcId" : 288, + "comment" : "Signature encoding contains incorrect types: r=True, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010101020100", + "result" : "invalid" + }, + { + "tcId" : 289, + "comment" : "Signature encoding contains incorrect types: r=False, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "3006010100020100", + "result" : "invalid" + }, + { + "tcId" : 290, + "comment" : "Signature encoding contains incorrect types: r=Null, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050500020100", + "result" : "invalid" + }, + { + "tcId" : 291, + "comment" : "Signature encoding contains incorrect types: r=empyt UTF-8 string, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30050c00020100", + "result" : "invalid" + }, + { + "tcId" : 292, + "comment" : "Signature encoding contains incorrect types: r=\"0\", s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30060c0130020100", + "result" : "invalid" + }, + { + "tcId" : 293, + "comment" : "Signature encoding contains incorrect types: r=empty list, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30053000020100", + "result" : "invalid" + }, + { + "tcId" : 294, + "comment" : "Signature encoding contains incorrect types: r=list containing 0, s=0", + "flags" : [ + "InvalidTypesInSignature" + ], + "msg" : "313233343030", + "sig" : "30083003020100020100", + "result" : "invalid" + }, + { + "tcId" : 295, + "comment" : "Edge case for Shamir multiplication", + "flags" : [ + "EdgeCaseShamirMultiplication" + ], + "msg" : "3932323038", + "sig" : "3044022064a1aab5000d0e804f3e2fc02bdee9be8ff312334e2ba16d11547c97711c898e02203c623e7f7598376825fa8bc09e727c75794cbb4ee8716ae15c31cd1cbe9ca3ee", + "result" : "valid" + }, + { + "tcId" : 296, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33393439313934313732", + "sig" : "304402203a4f61f7f8c4546e3580f7848411786fee1229a07a6ecf5fb84870869188215d022018c5ce44354e2274eadb8fea319f8d6f60944532dbaae86bfd8105f253041bcb", + "result" : "valid" + }, + { + "tcId" : 297, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35333637363431383737", + "sig" : "304502203fa9975fb2b08b7b6e33f3843099da3f43f1dcfe9b171a60cafd5489ca9c5328022100985a86825a0cc728f5d9dac2a513b49127a06100f0fc4b8b1f200903e0df9ed2", + "result" : "valid" + }, + { + "tcId" : 298, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35363731343831303935", + "sig" : "304402204d66e7ee5edd02ab96db25954050079ef8de1d0f02f34d4d75112eaf3f73124002206292d1563140013c589be40e599862bdd6bda2103809928928a119b43851a2ce", + "result" : "valid" + }, + { + "tcId" : 299, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3131323037313732393039", + "sig" : "3046022100a9228305f7b486f568eb65d44e49ba007e3f14b8f23c689c952e4ced1e6cf91e022100b73c74d28bd1268002bed784a6b06c40a90ee5938ea6d08f272d027e0f96a72c", + "result" : "valid" + }, + { + "tcId" : 300, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3131323938303334323336", + "sig" : "304402203fa39842bfab6c38afa7963c60beb09484d4579fc75ef09efff44e91bc62ca8302205612add1924f0285ace5b158828e2b32ab2b6e7f10ee68dca1cc54591fee1fec", + "result" : "valid" + }, + { + "tcId" : 301, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "39383736303239363833", + "sig" : "3045022006c04b02edfeecd8620f035ea4f449bd924593e86e5288a6f22d1923b0e2e8a9022100f666718e6fefb515bb9339d29cc0e58cfba89d605ca0066bca87f6a3f08ebcfa", + "result" : "valid" + }, + { + "tcId" : 302, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3230323034323936353139", + "sig" : "304402201ddd953c32a5f84109cd4d9ec8c364dd318376ff5d228211a367483077d638800220563dba4845de762baf04910618d587e0dd0c97dd1c9785c24ffdf2f8a660abf2", + "result" : "valid" + }, + { + "tcId" : 303, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31343531363639313830", + "sig" : "30460221009fe4ec4831ef4945f100d5d35a2e6312411ca5df6c900ca60690f2985d553482022100c674ad5e1bead2f767c9248e444452a4a8530dd47246cbbc968da865bdf212b6", + "result" : "valid" + }, + { + "tcId" : 304, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31303933363835393531", + "sig" : "3046022100e8703d6b16a79fc2ab3653cece29d06f65dd6f2c230cb08ee30c5517407d75db0221008cfeb87b8e95ddacd638b37d315393c5005f3ab8bba0cc1cd1a050829b775bfb", + "result" : "valid" + }, + { + "tcId" : 305, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36323139353630323031", + "sig" : "3046022100def608caf1f277d71403009f209c1d7eef11aaa7920397fbf429b8146181aece022100f3b8f2aa5b3df9a8b37313ea66ad5b74673f3e8614ff471b1eb6773217511fb0", + "result" : "valid" + }, + { + "tcId" : 306, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35363832343734333033", + "sig" : "304402204f5d08e8d936ce831d02d6b23fb8fce0e0750101af3ab9c3b28636b95a5e24ad02206f034480553bcecac221f8be8288163c55492e2e56a88f4d0341b61436a0a6c0", + "result" : "valid" + }, + { + "tcId" : 307, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33373336353331373836", + "sig" : "3045022100bdd822bfe3733d9f4b88764fe091db2e8f8af366e4c44d876bf82e62bd48c7ee02207fbf7750c5dc849a2c55dbdd067806f869652a7b3a57baa4733781d3128f02de", + "result" : "valid" + }, + { + "tcId" : 308, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34373935393033373932", + "sig" : "304402201c4fc02961b7f4245566b410bf08f447502ea4f75b15690344681efa2edf7b4b02207d63eef119dc88bc4a1b2c43ac21cd53892443661f8c3a97d558bf888c29f769", + "result" : "valid" + }, + { + "tcId" : 309, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "39333939363131303037", + "sig" : "304402206406f2d249ab1264e175476ca3300efd049fcad569dff40b922082b41cc7b7ce0220461872b803383f785077714a9566c4d652e87b2cad90dd4f4cc84bc55004c530", + "result" : "valid" + }, + { + "tcId" : 310, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31303837343931313835", + "sig" : "30450220415c924b9ba1902b340058117d90623602d48b8280583fb231dc93823b83a153022100f18be8cdc2063a26ab030504d3397dc6e9c6b6c56f4e3a59832c0e4643c0263c", + "result" : "valid" + }, + { + "tcId" : 311, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33323336363738353030", + "sig" : "3045022100d12e96c7d2f177b7cf6d8a1ede060a2b174dc993d43f5fe60f75604824b64fef02200c97d87035fcca0a5f47fe6461bb30cbaf05b37e4211ec3fcd51fc71a12239ca", + "result" : "valid" + }, + { + "tcId" : 312, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31343438393937373033", + "sig" : "304502207df72a64c7e982c88f83b3a22802690098147e0e42ef4371ef069910858c0646022100adbaa7b10c6a3f995ed5f83d7bda4ba626b355f34a72bf92ff788300b70e72d0", + "result" : "valid" + }, + { + "tcId" : 313, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35373134363332383037", + "sig" : "30440220047c4306f8d30e425ae70e0bee9e0b94faa4ef18a9c6d7f2c95de0fe6e2a323702207a4d0d0a596bd9ea3fe9850e9c8c77322594344623c0b46ac2a8c95948aefd98", + "result" : "valid" + }, + { + "tcId" : 314, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "323236343837343932", + "sig" : "3044022057d603a367e23af39c95dd418c0176da8b211d50b1be82bf5ef621a2640204f702205dc3f285ad015c4d71157bd11e5b8df6a89e4b267393b08b5ad5013bdae544b1", + "result" : "valid" + }, + { + "tcId" : 315, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35333533343439343739", + "sig" : "3044022011df6741021ec8cc567584aea16817c540859c4e5011551c00b097fcfc2337e50220668551919d43206ac0571fc5ad3ac0efb489bea599e7bf99fe4c7468d6c2c5e0", + "result" : "valid" + }, + { + "tcId" : 316, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34373837333033383830", + "sig" : "304402207451ffede471bd370406533436fc42a89daa0af4903d087cbc062fe7e54dbf700220590895398f22b48ce72cbf7c3d3ee1dd7fb0ee645edb0b1b1de35f370e5bf5ee", + "result" : "valid" + }, + { + "tcId" : 317, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32323332313935383233", + "sig" : "3045022100fc4c4d81da6f687a6426263193c1a680b67734a1b180647b8c76407cc4f0a9c6022056f775d372c9bee685374085be676c9cf31cf1f978a5e6ccb04e4a0761159cc7", + "result" : "valid" + }, + { + "tcId" : 318, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130373339333931393137", + "sig" : "3045022100feb978ca33c46ffba47eb63bb40de7833e43d5654575b54de1fea3d1de3c8ad50220108078ba997bfa064521baf342c97b0c64bd25240c8fd0fd7533ae2d03081b70", + "result" : "valid" + }, + { + "tcId" : 319, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31383831303237333135", + "sig" : "3046022100cc61729698467ba53da199ff481fe7433f194fc96367907e8dc5e1d9f42b1e2102210083dd9ef156e7c1f9c09b3bf86a4f1c88e5dd20cd74d997858e600797dbe74ad2", + "result" : "valid" + }, + { + "tcId" : 320, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36303631363933393037", + "sig" : "3045022100d47f616303ff0eb813eac32e760ba30ad445e0af7dc57e70756104823f6a895f0220047f2217b399c46a426b936a124980a6011f0896f51dbe07632828a72d7173f1", + "result" : "valid" + }, + { + "tcId" : 321, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "38383935323237303934", + "sig" : "3046022100cff73dfa2bac67ce1340b25c885abb3e7979ef7f840f15d5f19e86640cdd40a3022100c7d1210802796c4f251049ee08a2c29f5c71064033d17010c65bf2e94499381e", + "result" : "valid" + }, + { + "tcId" : 322, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31353830323334303934", + "sig" : "3044022010acaf9c485ab1220355b95be269f124e12eb252f2224b0fc50785eb2ee3df45022032443b557efc6896347fa778e1fcf33cbb769c9a7da896b20d93fea7c2791ea4", + "result" : "valid" + }, + { + "tcId" : 323, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33393635393931353132", + "sig" : "3046022100f919da0651abc2bff994a879d2778fa5195d57400e003e8dd6adb3fc7a0cc4cc0221009b945d06bd119665b278a59bd24fdd2350817d0be87997bee57b70c479d64a2d", + "result" : "valid" + }, + { + "tcId" : 324, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32323838373332313938", + "sig" : "3045022100cc38e7a018f6d70b2d9b49120cc9b4a169f2f72238821a86b81f553b6225d24e0220276efd8bf06ccce07c7aae35eaac3bd1c374dcf0cf0588d5e0e4171936688636", + "result" : "valid" + }, + { + "tcId" : 325, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32323330383837333139", + "sig" : "3045022100ff85ad66621991c318b85cef73c576cb2a8d43c568c1aafc85b40ef2a9a6b41c0220732a79e6837ebf8434fea6e7fefa948f506ae455c1a3eb36a030185a23037d96", + "result" : "valid" + }, + { + "tcId" : 326, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "313239303536393337", + "sig" : "3044022033f016e51eef9b1136380cb8b84c6b38b107e24c6731bd07cb1c7f4a29f33a83022036b177bb8be94c8be67ff3a41fcc4d22b5c9eb377da713eb014ae01c64ca6dd7", + "result" : "valid" + }, + { + "tcId" : 327, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32373438363536343338", + "sig" : "3045022100929413ee91f27454d74e91370a10a86fc98ac7305c8ab4ca59752bda3a7bfc370220483b47a26a0d7d2e6bd37d351d9ee37c5ec2a4686d884d78b6beb7f6b08c50f9", + "result" : "valid" + }, + { + "tcId" : 328, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37353833353032363034", + "sig" : "30450220578202c7d0abac93ca43dde3cb44414e5601c1eb557604cb9adb4bde0a12633b022100fb9a7412e307aee95ef4b53540571a21559414e5306794ab5182cfb229dab3e9", + "result" : "valid" + }, + { + "tcId" : 329, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32333237373534323739", + "sig" : "3045022046d45ad0bb75b8639d0e91d8450fc31887c211328a5784fc83b4cb7f5b962c1b022100d6751d13ede2079b7aa1d822bdb32d7f3cf00273a1ff03df90c0ec7c62a47568", + "result" : "valid" + }, + { + "tcId" : 330, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "373735353038353834", + "sig" : "3046022100abe84c941783d5ced284fea56341ecc68d6bdd3196d318fbd074641f8c885bd5022100bdea3c44d48e01aa40935c1c9723ff733199563440f26b4ecf0b444b0418d9f5", + "result" : "valid" + }, + { + "tcId" : 331, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3137393832363438333832", + "sig" : "3045022005277cdbf491e336fe81be24e393a161a4fb89112c9ffed1ee6649c406713408022100ab6934332e68e108bb0484d21c457dcf381a620c3a4712fdbfeb658a3fafd60c", + "result" : "valid" + }, + { + "tcId" : 332, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32333936373737333635", + "sig" : "30450220293825737c8c14430ed10dbadd7da337275f9b61d1d26377f778ffaa00c139de022100cdddec267a8678c96829bf6c1d6f38322e119937cfd2fee01e9dc9525f43ed6b", + "result" : "valid" + }, + { + "tcId" : 333, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35393938313035383031", + "sig" : "304402202041fdd6111c45dfd29e750e082dcdadc9a584a8a2be46580fb0ba3b3dc658620220421824fe987e4172a0f8bbcb7bcd9e1b073b7742ed9f9df98f2a1a37cd374ce3", + "result" : "valid" + }, + { + "tcId" : 334, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3136363737383237303537", + "sig" : "30450220267941db660e046ab14e795669e002b852f7788447c53ebef46a2056978b5574022100d00183bcaf75bc11e37653f952f6a6537151c3aa0a1b9e4e41b004a29185395b", + "result" : "valid" + }, + { + "tcId" : 335, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "323036323134333632", + "sig" : "304402205dcd7f6814739d47f80a363b9414e6cbfb5f0846223888510abd5b3903d7ae09022043418f138bb3c857c0ad750ca8389ebcf3719cb389634ac54a91de9f18fd7238", + "result" : "valid" + }, + { + "tcId" : 336, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36383432343936303435", + "sig" : "304502205e0e8cc0280409a0ce252da02b2424d2de3a52b406c3778932dbc60cb86c356702210093d25e929c5b00e950d89585ec6c01b6589ae0ec0af8a79c04df9e5b27b58bc5", + "result" : "valid" + }, + { + "tcId" : 337, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33323639383937333231", + "sig" : "304502204fcf9c9d9ffbf4e0b98268c087071bffe0673bb8dcb32aa667f8a639c364ea47022100820db0730bee8227fc831643fcb8e2ef9c0f7059ce42da45cf74828effa8d772", + "result" : "valid" + }, + { + "tcId" : 338, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31333837333234363932", + "sig" : "3046022100c60cd2e08248d58d1639b123633643c63f89aff611f998937ccb08c9113bcdca022100ac4bb470ce0164616dada7a173364ed3f9d16fd32c686136f904c99266fda17e", + "result" : "valid" + }, + { + "tcId" : 339, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34313138383837353336", + "sig" : "304502207cfdaf6f22c1c7668d7b6f56f8a7be3fdeeb17a7863539555bbfa899dd70c5f1022100cee151adc71e68483b95a7857a862ae0c5a6eee478d93d40ccc7d40a31dcbd90", + "result" : "valid" + }, + { + "tcId" : 340, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "393838363036353435", + "sig" : "304402202270be7ee033a706b59746eab34816be7e15c8784061d5281060707a0abe0a7d022056a163341ee95e7e3c04294a57f5f7d24bf3c3c6f13ef2f161077c47bd27665d", + "result" : "valid" + }, + { + "tcId" : 341, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32343739313135383435", + "sig" : "3044022016b5d2bfcaba21167a69f7433d0c476b21ded37d84dc74ca401a3ecddb2752a8022062852cf97d89adfb0ebbe6f398ee641bfea8a2271580aac8a3d8326d8c6e0ef9", + "result" : "valid" + }, + { + "tcId" : 342, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35303736383837333637", + "sig" : "3046022100d907eefa664115848b90c3d5baa0236f08eafaf81c0d52bb9d0f8acb57490847022100fd91bc45a76e31cdc58c4bfb3df27f6470d20b19f0fba6a77b6c8846650ed8a6", + "result" : "valid" + }, + { + "tcId" : 343, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "393838353036393637", + "sig" : "30450220048337b34f427e8774b3bf7c8ff4b1ae65d132ac8af94829bb2d32944579bb31022100bd6f8eab82213ccf80764644204bb6bf16c668729cdd31dd8596286c15686e8e", + "result" : "valid" + }, + { + "tcId" : 344, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32373231333036313331", + "sig" : "3046022100b2bc46b7c44293557ab7ebeb0264924277193f87a25d94c924df1518ba7c7260022100abf1f6238ff696aaafaf4f0cbbe152c3d771c5bfc43f36d7e5f5235819d02c1a", + "result" : "valid" + }, + { + "tcId" : 345, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33323034313031363535", + "sig" : "3045022040d4b38a61232e654ffd08b91e18609851f4189f7bf8a425ad59d9cbb1b54c990221009e775a7bd0d934c3ed886037f5d3b356f60eda41191690566e99677d7aaf64f3", + "result" : "valid" + }, + { + "tcId" : 346, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33313530363830393530", + "sig" : "3046022100ac8f64d7df8d9fea005744e3ac4af70aa3a38e5a0f3d069d85806a4f29710339022100c014e96decfef3857cc174f2c46ad0882bef0c4c8a17ce09441961e4ae8d2df3", + "result" : "valid" + }, + { + "tcId" : 347, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31373237343630313033", + "sig" : "3044022041b3766f41a673a01e2c0cab5ceedbcec8d82530a393f884d72aa4e6685dea0a0220073a55dca2da577cafb40e12dd20bf8529a13a6acdf9a1c7d4b2048d60876cb3", + "result" : "valid" + }, + { + "tcId" : 348, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3134353731343631323235", + "sig" : "304502201942755aa8128382cd8e35a4350c22cc45ba5704d99e8a240970df11956ad866022100f64cf1e0816cf7ac5044f73ba938e142ef3305cb09becb80a0a5b9ad7ba3eb07", + "result" : "valid" + }, + { + "tcId" : 349, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34313739353136303930", + "sig" : "3045022051aba4ff1c7ddf17e0632ab71684d8de6dc700219ef346cb28ce9dafc3565b3b022100b6aaebe1af0ad01f07a68bf1cf57f9d6040b43c14b7eb8238542760e32ce3b0c", + "result" : "valid" + }, + { + "tcId" : 350, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35383932373133303534", + "sig" : "304502210091efbfcc731650e9f004c38b71db146c17bf871c82c4e87716f7ff2f7f9e51d00220089ea631a7c5f05311c521d21ba798b5174881f0fd8095fb3a77515913efb6e0", + "result" : "valid" + }, + { + "tcId" : 351, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33383936313832323937", + "sig" : "304502204a7e47bd281ea09b9e3a32934c7a969e1f788f978b41585989f4689e804663fb022100e65f6bd702403cbbed7f8ad0045f331d4a96fbf8c43f71f11615b7d1b9153b7f", + "result" : "valid" + }, + { + "tcId" : 352, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "38323833333436373332", + "sig" : "3046022100c795f5da86e10a604d4f94bf7cac381c73edad1461d66929e53aa57ca294e89f022100bae784ab6c7b58332ee05e7d54169edf55ce45f030e71ae8df63969fb327a10c", + "result" : "valid" + }, + { + "tcId" : 353, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33333636393734383931", + "sig" : "3046022100ea68b24843b225f505e01c0e608b20b4d93e8faf6b9cf70cf8f9134a80e7b668022100a3abc044b4728f80fe414bdc66f032b262356720547bec7729fad94151c6adc7", + "result" : "valid" + }, + { + "tcId" : 354, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32313939313533323239", + "sig" : "3046022100bfe7502140c57a24a77edc3d9b3c4bc11d21bdb0b196977b7f2b13ac973ad697022100947a01da9731849d72b67ef7bc40b012480fd389895aad1f6b1cdbeab3b93b8d", + "result" : "valid" + }, + { + "tcId" : 355, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35363030333136383232", + "sig" : "304402203434ee1142740a0ab8623b97fc8dc2567eda45dadf6039b45c448819e840cf3002203c0fac0487841997202c29f3bf2df540b115b29dc619160d52203d4a1fd4b9f7", + "result" : "valid" + }, + { + "tcId" : 356, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "383639363531363935", + "sig" : "304502205338500e23ba96a0adc6ef84932e25fbad7435d9f70eb7f476c6912de12e33c8022100a002f5583ea8c0d7fb17136d0ee0415acf629879ce6b01ac52e3ecd7772a3704", + "result" : "valid" + }, + { + "tcId" : 357, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36353833393236333732", + "sig" : "304402204ff2d4e31f4180de6901d2d20341d12387c9c55f4cf003a742f049b84af6fe0502200312f38771414555fa5ed2817dcc629a8c7cf69d306300e87bc167278ec3ef37", + "result" : "valid" + }, + { + "tcId" : 358, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3133323035303135373235", + "sig" : "3044022051d665bad5f2d6306c6bbfe1f27555887670061d4df36ec9f4ce6cdfaf9ea7ac02202905e43f6207ee93df35a2e9fb9bc8098c448ae98a14e4ad1ebaea5d56b6e493", + "result" : "valid" + }, + { + "tcId" : 359, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35303835333330373931", + "sig" : "3046022100b804e0235f135aba7b7531b6831f26cc9fb77d3f83854957431be20706b813690221009d317fd08e4e0467617db819cde1d7d4d74da489b2bce4db055ea01eccfafcf2", + "result" : "valid" + }, + { + "tcId" : 360, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37383636383133313139", + "sig" : "30450221008ab50ef3660ccb6af34c78e795ded6b256ffca5c94f249f3d907fb65235ef680022049d5aaeae5a6d0c15b286e428b5e720cf37a822ede445baa143ffae69aba91b8", + "result" : "valid" + }, + { + "tcId" : 361, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32303832353339343239", + "sig" : "30440220571b9c46a47c5cc53a574c196c3fb07f3510c0f4443b9f2fe781252c24d343de022068a9aebd50ff165c89b5b9cb6c1754191958f360b4d2851a481a3e1106ee7809", + "result" : "valid" + }, + { + "tcId" : 362, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130303635393536363937", + "sig" : "304502204cb7817b04dc73be60d3711803bc10687a6e3f4ab79c4c1a4e9d63a73174d4eb022100ce398d2d6602d2af58a64042f830bf774aee18209d6fb5c743b6a6e437826b98", + "result" : "valid" + }, + { + "tcId" : 363, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33303234313831363034", + "sig" : "30450220684399c6cd6ebb1c5d5efb0d78dce40ebd48d9d944eb6548c9ce68d7fdc82229022100cf25c8e427fae359bfe60fa02964f4c9b8d6db54612e05c78c341f0a8c52d0b5", + "result" : "valid" + }, + { + "tcId" : 364, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37373637383532383734", + "sig" : "3045022020b7b36d5bc76fa182ca27152a99a956e6a0880000694296e31af98a7312d04b022100eeeabc5521f9856e920eb7d29ed7e4042f178ff706dff8eeb24b429e3b63402a", + "result" : "valid" + }, + { + "tcId" : 365, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "353434313939393734", + "sig" : "304402206b65c95e8e121d2e6ee506cfd62cb88e0bfb3589da40876898ef66c43982aca9022009642c05ad619b4402fd297eb57e29cca5c2eb6823931ba82de32d7c652ba73e", + "result" : "valid" + }, + { + "tcId" : 366, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35383433343830333931", + "sig" : "3044022067c74cbf5ea4b777bf521ace099f4f094d8f58900e15e67e1b4bd399056629ed02203d2884655c49b8b5f64e802a054e7bf09b0fc80ca18ebf927b82e58bb4a00400", + "result" : "valid" + }, + { + "tcId" : 367, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "373138383932363239", + "sig" : "3045022079a5e40da5cf34c4c39adf7dfc5d454995a250314ebd212b5c8e3f4e6f875feb022100b268920e403ba17828ff271938a6558a5b2dd000229f8edb4a9d9f9b6ac1b472", + "result" : "valid" + }, + { + "tcId" : 368, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31373433323233343433", + "sig" : "3045022100c8b13006c3a51a322fff9321761b01de134f526be582b22e19693c443fc9fe46022034e7f60179c6162ab980fcd58f173b0e6c30b524d35c67921677522dcef843a1", + "result" : "valid" + }, + { + "tcId" : 369, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32343036303035393336", + "sig" : "304502203513db745489a487c88a6cedf8795b640f8f71578397bdabd6cc586c25bd66ad02210099a72cd3f0ca6c799149283ca0af37f86b88200d0c905bd3c9f1b859e55b1659", + "result" : "valid" + }, + { + "tcId" : 370, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31363134303336393838", + "sig" : "304402203a6386afb08f7ff8140b5a270f764e8706ef2830fb177446f7b4eeb8a25aac6402204b70854b38c29245b2b980eba10ea936c68a38c1da5255ce2386db23afc7c06a", + "result" : "valid" + }, + { + "tcId" : 371, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32303935343235363835", + "sig" : "3046022100b8fc54a8a6be3c55e99c06f99ccdcce7af5c18a3c5829726a870cc1068458f64022100cc7237c39c8e6a4a1c8c62f5f88636549c7410798b89684c502c3adfe5fb7ad2", + "result" : "valid" + }, + { + "tcId" : 372, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31303038303938393833", + "sig" : "3045022047b460851e5607f2021626635c565a63f78f558795e1b330d09115970dbbb8ab022100a6a9f4f213e08d3c736d3e1c44a35140cb107619f265a5b13608ed729fd6d894", + "result" : "valid" + }, + { + "tcId" : 373, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31353734313437393237", + "sig" : "30450221008cfda4f7a65864ebbea3144863da9b075c07b5b42cb4569643ddfd70dd753b190220595784b1ab217874b82b9585521f8090b9f6322884ab7a620464f51cf846c5b7", + "result" : "valid" + }, + { + "tcId" : 374, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32383636373731353232", + "sig" : "304402204cd6a45bd7c8bf0edbdf073dbf1f746234cbbca31ec20b526b077c9f480096e702207cf97ae0d33f50b73a5d7adf8aa4eeeb6ff10f89a8794efe1d874e23299c1b3d", + "result" : "valid" + }, + { + "tcId" : 375, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31363934323830373837", + "sig" : "304402202e233f4df8ffebeaec64842b23cce161c80d303b016eca562429b227ae2b58ec022046b6b56adec82f82b54daa6a5fca286740a1704828052072a5f0bc8c7b884242", + "result" : "valid" + }, + { + "tcId" : 376, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "39393231363932353638", + "sig" : "30440220549f658d4a3f98233a2c93bd5b1a52d64af10815ae60becb4139cac822b579c3022027bdddf0dbcf374a2aec8accc47a8ac897f8d1823dda8eb2052590970b39ce2a", + "result" : "valid" + }, + { + "tcId" : 377, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3131363039343339373938", + "sig" : "30450221009fabcc1e5fd965226902f594559e231369e584453974e74f49d7d762e134fb9d0220293cccc510793bac45ce5da2bb6c9e906437f59435ca206655f74b625df07c7c", + "result" : "valid" + }, + { + "tcId" : 378, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37313836313632313030", + "sig" : "304502202e5c140fd6f5f823addc8088ffaae967e7f4897274316769561dfb31435825d9022100eda47327d7cfae1daa344ff5582a467bd18eb9f01caeab9c6da3c0cc89df6713", + "result" : "valid" + }, + { + "tcId" : 379, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33323934333437313737", + "sig" : "304402204c11e3b7efbe3908ad2118e54d7d34d6c6eb4570bf7fdb11a7679fe93afa254c0220712e90f421836e542dac49d10bb39db4a98b2735b6336d8a3c392f3b90e60bbe", + "result" : "valid" + }, + { + "tcId" : 380, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3138353134343535313230", + "sig" : "3045022100dfb4619303f4ff689563d2275069fac44d63ea3c3b18f4fb1ac805d7df3d12ec022068e37b846583901db256329f9cf64f40c416fba50dcb9be333a3e29c76ae32db", + "result" : "valid" + }, + { + "tcId" : 381, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "343736303433393330", + "sig" : "3045022100e70e8e17bd758ff0c48f91cb2c53d293f0f5ae82eb9dfe76ab98f9b064278635022021dde32cb0389cad7bdf676d9b9b7d25bb034ad25a55ea71ee7ee26a18359dd2", + "result" : "valid" + }, + { + "tcId" : 382, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32353637333738373431", + "sig" : "30440220421397ecae30617a5a6081ad1badf6ce9d9d4cb2afdabf1f900e7fdb7fb0af5a022057ca89dc22801c75fdbefdaeca65c675625f94de7d635062b08ed308df5762cc", + "result" : "valid" + }, + { + "tcId" : 383, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35373339393334393935", + "sig" : "304502200610c08076909bb722fba105c23eac8f66b4db1d58f66a882fc90d59acdec8e0022100af59e8d570761cac589d49f11c884007f7ac1eea1a44c6f3fdad1d542187d25e", + "result" : "valid" + }, + { + "tcId" : 384, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33343738333636313339", + "sig" : "3045022059a1181cab0ee8ce94ab2b5ab4f4b13a422e38efe69f634bf947485a5b9ea49c0221009b3c913d98a4ab15f6a39f1802b8f2d28559aa1f8d03a3a88df00c89dc293a97", + "result" : "valid" + }, + { + "tcId" : 385, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "363439303532363032", + "sig" : "30460221008cae6c4dfbf901bd66ab82541011fa15c8e90e2c18c01bd881acaa2b63cb587b022100a86acf943f29cef91d1b66a7de5547df6cdfc45dd7bef816dcb8de9f5a425d2d", + "result" : "valid" + }, + { + "tcId" : 386, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34373633383837343936", + "sig" : "30450221008b00c74b86474d782eac9974aea606d8f7ee78c79597e15687021f5991e86acd0220309dfe3686648eae104e87b3e9b5616a3ad479ca4f0b558ae4f1e5ab3115346a", + "result" : "valid" + }, + { + "tcId" : 387, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "353739303230303830", + "sig" : "30450220433a915504c977809634a36fcf4480e4c8069fc127d201d30dfdb1f423c95fd4022100bcb1b89aafd50a1766b09741fc6a9a96e744ae9826d839bf85ffb50a91981773", + "result" : "valid" + }, + { + "tcId" : 388, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "35333434373837383438", + "sig" : "304502204b69abd2b39840a545cdd4a72d384234580e2fd938b7091d0ecdb562780857db022100fdab9957119e0a4092af82f6cc29f3c8a692671ec86efb0a03c1112a0a1e0467", + "result" : "valid" + }, + { + "tcId" : 389, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3139323636343130393230", + "sig" : "3045022100dab9d3686c28363ad017b4a2b36d35bf2eb80633613d44deb9501d42a3efbd3802201392a562d79f9ab19014e4f7e2f2668259f3720a76c120d4a3c3964e880f7679", + "result" : "valid" + }, + { + "tcId" : 390, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33373033393135373035", + "sig" : "3045022023f94e47b440ce379b74c9311232b19a64e3e7c9b90da34b0c1c3f3d7af28105022100e1425903b1479c2ce18b108a6d1ec8b7a4f0f657dedb00de3a3ceea7fdeee9be", + "result" : "valid" + }, + { + "tcId" : 391, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3831353435373730", + "sig" : "30450221009d706a8fa85d15bd0c3492c6672dfe529f4073b217b3947b5b2cfd61f87ccb7102206aaaaf369f82a0e542f72ded7d7eb90c8314ffa613a0ea81da1c8393dbae2bac", + "result" : "valid" + }, + { + "tcId" : 392, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "313935353330333737", + "sig" : "3046022100ac77918c4085c8a7ce5020b00c315629aee053a445cb4661eb50f6b62a47da29022100df2aea2b9c11a6ce39d3cd9e1faf4a53057e0b1b2e48a324be9e773203fe9fbb", + "result" : "valid" + }, + { + "tcId" : 393, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31323637383130393033", + "sig" : "30460221009db2dbd2935f147fae7f6a95c8e2307bd8537c3d96eb732ad6d5ebdd89bc754e02210093a9ab99d2de9d08fe0a61e26c8fe1ebbf88726e4b69d551b57d15f0ae16df5a", + "result" : "valid" + }, + { + "tcId" : 394, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3131313830373230383135", + "sig" : "30440220769f70093939afbd1fa15873decfa803ca523ace8040280ba78cf833497722bc0220369875aba5e1ced5a4ca8444ec9399a38038b00e153a0ae34d9b3c9781447eea", + "result" : "valid" + }, + { + "tcId" : 395, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "38333831383639323930", + "sig" : "3045022026e5182b9822550ad52f46ad80781d6bef3d110a204db5e58a0746f796982200022100a9418e76029ced0cf78a571a9e59ad04086e91f70e6813981bb33c1dee891165", + "result" : "valid" + }, + { + "tcId" : 396, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33313331323837323737", + "sig" : "3046022100e7bd6aefcf7b27e1f3fadbe713f9adb3d23398e88200cd2e94989c9d12e921770221009583e0de3b76f8d4b1e634a81cbc34af54e2f8599f3684ce48d372760c8204c4", + "result" : "valid" + }, + { + "tcId" : 397, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3134333331393236353338", + "sig" : "30450221008638ed7eaa83609a01a6af9c52ec9bfddda90442b1e6031d61cfa22e48b2e1e2022020c284d596f71c6c8df732f5a5a2006302301e1a792e2b39663d93a9760762d2", + "result" : "valid" + }, + { + "tcId" : 398, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "333434393038323336", + "sig" : "3044022061d924307a96180b06383608ba91674e15c3ea06ff2534412b93a587dde649c1022059b84aa2115b2547edac88088ca6313e9fbe1ca6a361c7e57938f9dde3f4349c", + "result" : "valid" + }, + { + "tcId" : 399, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36383239383335393239", + "sig" : "30450220424fcfc3fd63d128c2eb125e88c7fe5d283b63470a786b82783edbb8a0b7a6d7022100b11548c2cd7fce9d44e795ca51af0b2f6a5180e9c9be0314007ed9e7f4bbe5e9", + "result" : "valid" + }, + { + "tcId" : 400, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "33343435313538303233", + "sig" : "3045022100a5f747ae6290fa9582c6ce8d5608621d495f061551bc4531bacba586a563b184022062faf8f92291e12812835b3f1d43c967bceb885b110bd06e5a68e2d74781ae2b", + "result" : "valid" + }, + { + "tcId" : 401, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3132363937393837363434", + "sig" : "3045022100b731dc0d92c2cc7a605d78233f7814699bdf1cab2df297b6844eec4015af8ea0022039b1a0cc88eb85bcdc356b3620c51f1298c60aec5306b107e900ffdba049dd6f", + "result" : "valid" + }, + { + "tcId" : 402, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "333939323432353533", + "sig" : "3046022100ef73c4fa322da39fb6503bab6b66b64d241056afbcd6908f84b61ccbbe890433022100f1ef85413e5764aa58a3128ccfcf388324fe5340e5edf8d0135ae76786ce415b", + "result" : "valid" + }, + { + "tcId" : 403, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31363031393737393737", + "sig" : "30450220694cd30e2ad0182579331474b271ee2d48723bc8415dc6513873586ce705b76b022100c5ac0c0ed5a4017d110cb45d63aa955dc7dc5ce23e7965c5397c3ff46a884636", + "result" : "valid" + }, + { + "tcId" : 404, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3130383738373535313435", + "sig" : "3046022100f38b2236be3024e10b894ffb1cc68d0bb8d4cf0fcd2cfc1779f8883765d3cd96022100da69cd0b74c25566d60a486edd559fc39d569fb2751445a4798df8a36891802c", + "result" : "valid" + }, + { + "tcId" : 405, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "37303034323532393939", + "sig" : "3046022100a881732c205a0b4b95669c00756fd91973450109a46f17d5a9d971b5e92b9aa40221008acefdca4e06c16b47ccad1c57c05912637e107096ba230c92b97187db79e19e", + "result" : "valid" + }, + { + "tcId" : 406, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31353635333235323833", + "sig" : "3044022004452f554bae819b42effb84ef44a9f1cb7e2d75b4ba9ff9b9cfffaddde3fd1b022061a3fbc5e73c350f2e3d85a7452cd231a3f3375fc11f5fe153b185f53b09c1d0", + "result" : "valid" + }, + { + "tcId" : 407, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3233383236333432333530", + "sig" : "3045022005814f57f58efc7cb490119e584e635e6f0ad1c19fb5dc2edafda075bb55f98e0221009dd5c6e39009d67d965903ecffe08a851775cc1248cc19c0b77798282131b8f6", + "result" : "valid" + }, + { + "tcId" : 408, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31343437383437303635", + "sig" : "3045022100dc1c4a46085e198843b1f01980cd5e4a1ff6f8e8ff7014397f0afd5b247fb0a0022038a13dc723ed90b30251d742b14733a03292ff26530a1ebcaf3d10862a6eff82", + "result" : "valid" + }, + { + "tcId" : 409, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3134323630323035353434", + "sig" : "304502201067667bf525734ca7f2510e36348fd9c2c9bccf032dfd571de6d45abd49361a022100fa762568d3a19e5a1d8ea65e00202a5b16f9afae56733a01f86e35378c558da4", + "result" : "valid" + }, + { + "tcId" : 410, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31393933383335323835", + "sig" : "3046022100e58d69dc56bc1031644847e3e046e2ea845a515d969d07ea1aa53aea5bd92fa1022100bfe50b80f7c512f5ab521fe7e1a131045fde78d4de826c91573baaba1e35ca97", + "result" : "valid" + }, + { + "tcId" : 411, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34323932313533353233", + "sig" : "3046022100fe79c6b8c14d0f23d426e3d157f1b541f6bb91bf29957ef97c55949c9ba48a350221009da112c4a4cf4b1ff490c426f6c8ff122183964a0de56f7336ab382dc9d10285", + "result" : "valid" + }, + { + "tcId" : 412, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "34343539393031343936", + "sig" : "3045022045d4ed7e9edacb5a730944ab0037fba0a136ed9d0d26b2f4d4058554f148fa6f022100f136f15fd30cfe5e5548b3f4965c16a66a7c12904686abe12da777619212ae8c", + "result" : "valid" + }, + { + "tcId" : 413, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "31333933393731313731", + "sig" : "304402204fb7c1727e40bae272f6143a50001b54b536f90233157896dbf845e263f2486302206fea5c924dca17519f6e502ef67efa08d39eb5cc3381266f0216864d2bd00a62", + "result" : "valid" + }, + { + "tcId" : 414, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "32333930363936343935", + "sig" : "30450220779aac665dd988054b04f2e9d483ca79179b3372b58ca00fe43520f44fcb4c32022100b4eca1182cd51f0abd3ea2268dcda49a807ad4116a583102047498aa863653f5", + "result" : "valid" + }, + { + "tcId" : 415, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3131343436303536323634", + "sig" : "3046022100db7ac6f65fb1c38d80064fd11861631237a09924b4eeca4e1569fa4b7d80ad24022100a38d178d37e13e1afa07a9d03da025d594461938a62a6c6744f5c8f7d7b7bb81", + "result" : "valid" + }, + { + "tcId" : 416, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "363835303034373530", + "sig" : "3046022100c90043b4aadf795d870ac223f33acdbd1948c31afff059054dc99528c6503fa6022100829f67b312bb134f6954a23c611a7f7b5b2a69efced9c48db589ac0b4d3da827", + "result" : "valid" + }, + { + "tcId" : 417, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "3232323035333630363139", + "sig" : "3045022100fa16c0125b6615b90e81f7499804308a90179bf3fcff6a4b2695271c68b23ded02200d6cda5ce041dc5a5f319ad9c0de4927d0cf5e89e37b79216194413d42976d54", + "result" : "valid" + }, + { + "tcId" : 418, + "comment" : "special case hash", + "flags" : [ + "SpecialCaseHash" + ], + "msg" : "36323135363635313234", + "sig" : "304502201a4b5bd0f806549f46a3e71bfe412d6d89206017640ded66f3d0b2d9b26bec45022100aac5f74e3130264e01428570ee82ee47e245d160ed812ae252dedffd82e1ec2c", + "result" : "valid" + }, + { + "tcId" : 419, + "comment" : "Signature generated without truncating the hash", + "flags" : [ + "Untruncatedhash" + ], + "msg" : "313233343030", + "sig" : "3045022100f8e272234b51475ec4c6f327562a6e5c9080a96225e88b2e5f72a8eecbd41ab40220516b91617fc39e3141b3bc769f6a3b2e468e687f50bdc29e19088af62d203f4b", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b6e08b1bcc89e7fb0b84d7497e310553495be4877eccc4b3d6d79f7c68a0573431760fa1bcea4972759174ac1103bc6011985ccee251918d0573fbcb78969116", + "wx" : "00b6e08b1bcc89e7fb0b84d7497e310553495be4877eccc4b3d6d79f7c68a05734", + "wy" : "31760fa1bcea4972759174ac1103bc6011985ccee251918d0573fbcb78969116" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b6e08b1bcc89e7fb0b84d7497e310553495be4877eccc4b3d6d79f7c68a0573431760fa1bcea4972759174ac1103bc6011985ccee251918d0573fbcb78969116", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEtuCLG8yJ5/sLhNdJfjEFU0lb5Id+\nzMSz1teffGigVzQxdg+hvOpJcnWRdKwRA7xgEZhczuJRkY0Fc/vLeJaRFg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 420, + "comment" : "k*G has a large x-coordinate", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "303502104319055358e8617b0c46353d039cdaab022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "valid" + }, + { + "tcId" : 421, + "comment" : "r too large", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000001000000000000000000000000fffffffffffffffffffffffc022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043590c6a10353d669bc94d8e2ff9e14bbeed4a7f45b887255ab7e37b676387bb615fc6f97ce39a3874c2b34cc571889abfa0a706c2cfb0e5a4750cc25690696f8", + "wx" : "3590c6a10353d669bc94d8e2ff9e14bbeed4a7f45b887255ab7e37b676387bb6", + "wy" : "15fc6f97ce39a3874c2b34cc571889abfa0a706c2cfb0e5a4750cc25690696f8" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043590c6a10353d669bc94d8e2ff9e14bbeed4a7f45b887255ab7e37b676387bb615fc6f97ce39a3874c2b34cc571889abfa0a706c2cfb0e5a4750cc25690696f8", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENZDGoQNT1mm8lNji/54Uu+7Up/Rb\niHJVq343tnY4e7YV/G+Xzjmjh0wrNMxXGImr+gpwbCz7DlpHUMwlaQaW+A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 422, + "comment" : "r,s are large", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3046022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04369e96402f2cfd1a37b3acbdecfc562862dbca944a0f12d7aaacb8d325d7650aa723621922be2bdac9186290fdcdda028d94437966507d93f2fc1f5c887fdedb", + "wx" : "369e96402f2cfd1a37b3acbdecfc562862dbca944a0f12d7aaacb8d325d7650a", + "wy" : "00a723621922be2bdac9186290fdcdda028d94437966507d93f2fc1f5c887fdedb" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004369e96402f2cfd1a37b3acbdecfc562862dbca944a0f12d7aaacb8d325d7650aa723621922be2bdac9186290fdcdda028d94437966507d93f2fc1f5c887fdedb", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENp6WQC8s/Ro3s6y97PxWKGLbypRK\nDxLXqqy40yXXZQqnI2IZIr4r2skYYpD9zdoCjZRDeWZQfZPy/B9ciH/e2w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 423, + "comment" : "r and s^-1 have a large Hamming weight", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100909135bdb6799286170f5ead2de4f6511453fe50914f3df2de54a36383df8dd4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0427a0a80ea2e1aa798ea9bcc3aedbf01ab78e49c9ec2ad0e08a0429a0e1db4d0d32a8ee7bee9d0a40014e484f34a92bd6f33fe63624ea9579657441ac79666e7f", + "wx" : "27a0a80ea2e1aa798ea9bcc3aedbf01ab78e49c9ec2ad0e08a0429a0e1db4d0d", + "wy" : "32a8ee7bee9d0a40014e484f34a92bd6f33fe63624ea9579657441ac79666e7f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000427a0a80ea2e1aa798ea9bcc3aedbf01ab78e49c9ec2ad0e08a0429a0e1db4d0d32a8ee7bee9d0a40014e484f34a92bd6f33fe63624ea9579657441ac79666e7f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJ6CoDqLhqnmOqbzDrtvwGreOScns\nKtDgigQpoOHbTQ0yqO577p0KQAFOSE80qSvW8z/mNiTqlXlldEGseWZufw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 424, + "comment" : "r and s^-1 have a large Hamming weight", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022027b4577ca009376f71303fd5dd227dcef5deb773ad5f5a84360644669ca249a5", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "049cff61712d4bc5b3638341e6e0a576a8098c9c6d3f198d389c4669f398dc0867f3b9e09f567f3dfd9c4d2c1163e82beadf16c76e8f9d7a64673800ea76fa1e59", + "wx" : "009cff61712d4bc5b3638341e6e0a576a8098c9c6d3f198d389c4669f398dc0867", + "wy" : "00f3b9e09f567f3dfd9c4d2c1163e82beadf16c76e8f9d7a64673800ea76fa1e59" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200049cff61712d4bc5b3638341e6e0a576a8098c9c6d3f198d389c4669f398dc0867f3b9e09f567f3dfd9c4d2c1163e82beadf16c76e8f9d7a64673800ea76fa1e59", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnP9hcS1LxbNjg0Hm4KV2qAmMnG0/\nGY04nEZp85jcCGfzueCfVn89/ZxNLBFj6Cvq3xbHbo+demRnOADqdvoeWQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 425, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020101", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d9117cae81295e82682fa387991e668e1570e0e90100bf4e63964822460561bc19f96b1787ed15769929978ba3dd7f68c97adf5c16f671e756cd8f08c49456ca", + "wx" : "00d9117cae81295e82682fa387991e668e1570e0e90100bf4e63964822460561bc", + "wy" : "19f96b1787ed15769929978ba3dd7f68c97adf5c16f671e756cd8f08c49456ca" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d9117cae81295e82682fa387991e668e1570e0e90100bf4e63964822460561bc19f96b1787ed15769929978ba3dd7f68c97adf5c16f671e756cd8f08c49456ca", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2RF8roEpXoJoL6OHmR5mjhVw4OkB\nAL9OY5ZIIkYFYbwZ+WsXh+0Vdpkpl4uj3X9oyXrfXBb2cedWzY8IxJRWyg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 426, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020103", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048cfcbad3524c22b992529f943e3ce0b2d126085501d6e3edd4f1dbf74bdca21eafb259b1ba179cac09e8e43a88c8a09e7339910a7c941932e44b8be56f1fccde", + "wx" : "008cfcbad3524c22b992529f943e3ce0b2d126085501d6e3edd4f1dbf74bdca21e", + "wy" : "00afb259b1ba179cac09e8e43a88c8a09e7339910a7c941932e44b8be56f1fccde" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048cfcbad3524c22b992529f943e3ce0b2d126085501d6e3edd4f1dbf74bdca21eafb259b1ba179cac09e8e43a88c8a09e7339910a7c941932e44b8be56f1fccde", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEjPy601JMIrmSUp+UPjzgstEmCFUB\n1uPt1PHb90vcoh6vslmxuhecrAno5DqIyKCeczmRCnyUGTLkS4vlbx/M3g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 427, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020105", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04fbb51127e1f1b6a38e9fe9a2544614edb8e43ad7cd8c56f14b3235dda3bc11179abd9753a9e647e9340c395fb2b91384d6d33fcb6456214350b6f3fa00f4364c", + "wx" : "00fbb51127e1f1b6a38e9fe9a2544614edb8e43ad7cd8c56f14b3235dda3bc1117", + "wy" : "009abd9753a9e647e9340c395fb2b91384d6d33fcb6456214350b6f3fa00f4364c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004fbb51127e1f1b6a38e9fe9a2544614edb8e43ad7cd8c56f14b3235dda3bc11179abd9753a9e647e9340c395fb2b91384d6d33fcb6456214350b6f3fa00f4364c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE+7URJ+HxtqOOn+miVEYU7bjkOtfN\njFbxSzI13aO8EReavZdTqeZH6TQMOV+yuROE1tM/y2RWIUNQtvP6APQ2TA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 428, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020105020106", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04cba74b6b024a29a173df9abb9593294a6b8e83efd7f48d67311dcfb557ca80b8e68417e9afb0494417a568129701137effb2174b5c50bb8adf716a4a5ca95d0c", + "wx" : "00cba74b6b024a29a173df9abb9593294a6b8e83efd7f48d67311dcfb557ca80b8", + "wy" : "00e68417e9afb0494417a568129701137effb2174b5c50bb8adf716a4a5ca95d0c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cba74b6b024a29a173df9abb9593294a6b8e83efd7f48d67311dcfb557ca80b8e68417e9afb0494417a568129701137effb2174b5c50bb8adf716a4a5ca95d0c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEy6dLawJKKaFz35q7lZMpSmuOg+/X\n9I1nMR3PtVfKgLjmhBfpr7BJRBelaBKXARN+/7IXS1xQu4rfcWpKXKldDA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 429, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020101", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ea4518f4df8b277eb5ad16cb6bf851e841cedccd99c95c28f681c18a643d15ce4077c637f77b4da58ac8c9ab59523ebb0619d97dca2df1cb8a457b160af1adb9", + "wx" : "00ea4518f4df8b277eb5ad16cb6bf851e841cedccd99c95c28f681c18a643d15ce", + "wy" : "4077c637f77b4da58ac8c9ab59523ebb0619d97dca2df1cb8a457b160af1adb9" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ea4518f4df8b277eb5ad16cb6bf851e841cedccd99c95c28f681c18a643d15ce4077c637f77b4da58ac8c9ab59523ebb0619d97dca2df1cb8a457b160af1adb9", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE6kUY9N+LJ361rRbLa/hR6EHO3M2Z\nyVwo9oHBimQ9Fc5Ad8Y393tNpYrIyatZUj67BhnZfcot8cuKRXsWCvGtuQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 430, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020103", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e148d9966e5b9b536380927de72e59a6655e7070091b25b47b44fdb2a8bd390f35259cd39d6f6ed62340d12152b0fdc1702be5ebdb8f0061d6607b05ca3d7b1b", + "wx" : "00e148d9966e5b9b536380927de72e59a6655e7070091b25b47b44fdb2a8bd390f", + "wy" : "35259cd39d6f6ed62340d12152b0fdc1702be5ebdb8f0061d6607b05ca3d7b1b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e148d9966e5b9b536380927de72e59a6655e7070091b25b47b44fdb2a8bd390f35259cd39d6f6ed62340d12152b0fdc1702be5ebdb8f0061d6607b05ca3d7b1b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE4UjZlm5bm1NjgJJ95y5ZpmVecHAJ\nGyW0e0T9sqi9OQ81JZzTnW9u1iNA0SFSsP3BcCvl69uPAGHWYHsFyj17Gw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 431, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020106", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a61edf1f6e011a27b9fb4e43ca2ef58c1dd6a7f5cf9e89a678d87b2f9a6d8a80b6e5624c5ef144000bde93ccec7ec58b3c646b42e3d92806b281f35c62c39ccf", + "wx" : "00a61edf1f6e011a27b9fb4e43ca2ef58c1dd6a7f5cf9e89a678d87b2f9a6d8a80", + "wy" : "00b6e5624c5ef144000bde93ccec7ec58b3c646b42e3d92806b281f35c62c39ccf" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a61edf1f6e011a27b9fb4e43ca2ef58c1dd6a7f5cf9e89a678d87b2f9a6d8a80b6e5624c5ef144000bde93ccec7ec58b3c646b42e3d92806b281f35c62c39ccf", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEph7fH24BGie5+05Dyi71jB3Wp/XP\nnommeNh7L5ptioC25WJMXvFEAAvek8zsfsWLPGRrQuPZKAaygfNcYsOczw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 432, + "comment" : "small r and s", + "flags" : [ + "SmallRandS", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3006020106020107", + "result" : "valid" + }, + { + "tcId" : 433, + "comment" : "r is larger than n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3026022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632557020107", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a1ff55a03cd061f2408c0ada1ae9f7197f53ef84190564fd3dace78839bc6420178e94a5d6028186997cd36f3c8d2631a272d7936b2cfb3d62730f8c0fe80983", + "wx" : "00a1ff55a03cd061f2408c0ada1ae9f7197f53ef84190564fd3dace78839bc6420", + "wy" : "178e94a5d6028186997cd36f3c8d2631a272d7936b2cfb3d62730f8c0fe80983" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a1ff55a03cd061f2408c0ada1ae9f7197f53ef84190564fd3dace78839bc6420178e94a5d6028186997cd36f3c8d2631a272d7936b2cfb3d62730f8c0fe80983", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEof9VoDzQYfJAjAraGun3GX9T74QZ\nBWT9PazniDm8ZCAXjpSl1gKBhpl80288jSYxonLXk2ss+z1icw+MD+gJgw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 434, + "comment" : "s is larger than n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3026020106022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc75fbd8", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041b824a11eed94fbcd9b722d06613bbcf7eca00b9136f2652642178f37b1a920ee900de495d9ef56fa6d19f3dd1e0edb23d23835ac8c2d3d13c0227e852e503eb", + "wx" : "1b824a11eed94fbcd9b722d06613bbcf7eca00b9136f2652642178f37b1a920e", + "wy" : "00e900de495d9ef56fa6d19f3dd1e0edb23d23835ac8c2d3d13c0227e852e503eb" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041b824a11eed94fbcd9b722d06613bbcf7eca00b9136f2652642178f37b1a920ee900de495d9ef56fa6d19f3dd1e0edb23d23835ac8c2d3d13c0227e852e503eb", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEG4JKEe7ZT7zZtyLQZhO7z37KALkT\nbyZSZCF483sakg7pAN5JXZ71b6bRnz3R4O2yPSODWsjC09E8AifoUuUD6w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 435, + "comment" : "small r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3027020201000221008f1e3c7862c58b16bb76eddbb76eddbb516af4f63f2d74d76e0d28c9bb75ea88", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042914b30c4c784696ffc3dddcec05f36cb1488bc342b9f529d5387acb9e48cb8d3dbd30d0d5d6d6a39108863c2d6a6e8571cd3261fb9eb98ce46125bd8f139136", + "wx" : "2914b30c4c784696ffc3dddcec05f36cb1488bc342b9f529d5387acb9e48cb8d", + "wy" : "3dbd30d0d5d6d6a39108863c2d6a6e8571cd3261fb9eb98ce46125bd8f139136" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042914b30c4c784696ffc3dddcec05f36cb1488bc342b9f529d5387acb9e48cb8d3dbd30d0d5d6d6a39108863c2d6a6e8571cd3261fb9eb98ce46125bd8f139136", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKRSzDEx4Rpb/w93c7AXzbLFIi8NC\nufUp1Th6y55Iy409vTDQ1dbWo5EIhjwtam6Fcc0yYfueuYzkYSW9jxORNg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 436, + "comment" : "smallish r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302c02072d9b4d347952d6022100ef3043e7329581dbb3974497710ab11505ee1c87ff907beebadd195a0ffe6d7a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042579f546fe2f2aeb5f822feb28f2f8371618d04815455a7e903c10024a17da415528e951147f76bee1314e65a49c6ec70686e62d38fbc23472f96e3d3b33fd1f", + "wx" : "2579f546fe2f2aeb5f822feb28f2f8371618d04815455a7e903c10024a17da41", + "wy" : "5528e951147f76bee1314e65a49c6ec70686e62d38fbc23472f96e3d3b33fd1f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042579f546fe2f2aeb5f822feb28f2f8371618d04815455a7e903c10024a17da415528e951147f76bee1314e65a49c6ec70686e62d38fbc23472f96e3d3b33fd1f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJXn1Rv4vKutfgi/rKPL4NxYY0EgV\nRVp+kDwQAkoX2kFVKOlRFH92vuExTmWknG7HBobmLTj7wjRy+W49OzP9Hw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 437, + "comment" : "100-bit r and small s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3032020d1033e67e37b32b445580bf4eff0221008b748b74000000008b748b748b748b7466e769ad4a16d3dcd87129b8e91d1b4d", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b102196bf455ee5aafc6f895504d3c3b6b2d37c35f8669bd0f0b694795fbd992f777b6f829b9628ac35db0ef43f6a89f0a42812614e4c15924d8d47ebe45bae5", + "wx" : "00b102196bf455ee5aafc6f895504d3c3b6b2d37c35f8669bd0f0b694795fbd992", + "wy" : "00f777b6f829b9628ac35db0ef43f6a89f0a42812614e4c15924d8d47ebe45bae5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b102196bf455ee5aafc6f895504d3c3b6b2d37c35f8669bd0f0b694795fbd992f777b6f829b9628ac35db0ef43f6a89f0a42812614e4c15924d8d47ebe45bae5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEsQIZa/RV7lqvxviVUE08O2stN8Nf\nhmm9DwtpR5X72ZL3d7b4KbliisNdsO9D9qifCkKBJhTkwVkk2NR+vkW65Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 438, + "comment" : "small r and 100 bit s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302702020100022100ef9f6ba4d97c09d03178fa20b4aaad83be3cf9cb824a879fec3270fc4b81ef5b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044d056ab2ff57662fd6eebbe23930fef5cd08083e24146190cd01960b1fcd3749fe7ec5847651c857898be0f09efd6e0116a5dbe327f6f3080a65fc966bf64d91", + "wx" : "4d056ab2ff57662fd6eebbe23930fef5cd08083e24146190cd01960b1fcd3749", + "wy" : "00fe7ec5847651c857898be0f09efd6e0116a5dbe327f6f3080a65fc966bf64d91" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044d056ab2ff57662fd6eebbe23930fef5cd08083e24146190cd01960b1fcd3749fe7ec5847651c857898be0f09efd6e0116a5dbe327f6f3080a65fc966bf64d91", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETQVqsv9XZi/W7rviOTD+9c0ICD4k\nFGGQzQGWCx/NN0n+fsWEdlHIV4mL4PCe/W4BFqXb4yf28wgKZfyWa/ZNkQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 439, + "comment" : "100-bit r and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3032020d062522bbd3ecbe7c39e93e7c25022100ef9f6ba4d97c09d03178fa20b4aaad83be3cf9cb824a879fec3270fc4b81ef5b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04361c4a62cd867613138dfe24ccebc4b7df1b55fc7410f4995ee2b6b9ab2220584f116c6c84e53d262fd13a5f5de6b57e7a1981de4ecdffdf3323b4e91d80649c", + "wx" : "361c4a62cd867613138dfe24ccebc4b7df1b55fc7410f4995ee2b6b9ab222058", + "wy" : "4f116c6c84e53d262fd13a5f5de6b57e7a1981de4ecdffdf3323b4e91d80649c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004361c4a62cd867613138dfe24ccebc4b7df1b55fc7410f4995ee2b6b9ab2220584f116c6c84e53d262fd13a5f5de6b57e7a1981de4ecdffdf3323b4e91d80649c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENhxKYs2GdhMTjf4kzOvEt98bVfx0\nEPSZXuK2uasiIFhPEWxshOU9Ji/ROl9d5rV+ehmB3k7N/98zI7TpHYBknA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 440, + "comment" : "r and s^-1 are close to n", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3045022100ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6324d50220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048156a2127c4c46a1ecf24c0522b85fabe94e6c8b9d962420b2acc9e2b6291af05235bf5dc5ccdd1bd333bce846197de363ba0dc158ef0f0174d714a09e76a66f", + "wx" : "008156a2127c4c46a1ecf24c0522b85fabe94e6c8b9d962420b2acc9e2b6291af0", + "wy" : "5235bf5dc5ccdd1bd333bce846197de363ba0dc158ef0f0174d714a09e76a66f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048156a2127c4c46a1ecf24c0522b85fabe94e6c8b9d962420b2acc9e2b6291af05235bf5dc5ccdd1bd333bce846197de363ba0dc158ef0f0174d714a09e76a66f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEgVaiEnxMRqHs8kwFIrhfq+lObIud\nliQgsqzJ4rYpGvBSNb9dxczdG9MzvOhGGX3jY7oNwVjvDwF01xSgnnambw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 441, + "comment" : "r and s are 64-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30160209009c44febf31c3594f020900839ed28247c2b06b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04cb180dda5ed44ca0f78cc19c6659c88451b4d0084a4a904cb2dc770f78318613fae0bd290165858bd670788f5f78ad7806b49a2b932409e3dfb7195ccafaad0d", + "wx" : "00cb180dda5ed44ca0f78cc19c6659c88451b4d0084a4a904cb2dc770f78318613", + "wy" : "00fae0bd290165858bd670788f5f78ad7806b49a2b932409e3dfb7195ccafaad0d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cb180dda5ed44ca0f78cc19c6659c88451b4d0084a4a904cb2dc770f78318613fae0bd290165858bd670788f5f78ad7806b49a2b932409e3dfb7195ccafaad0d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEyxgN2l7UTKD3jMGcZlnIhFG00AhK\nSpBMstx3D3gxhhP64L0pAWWFi9ZweI9feK14BrSaK5MkCePftxlcyvqtDQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 442, + "comment" : "r and s are 100-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "301e020d09df8b682430beef6f5fd7c7cd020d0fd0a62e13778f4222a0d61c8a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0417e9a8ed4d6141f99dcc7794468576b16a9404c82a1969b91db0ca7534a5e00bbc4edd49e6dcf0476bd986551c3adccd4ddcdcdee6eb567cb68d925b4674113d", + "wx" : "17e9a8ed4d6141f99dcc7794468576b16a9404c82a1969b91db0ca7534a5e00b", + "wy" : "00bc4edd49e6dcf0476bd986551c3adccd4ddcdcdee6eb567cb68d925b4674113d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000417e9a8ed4d6141f99dcc7794468576b16a9404c82a1969b91db0ca7534a5e00bbc4edd49e6dcf0476bd986551c3adccd4ddcdcdee6eb567cb68d925b4674113d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEF+mo7U1hQfmdzHeURoV2sWqUBMgq\nGWm5HbDKdTSl4Au8Tt1J5tzwR2vZhlUcOtzNTdzc3ubrVny2jZJbRnQRPQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 443, + "comment" : "r and s are 128-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30260211008a598e563a89f526c32ebec8de26367c02110084f633e2042630e99dd0f1e16f7a04bf", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f123d6999fec34a68c99539d2c9d50268fcdfafa99215d900c93c0c59bd34d933095156ba887f0f965804af24995cf5572553e6adb04da368a90419e523185ce", + "wx" : "00f123d6999fec34a68c99539d2c9d50268fcdfafa99215d900c93c0c59bd34d93", + "wy" : "3095156ba887f0f965804af24995cf5572553e6adb04da368a90419e523185ce" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f123d6999fec34a68c99539d2c9d50268fcdfafa99215d900c93c0c59bd34d933095156ba887f0f965804af24995cf5572553e6adb04da368a90419e523185ce", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8SPWmZ/sNKaMmVOdLJ1QJo/N+vqZ\nIV2QDJPAxZvTTZMwlRVrqIfw+WWASvJJlc9VclU+atsE2jaKkEGeUjGFzg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 444, + "comment" : "r and s are 160-bit integer", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "302e021500aa6eeb5823f7fa31b466bb473797f0d0314c0bdf021500e2977c479e6d25703cebbc6bd561938cc9d1bfb9", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04db9d5c5113f00822a146c9cda2e75cb6634cd0dff54aff6e22875171f57a0dad1c424cdd83eb01c02f6f8d36f42c6dc7e39db74358da8ac9bc9dc5890d46f667", + "wx" : "00db9d5c5113f00822a146c9cda2e75cb6634cd0dff54aff6e22875171f57a0dad", + "wy" : "1c424cdd83eb01c02f6f8d36f42c6dc7e39db74358da8ac9bc9dc5890d46f667" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004db9d5c5113f00822a146c9cda2e75cb6634cd0dff54aff6e22875171f57a0dad1c424cdd83eb01c02f6f8d36f42c6dc7e39db74358da8ac9bc9dc5890d46f667", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE251cURPwCCKhRsnNoudctmNM0N/1\nSv9uIodRcfV6Da0cQkzdg+sBwC9vjTb0LG3H4523Q1jaism8ncWJDUb2Zw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 445, + "comment" : "s == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70020101", + "result" : "valid" + }, + { + "tcId" : 446, + "comment" : "s == 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70020100", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044d9cddf6b4ff05cdf5f557a32db1712e49ab45ae53ade49b9469e665ffa2db773ead4c88e83f38cd16d61dda97645355424279e5132dfec14421cabfc1203a6b", + "wx" : "4d9cddf6b4ff05cdf5f557a32db1712e49ab45ae53ade49b9469e665ffa2db77", + "wy" : "3ead4c88e83f38cd16d61dda97645355424279e5132dfec14421cabfc1203a6b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044d9cddf6b4ff05cdf5f557a32db1712e49ab45ae53ade49b9469e665ffa2db773ead4c88e83f38cd16d61dda97645355424279e5132dfec14421cabfc1203a6b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETZzd9rT/Bc319VejLbFxLkmrRa5T\nreSblGnmZf+i23c+rUyI6D84zRbWHdqXZFNVQkJ55RMt/sFEIcq/wSA6aw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 447, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022002f676969f451a8ccafa4c4f09791810e6d632dbd60b1d5540f3284fbe1889b0", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045eb0559c2fde581a0df6207f3b2872d8e80a1ec8f6d542bf0319ec254c1c23ea272a1ab985cdfab8573a797ed554e137bda258ae3c841ccbf6559187b3471233", + "wx" : "5eb0559c2fde581a0df6207f3b2872d8e80a1ec8f6d542bf0319ec254c1c23ea", + "wy" : "272a1ab985cdfab8573a797ed554e137bda258ae3c841ccbf6559187b3471233" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045eb0559c2fde581a0df6207f3b2872d8e80a1ec8f6d542bf0319ec254c1c23ea272a1ab985cdfab8573a797ed554e137bda258ae3c841ccbf6559187b3471233", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXrBVnC/eWBoN9iB/Oyhy2OgKHsj2\n1UK/AxnsJUwcI+onKhq5hc36uFc6eX7VVOE3vaJYrjyEHMv2VZGHs0cSMw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 448, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002204e260962e33362ef0046126d2d5a4edc6947ab20e19b8ec19cf79e5908b6e628", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042cb4debf57562b9aa191e38d101c51d8bd3eedf242a1123cd3c6060526c4dd2bdc6abd94d54374aede721d0c78193e9b999508a9f2a9ae8737f87a5fc7e0c673", + "wx" : "2cb4debf57562b9aa191e38d101c51d8bd3eedf242a1123cd3c6060526c4dd2b", + "wy" : "00dc6abd94d54374aede721d0c78193e9b999508a9f2a9ae8737f87a5fc7e0c673" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042cb4debf57562b9aa191e38d101c51d8bd3eedf242a1123cd3c6060526c4dd2bdc6abd94d54374aede721d0c78193e9b999508a9f2a9ae8737f87a5fc7e0c673", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELLTev1dWK5qhkeONEBxR2L0+7fJC\noRI808YGBSbE3Svcar2U1UN0rt5yHQx4GT6bmZUIqfKproc3+Hpfx+DGcw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 449, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220077ed0d8f20f697d8fc591ac64dd5219c7932122b4f9b9ec6441e44a0092cf21", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0463d556714900ed08e751f58c1978c1a673c9a9bf975fc4b8af32c2e7944f21d4c2cdf2e7b72fcffe3e8767dc769856ef9fec98ef0139b22f87166300a3781599", + "wx" : "63d556714900ed08e751f58c1978c1a673c9a9bf975fc4b8af32c2e7944f21d4", + "wy" : "00c2cdf2e7b72fcffe3e8767dc769856ef9fec98ef0139b22f87166300a3781599" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000463d556714900ed08e751f58c1978c1a673c9a9bf975fc4b8af32c2e7944f21d4c2cdf2e7b72fcffe3e8767dc769856ef9fec98ef0139b22f87166300a3781599", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEY9VWcUkA7QjnUfWMGXjBpnPJqb+X\nX8S4rzLC55RPIdTCzfLnty/P/j6HZ9x2mFbvn+yY7wE5si+HFmMAo3gVmQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 450, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002203e0292a67e181c6c0105ee35e956e78e9bdd033c6e71ae57884039a245e4175f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040d09be47824c5c23f727bfb550c6dbbdf90abb35d3623013f1c6d7d31be03d95845fede0a0f580dff795e7d5b278a2c78bfa5c4facd1fccfe190ec8eef206778", + "wx" : "0d09be47824c5c23f727bfb550c6dbbdf90abb35d3623013f1c6d7d31be03d95", + "wy" : "00845fede0a0f580dff795e7d5b278a2c78bfa5c4facd1fccfe190ec8eef206778" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040d09be47824c5c23f727bfb550c6dbbdf90abb35d3623013f1c6d7d31be03d95845fede0a0f580dff795e7d5b278a2c78bfa5c4facd1fccfe190ec8eef206778", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDQm+R4JMXCP3J7+1UMbbvfkKuzXT\nYjAT8cbX0xvgPZWEX+3goPWA3/eV59WyeKLHi/pcT6zR/M/hkOyO7yBneA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 451, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022013d22b06d6b8f5d97e0c64962b4a3bae30f668ca6217ef5b35d799f159e23ebe", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0435b75a83731a5b56325add4f28a09742039e0e62f75728e896783fd957400d5be3f3fa5269577faa7089e9c8e9d9f732ef78d433e4be382820323c197c5bbc39", + "wx" : "35b75a83731a5b56325add4f28a09742039e0e62f75728e896783fd957400d5b", + "wy" : "00e3f3fa5269577faa7089e9c8e9d9f732ef78d433e4be382820323c197c5bbc39" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000435b75a83731a5b56325add4f28a09742039e0e62f75728e896783fd957400d5be3f3fa5269577faa7089e9c8e9d9f732ef78d433e4be382820323c197c5bbc39", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENbdag3MaW1YyWt1PKKCXQgOeDmL3\nVyjolng/2VdADVvj8/pSaVd/qnCJ6cjp2fcy73jUM+S+OCggMjwZfFu8OQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 452, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002204523ce342e4994bb8968bf6613f60c06c86111f15a3a389309e72cd447d5dd99", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04fdd28d47e3d60ed4c7fd48e68003f48c5346354ecae2e4b1b4ff43ecd6058fcb010d7e9f008ae48f88a90640999a931ee47d77b2cfb442c614b14054af2c9ddf", + "wx" : "00fdd28d47e3d60ed4c7fd48e68003f48c5346354ecae2e4b1b4ff43ecd6058fcb", + "wy" : "010d7e9f008ae48f88a90640999a931ee47d77b2cfb442c614b14054af2c9ddf" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004fdd28d47e3d60ed4c7fd48e68003f48c5346354ecae2e4b1b4ff43ecd6058fcb010d7e9f008ae48f88a90640999a931ee47d77b2cfb442c614b14054af2c9ddf", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/dKNR+PWDtTH/UjmgAP0jFNGNU7K\n4uSxtP9D7NYFj8sBDX6fAIrkj4ipBkCZmpMe5H13ss+0QsYUsUBUryyd3w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 453, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022037d765be3c9c78189ad30edb5097a4db670de11686d01420e37039d4677f4809", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0473d914dde798f430d51de4e43b3cc5aa557fc4797d9a1820813509979efe3753089ffa286ba30505e3a9ae5c9587854ddb3de2a04ee7a0dbed0dfb087e2d190b", + "wx" : "73d914dde798f430d51de4e43b3cc5aa557fc4797d9a1820813509979efe3753", + "wy" : "089ffa286ba30505e3a9ae5c9587854ddb3de2a04ee7a0dbed0dfb087e2d190b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000473d914dde798f430d51de4e43b3cc5aa557fc4797d9a1820813509979efe3753089ffa286ba30505e3a9ae5c9587854ddb3de2a04ee7a0dbed0dfb087e2d190b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEc9kU3eeY9DDVHeTkOzzFqlV/xHl9\nmhgggTUJl57+N1MIn/ooa6MFBeOprlyVh4VN2z3ioE7noNvtDfsIfi0ZCw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 454, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022044237823b54e0c74c2bf5f759d9ac5f8cb897d537ffa92effd4f0bb6c9acd860", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0424861819b9fb20fb1fcc75eb7a44b2abbb36047812429119ba5b232dfc1ad3c244ec4740e65634fae7d692ea166cb4640201486845c2fb96d4f49beaecc3289a", + "wx" : "24861819b9fb20fb1fcc75eb7a44b2abbb36047812429119ba5b232dfc1ad3c2", + "wy" : "44ec4740e65634fae7d692ea166cb4640201486845c2fb96d4f49beaecc3289a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000424861819b9fb20fb1fcc75eb7a44b2abbb36047812429119ba5b232dfc1ad3c244ec4740e65634fae7d692ea166cb4640201486845c2fb96d4f49beaecc3289a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJIYYGbn7IPsfzHXrekSyq7s2BHgS\nQpEZulsjLfwa08JE7EdA5lY0+ufWkuoWbLRkAgFIaEXC+5bU9Jvq7MMomg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 455, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220266d30a485385906054ca86d46f5f2b17e7f4646a3092092ad92877126538111", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04de056c8c24eb527ad5021ddcf3b16b099b668a03f7da03075f410a0770347bde01880d2a7b162491221c0b370fe81f28924422a4c70117682b898bc325791ce4", + "wx" : "00de056c8c24eb527ad5021ddcf3b16b099b668a03f7da03075f410a0770347bde", + "wy" : "01880d2a7b162491221c0b370fe81f28924422a4c70117682b898bc325791ce4" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004de056c8c24eb527ad5021ddcf3b16b099b668a03f7da03075f410a0770347bde01880d2a7b162491221c0b370fe81f28924422a4c70117682b898bc325791ce4", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3gVsjCTrUnrVAh3c87FrCZtmigP3\n2gMHX0EKB3A0e94BiA0qexYkkSIcCzcP6B8okkQipMcBF2griYvDJXkc5A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 456, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220538c7b3798e84d0ce90340165806348971ed44db8f0c674f5f215968390f92ee", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04cf2de76812f62ecd4e7d8e674d1b79dddbdca18677c8ba338a71b65134d0429fad6d87d6d6592ba1130b81198f6fbe39719cb872d30fc1757af2ae86307b3f9e", + "wx" : "00cf2de76812f62ecd4e7d8e674d1b79dddbdca18677c8ba338a71b65134d0429f", + "wy" : "00ad6d87d6d6592ba1130b81198f6fbe39719cb872d30fc1757af2ae86307b3f9e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cf2de76812f62ecd4e7d8e674d1b79dddbdca18677c8ba338a71b65134d0429fad6d87d6d6592ba1130b81198f6fbe39719cb872d30fc1757af2ae86307b3f9e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzy3naBL2Ls1OfY5nTRt53dvcoYZ3\nyLozinG2UTTQQp+tbYfW1lkroRMLgRmPb745cZy4ctMPwXV68q6GMHs/ng==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 457, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206fef0ef15d1688e15e704c4e6bb8bb7f40d52d3af5c661bb78c4ed9b408699b3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0428d9b9fe0d3c2471f224476eb89c13fa68b433213c31b6376b16226abfeae1c636fef52918dd106cd21958f1f379b09278051472309731ea1192121b3b78f873", + "wx" : "28d9b9fe0d3c2471f224476eb89c13fa68b433213c31b6376b16226abfeae1c6", + "wy" : "36fef52918dd106cd21958f1f379b09278051472309731ea1192121b3b78f873" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000428d9b9fe0d3c2471f224476eb89c13fa68b433213c31b6376b16226abfeae1c636fef52918dd106cd21958f1f379b09278051472309731ea1192121b3b78f873", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKNm5/g08JHHyJEduuJwT+mi0MyE8\nMbY3axYiar/q4cY2/vUpGN0QbNIZWPHzebCSeAUUcjCXMeoRkhIbO3j4cw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 458, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206f44275e9aeb1331efcb8d58f35c0252791427e403ad84daad51d247cc2a64c6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04334ddf8629f0b980796f255e650e247598f6f71e90c501dd11fcb58ea1e6c0a39215c31a4741e4b28657fc7ddb490c0e2a21c7b770460301344dbdd67e85f30d", + "wx" : "334ddf8629f0b980796f255e650e247598f6f71e90c501dd11fcb58ea1e6c0a3", + "wy" : "009215c31a4741e4b28657fc7ddb490c0e2a21c7b770460301344dbdd67e85f30d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004334ddf8629f0b980796f255e650e247598f6f71e90c501dd11fcb58ea1e6c0a39215c31a4741e4b28657fc7ddb490c0e2a21c7b770460301344dbdd67e85f30d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEM03fhinwuYB5byVeZQ4kdZj29x6Q\nxQHdEfy1jqHmwKOSFcMaR0HksoZX/H3bSQwOKiHHt3BGAwE0Tb3WfoXzDQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 459, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022021323755b103d2f9da6ab83eccab9ad8598bcf625652f10e7a3eeee3c3945fb3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "048e889d0a2530f73421ad2e08302651f41ddeb1ae5083ce7e313e06d6928c375afeca9b4490f6aa5e8d45d187ec8d3ab699f29c0cc77386c56f93f2f39e0f2874", + "wx" : "008e889d0a2530f73421ad2e08302651f41ddeb1ae5083ce7e313e06d6928c375a", + "wy" : "00feca9b4490f6aa5e8d45d187ec8d3ab699f29c0cc77386c56f93f2f39e0f2874" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048e889d0a2530f73421ad2e08302651f41ddeb1ae5083ce7e313e06d6928c375afeca9b4490f6aa5e8d45d187ec8d3ab699f29c0cc77386c56f93f2f39e0f2874", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEjoidCiUw9zQhrS4IMCZR9B3esa5Q\ng85+MT4G1pKMN1r+yptEkPaqXo1F0YfsjTq2mfKcDMdzhsVvk/Lzng8odA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 460, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002206c50acfe76de1289e7a5edb240f1c2a7879db6873d5d931f3c6ac467a6eac171", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04297ef19b14f0dfb7c4a294732096ed4304bc5e2eeb86581e0014ddb6e14920878bf2260ecb396e33383c4898bd954dd3c6e7bcdd7810ad0a649f97722bad0095", + "wx" : "297ef19b14f0dfb7c4a294732096ed4304bc5e2eeb86581e0014ddb6e1492087", + "wy" : "008bf2260ecb396e33383c4898bd954dd3c6e7bcdd7810ad0a649f97722bad0095" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004297ef19b14f0dfb7c4a294732096ed4304bc5e2eeb86581e0014ddb6e14920878bf2260ecb396e33383c4898bd954dd3c6e7bcdd7810ad0a649f97722bad0095", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKX7xmxTw37fEopRzIJbtQwS8Xi7r\nhlgeABTdtuFJIIeL8iYOyzluMzg8SJi9lU3Txue83XgQrQpkn5dyK60AlQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 461, + "comment" : "edge case modular inverse", + "flags" : [ + "ModularInverse", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220755b7fffb0b17ad57dca50fcefb7fe297b029df25e5ccb5069e8e70c2742c2a6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0499f19f07b33e03caf4703e04b930d57d6d9baa44460c596a2d3064e0b63ea41286a74c4612a812ee348d2b43f80de627c11c75d81511e22a199c32119b792c6a", + "wx" : "0099f19f07b33e03caf4703e04b930d57d6d9baa44460c596a2d3064e0b63ea412", + "wy" : "0086a74c4612a812ee348d2b43f80de627c11c75d81511e22a199c32119b792c6a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000499f19f07b33e03caf4703e04b930d57d6d9baa44460c596a2d3064e0b63ea41286a74c4612a812ee348d2b43f80de627c11c75d81511e22a199c32119b792c6a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmfGfB7M+A8r0cD4EuTDVfW2bqkRG\nDFlqLTBk4LY+pBKGp0xGEqgS7jSNK0P4DeYnwRx12BUR4ioZnDIRm3ksag==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 462, + "comment" : "point at infinity during verify", + "flags" : [ + "PointDuplication", + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a80220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04313f3309b236484c6eb4ea381e007854467a617343a2e97d845801c01a632cfe33f231854bba89a8ca3f802a2764d3bf6c3233c811a31e5e8028a0b862cb1977", + "wx" : "313f3309b236484c6eb4ea381e007854467a617343a2e97d845801c01a632cfe", + "wy" : "33f231854bba89a8ca3f802a2764d3bf6c3233c811a31e5e8028a0b862cb1977" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004313f3309b236484c6eb4ea381e007854467a617343a2e97d845801c01a632cfe33f231854bba89a8ca3f802a2764d3bf6c3233c811a31e5e8028a0b862cb1977", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEMT8zCbI2SExutOo4HgB4VEZ6YXND\noul9hFgBwBpjLP4z8jGFS7qJqMo/gConZNO/bDIzyBGjHl6AKKC4YssZdw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 463, + "comment" : "edge case for signature malleability", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a902207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a8", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04d3aa01fe59bad92cffe3db59e1385391fafd7af4e4ce462e8aac157274cc8a05c7a7e603e18538aac15f89610beacc21e39898e6c5f7680a81c5bd7bd744a989", + "wx" : "00d3aa01fe59bad92cffe3db59e1385391fafd7af4e4ce462e8aac157274cc8a05", + "wy" : "00c7a7e603e18538aac15f89610beacc21e39898e6c5f7680a81c5bd7bd744a989" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d3aa01fe59bad92cffe3db59e1385391fafd7af4e4ce462e8aac157274cc8a05c7a7e603e18538aac15f89610beacc21e39898e6c5f7680a81c5bd7bd744a989", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE06oB/lm62Sz/49tZ4ThTkfr9evTk\nzkYuiqwVcnTMigXHp+YD4YU4qsFfiWEL6swh45iY5sX3aAqBxb1710SpiQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 464, + "comment" : "edge case for signature malleability", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a902207fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a9", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "045e31eccd4704ebf7a4247ea57f9351abadff63679f2276e2a3b05009ebc1b8df648465a925010db823b2a5f3a6072343a6cc9961a9c482399d0d82051c2e3232", + "wx" : "5e31eccd4704ebf7a4247ea57f9351abadff63679f2276e2a3b05009ebc1b8df", + "wy" : "648465a925010db823b2a5f3a6072343a6cc9961a9c482399d0d82051c2e3232" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045e31eccd4704ebf7a4247ea57f9351abadff63679f2276e2a3b05009ebc1b8df648465a925010db823b2a5f3a6072343a6cc9961a9c482399d0d82051c2e3232", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXjHszUcE6/ekJH6lf5NRq63/Y2ef\nInbio7BQCevBuN9khGWpJQENuCOypfOmByNDpsyZYanEgjmdDYIFHC4yMg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 465, + "comment" : "u1 == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022043f800fbeaf9238c58af795bcdad04bc49cd850c394d3382953356b023210281", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ce0a47f881fd7315a733c4317848fa33c72e38de0b8fda36b61aa9a164f5808a85b05d25115ea4097ddf63f878c8e83657e66de136a8f9e62ed81a58bf117ff9", + "wx" : "00ce0a47f881fd7315a733c4317848fa33c72e38de0b8fda36b61aa9a164f5808a", + "wy" : "0085b05d25115ea4097ddf63f878c8e83657e66de136a8f9e62ed81a58bf117ff9" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ce0a47f881fd7315a733c4317848fa33c72e38de0b8fda36b61aa9a164f5808a85b05d25115ea4097ddf63f878c8e83657e66de136a8f9e62ed81a58bf117ff9", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzgpH+IH9cxWnM8QxeEj6M8cuON4L\nj9o2thqpoWT1gIqFsF0lEV6kCX3fY/h4yOg2V+Zt4Tao+eYu2BpYvxF/+Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 466, + "comment" : "u1 == n - 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30450220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022100bc07ff031506dc74a75086a43252fb43731975a16dca6b025e867412d94222d0", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04cd6f487b47f36c0dea8f4b04c4e6ac637c76b725929c611f48addcf3d2f65941b50ea8f3a491190ee0b20cfb6efd113608e7c7c127577500e7f5c4a4e490fd60", + "wx" : "00cd6f487b47f36c0dea8f4b04c4e6ac637c76b725929c611f48addcf3d2f65941", + "wy" : "00b50ea8f3a491190ee0b20cfb6efd113608e7c7c127577500e7f5c4a4e490fd60" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cd6f487b47f36c0dea8f4b04c4e6ac637c76b725929c611f48addcf3d2f65941b50ea8f3a491190ee0b20cfb6efd113608e7c7c127577500e7f5c4a4e490fd60", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzW9Ie0fzbA3qj0sExOasY3x2tyWS\nnGEfSK3c89L2WUG1DqjzpJEZDuCyDPtu/RE2COfHwSdXdQDn9cSk5JD9YA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 467, + "comment" : "u2 == 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c700220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04456e5f8067d68a1b0a2e8fe2b28acad5755687154a0f167734ebabbdc059070d720dbe96659a66ef0cf27a73e7b3f3f145a60e0ad29f1e21dcc2bb42f0d82c1e", + "wx" : "456e5f8067d68a1b0a2e8fe2b28acad5755687154a0f167734ebabbdc059070d", + "wy" : "720dbe96659a66ef0cf27a73e7b3f3f145a60e0ad29f1e21dcc2bb42f0d82c1e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004456e5f8067d68a1b0a2e8fe2b28acad5755687154a0f167734ebabbdc059070d720dbe96659a66ef0cf27a73e7b3f3f145a60e0ad29f1e21dcc2bb42f0d82c1e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAERW5fgGfWihsKLo/isorK1XVWhxVK\nDxZ3NOurvcBZBw1yDb6WZZpm7wzyenPns/PxRaYOCtKfHiHcwrtC8NgsHg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 468, + "comment" : "u2 == n - 1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30450220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70022100aaaaaaaa00000000aaaaaaaaaaaaaaaa7def51c91a0fbf034d26872ca84218e1", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0442bf0c0ac1e3850baf5515748a878e34249f71035e20a9f54ed468ec273cb0fc5b3138500230055c71f12d53f5c7d0e3d8aa54a94c668cb311e20d195fc71abb", + "wx" : "42bf0c0ac1e3850baf5515748a878e34249f71035e20a9f54ed468ec273cb0fc", + "wy" : "5b3138500230055c71f12d53f5c7d0e3d8aa54a94c668cb311e20d195fc71abb" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000442bf0c0ac1e3850baf5515748a878e34249f71035e20a9f54ed468ec273cb0fc5b3138500230055c71f12d53f5c7d0e3d8aa54a94c668cb311e20d195fc71abb", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQr8MCsHjhQuvVRV0ioeONCSfcQNe\nIKn1TtRo7Cc8sPxbMThQAjAFXHHxLVP1x9Dj2KpUqUxmjLMR4g0ZX8cauw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 469, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02206bfd55a8f8fdb68472e52873ef39ac3eace6d53df576f0ad2da4607bb52c0d46", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04ffdd48da63d3af67223f16c51eb7e95600eb0b0e8b964f4fcd8c534face3c2c2b4e009ab2a76829480e69c9e43b2f1fe076cfafb3fa8d27dd4d6bab4d6c3db54", + "wx" : "00ffdd48da63d3af67223f16c51eb7e95600eb0b0e8b964f4fcd8c534face3c2c2", + "wy" : "00b4e009ab2a76829480e69c9e43b2f1fe076cfafb3fa8d27dd4d6bab4d6c3db54" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ffdd48da63d3af67223f16c51eb7e95600eb0b0e8b964f4fcd8c534face3c2c2b4e009ab2a76829480e69c9e43b2f1fe076cfafb3fa8d27dd4d6bab4d6c3db54", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/91I2mPTr2ciPxbFHrfpVgDrCw6L\nlk9PzYxTT6zjwsK04AmrKnaClIDmnJ5DsvH+B2z6+z+o0n3U1rq01sPbVA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 470, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220654937791db0686f712ff9b453eeadb0026c9b058bba49199ca3e8fac03c094f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04793cbfce6f335dcfede7c6898ea1c537d7661ed6a8c9d308d64a2560d21c6e2c483d23a5ff05da00eaf9d52cf5362be9b53b95316c6a32e9ebe68d9ac35c2fd6", + "wx" : "793cbfce6f335dcfede7c6898ea1c537d7661ed6a8c9d308d64a2560d21c6e2c", + "wy" : "483d23a5ff05da00eaf9d52cf5362be9b53b95316c6a32e9ebe68d9ac35c2fd6" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004793cbfce6f335dcfede7c6898ea1c537d7661ed6a8c9d308d64a2560d21c6e2c483d23a5ff05da00eaf9d52cf5362be9b53b95316c6a32e9ebe68d9ac35c2fd6", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEeTy/zm8zXc/t58aJjqHFN9dmHtao\nydMI1kolYNIcbixIPSOl/wXaAOr51Sz1NivptTuVMWxqMunr5o2aw1wv1g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 471, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100c51bbee23a95437abe5c978f8fe596a31c858ac8d55be9786aa5d36a5ac74e97", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a9f7023f559d4bb6c9f4bc3643e2824aff5451d929479ec3ea5eb30bad2c36ac6a7c77e8dd21f4ad49b103e67da9d3cda62b653dd194fad2ba8d1dd37bb0ea9b", + "wx" : "00a9f7023f559d4bb6c9f4bc3643e2824aff5451d929479ec3ea5eb30bad2c36ac", + "wy" : "6a7c77e8dd21f4ad49b103e67da9d3cda62b653dd194fad2ba8d1dd37bb0ea9b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a9f7023f559d4bb6c9f4bc3643e2824aff5451d929479ec3ea5eb30bad2c36ac6a7c77e8dd21f4ad49b103e67da9d3cda62b653dd194fad2ba8d1dd37bb0ea9b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqfcCP1WdS7bJ9Lw2Q+KCSv9UUdkp\nR57D6l6zC60sNqxqfHfo3SH0rUmxA+Z9qdPNpitlPdGU+tK6jR3Te7Dqmw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 472, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0221008ba4c3da7154ba564ab344ae12005aa482b6c1639ea191f8568afb6e47163c45", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04df79ee082b2fc77e9ce4633471f569bbcb5ce53856e3067774f37e8a64a2c7ffaa488a6c34d499df76f427de3609bfcfd9feae67ffe0b0de594463c453b0ab16", + "wx" : "00df79ee082b2fc77e9ce4633471f569bbcb5ce53856e3067774f37e8a64a2c7ff", + "wy" : "00aa488a6c34d499df76f427de3609bfcfd9feae67ffe0b0de594463c453b0ab16" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004df79ee082b2fc77e9ce4633471f569bbcb5ce53856e3067774f37e8a64a2c7ffaa488a6c34d499df76f427de3609bfcfd9feae67ffe0b0de594463c453b0ab16", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE33nuCCsvx36c5GM0cfVpu8tc5ThW\n4wZ3dPN+imSix/+qSIpsNNSZ33b0J942Cb/P2f6uZ//gsN5ZRGPEU7CrFg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 473, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02204c3dafcf4ba55bf1344ae12005aa4a74f46eaa85f5023131cc637ae2ea90ab26", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044cc3bf65e32e00284adfca00f40df755415c485091ac0489ae9a337103a5f8f0123ab86dd433b933b4f2063c002144df3cfeba78dad0ed89c0377541532908c2", + "wx" : "4cc3bf65e32e00284adfca00f40df755415c485091ac0489ae9a337103a5f8f0", + "wy" : "123ab86dd433b933b4f2063c002144df3cfeba78dad0ed89c0377541532908c2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044cc3bf65e32e00284adfca00f40df755415c485091ac0489ae9a337103a5f8f0123ab86dd433b933b4f2063c002144df3cfeba78dad0ed89c0377541532908c2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETMO/ZeMuAChK38oA9A33VUFcSFCR\nrASJrpozcQOl+PASOrht1DO5M7TyBjwAIUTfPP66eNrQ7YnAN3VBUykIwg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 474, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100987b5f9e974ab7e26895c2400b5494e9e8dd550bea04626398c6f5c5d521564c", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04264a7ad439a4828a9dc97ecf837155355f99ae0b65975f851b541ad3a0e032f067268b7298c73e581866fbcbd161689b16b81cf262e007ce68e25a28c83ef041", + "wx" : "264a7ad439a4828a9dc97ecf837155355f99ae0b65975f851b541ad3a0e032f0", + "wy" : "67268b7298c73e581866fbcbd161689b16b81cf262e007ce68e25a28c83ef041" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004264a7ad439a4828a9dc97ecf837155355f99ae0b65975f851b541ad3a0e032f067268b7298c73e581866fbcbd161689b16b81cf262e007ce68e25a28c83ef041", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJkp61DmkgoqdyX7Pg3FVNV+Zrgtl\nl1+FG1Qa06DgMvBnJotymMc+WBhm+8vRYWibFrgc8mLgB85o4looyD7wQQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 475, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100fcf97e2fbf0e80d412005aa4a75086a3f004f59d512cb47271798733ab418606", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041d7ff4d3a41206c8143635f12876e0ea0875ea5e4a5a249250d0eda33daa211f56e89c0beaf910ac934ca12380455600d0fd85b56a7035cb171b3f1c72a15569", + "wx" : "1d7ff4d3a41206c8143635f12876e0ea0875ea5e4a5a249250d0eda33daa211f", + "wy" : "56e89c0beaf910ac934ca12380455600d0fd85b56a7035cb171b3f1c72a15569" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041d7ff4d3a41206c8143635f12876e0ea0875ea5e4a5a249250d0eda33daa211f56e89c0beaf910ac934ca12380455600d0fd85b56a7035cb171b3f1c72a15569", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEHX/006QSBsgUNjXxKHbg6gh16l5K\nWiSSUNDtoz2qIR9W6JwL6vkQrJNMoSOARVYA0P2FtWpwNcsXGz8ccqFVaQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 476, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022079d482b60864d6c5cb4fd5db9e7e28ccd9a5948c316c8740fb429c0f37169a02", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b09685f338dceb421778a1458d52bed734c236242da2baa280d6f6b7b86e4f117fe6a34146b422d7aebd1a51b20948d7872a514c4cfd7686dc436b70733d6473", + "wx" : "00b09685f338dceb421778a1458d52bed734c236242da2baa280d6f6b7b86e4f11", + "wy" : "7fe6a34146b422d7aebd1a51b20948d7872a514c4cfd7686dc436b70733d6473" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b09685f338dceb421778a1458d52bed734c236242da2baa280d6f6b7b86e4f117fe6a34146b422d7aebd1a51b20948d7872a514c4cfd7686dc436b70733d6473", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEsJaF8zjc60IXeKFFjVK+1zTCNiQt\norqigNb2t7huTxF/5qNBRrQi1669GlGyCUjXhypRTEz9dobcQ2twcz1kcw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 477, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0221008ecd11081a4d0759c14f7bf46813d52cc6738115321be0a4da78a3356bb71510", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04dd811f2c0f5e9d4fbb2ef31818c1cd807247bc14fcd1170bef00e2c71dc037b443a15cdf8f3fbdc87e06250c0720d261d2b8d087fa7bf9548f6293f0ce5ae899", + "wx" : "00dd811f2c0f5e9d4fbb2ef31818c1cd807247bc14fcd1170bef00e2c71dc037b4", + "wy" : "43a15cdf8f3fbdc87e06250c0720d261d2b8d087fa7bf9548f6293f0ce5ae899" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004dd811f2c0f5e9d4fbb2ef31818c1cd807247bc14fcd1170bef00e2c71dc037b443a15cdf8f3fbdc87e06250c0720d261d2b8d087fa7bf9548f6293f0ce5ae899", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3YEfLA9enU+7LvMYGMHNgHJHvBT8\n0RcL7wDixx3AN7RDoVzfjz+9yH4GJQwHINJh0rjQh/p7+VSPYpPwzlromQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 478, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100e8dbffed13c9a2093085c079714f11f24eb583d73ba2b416b3169183e7d9b4c2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0469d60ae1f39e1da95809d408894707ad2134f4943a1db089bebf815a391f18db32b401d98bf894d3b6d59e6eb45573285642e358ad687b7d7bf9600b1987809e", + "wx" : "69d60ae1f39e1da95809d408894707ad2134f4943a1db089bebf815a391f18db", + "wy" : "32b401d98bf894d3b6d59e6eb45573285642e358ad687b7d7bf9600b1987809e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000469d60ae1f39e1da95809d408894707ad2134f4943a1db089bebf815a391f18db32b401d98bf894d3b6d59e6eb45573285642e358ad687b7d7bf9600b1987809e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEadYK4fOeHalYCdQIiUcHrSE09JQ6\nHbCJvr+BWjkfGNsytAHZi/iU07bVnm60VXMoVkLjWK1oe317+WALGYeAng==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 479, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ca01552a838124bec68d6bc6086329e06673900eac5c262e5ce79a8521cd1eae", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a658553a0620c95e987b5c3163bcfea68c52065f53c9d553f2a924d8b3ed511f79f0dfec4536b65aa5fb31297e96f6b464aa669b9268b3156c43d4612978a577", + "wx" : "00a658553a0620c95e987b5c3163bcfea68c52065f53c9d553f2a924d8b3ed511f", + "wy" : "79f0dfec4536b65aa5fb31297e96f6b464aa669b9268b3156c43d4612978a577" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a658553a0620c95e987b5c3163bcfea68c52065f53c9d553f2a924d8b3ed511f79f0dfec4536b65aa5fb31297e96f6b464aa669b9268b3156c43d4612978a577", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEplhVOgYgyV6Ye1wxY7z+poxSBl9T\nydVT8qkk2LPtUR958N/sRTa2WqX7MSl+lva0ZKpmm5JosxVsQ9RhKXildw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 480, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0221009402aa560702497c8d1ad78c10c653c11000256fb1a0add7c6156a474737180b", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bc4d3354a6a973dd8088919cc181194e879ed7920db30d0d1278edf74413b7b92450d162b26dcb25fbbd53ea4044189981d737055925bd2e86bfb0374b09f3ca", + "wx" : "00bc4d3354a6a973dd8088919cc181194e879ed7920db30d0d1278edf74413b7b9", + "wy" : "2450d162b26dcb25fbbd53ea4044189981d737055925bd2e86bfb0374b09f3ca" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bc4d3354a6a973dd8088919cc181194e879ed7920db30d0d1278edf74413b7b92450d162b26dcb25fbbd53ea4044189981d737055925bd2e86bfb0374b09f3ca", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvE0zVKapc92AiJGcwYEZToee15IN\nsw0NEnjt90QTt7kkUNFism3LJfu9U+pARBiZgdc3BVklvS6Gv7A3Swnzyg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 481, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02205e03ff818a836e3a53a8435219297da1b98cbad0b6e535812f433a096ca11168", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040eb628724fce764c687d874ade7b8e0aa4abf20ee6e3610fac9fe3e72f97ab5aed09f4843660eb1daf015d397a7c1073d7ae43bda0ba3e117008785abfffa00f", + "wx" : "0eb628724fce764c687d874ade7b8e0aa4abf20ee6e3610fac9fe3e72f97ab5a", + "wy" : "00ed09f4843660eb1daf015d397a7c1073d7ae43bda0ba3e117008785abfffa00f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040eb628724fce764c687d874ade7b8e0aa4abf20ee6e3610fac9fe3e72f97ab5aed09f4843660eb1daf015d397a7c1073d7ae43bda0ba3e117008785abfffa00f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDrYock/OdkxofYdK3nuOCqSr8g7m\n42EPrJ/j5y+Xq1rtCfSENmDrHa8BXTl6fBBz165DvaC6PhFwCHhav/+gDw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 482, + "comment" : "edge case for u1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100e28ddf709d4aa1bddf2e4bc7c7f2cb516cb642bb3e39c3feaf2fcf16ab9539f4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04e7ac5cc7f296912f703f59fe88e49b521da245e12e6eee161ee6b3b1127611a77b3bedd2a773cf58b0629b936dd85dad2d0c39676306ed63e1a9bcd0e08bccc2", + "wx" : "00e7ac5cc7f296912f703f59fe88e49b521da245e12e6eee161ee6b3b1127611a7", + "wy" : "7b3bedd2a773cf58b0629b936dd85dad2d0c39676306ed63e1a9bcd0e08bccc2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004e7ac5cc7f296912f703f59fe88e49b521da245e12e6eee161ee6b3b1127611a77b3bedd2a773cf58b0629b936dd85dad2d0c39676306ed63e1a9bcd0e08bccc2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE56xcx/KWkS9wP1n+iOSbUh2iReEu\nbu4WHuazsRJ2Ead7O+3Sp3PPWLBim5Nt2F2tLQw5Z2MG7WPhqbzQ4IvMwg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 483, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02207fffffffaaaaaaaaffffffffffffffffe9a2538f37b28a2c513dee40fecbb71a", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042407b60abf3ee5edaf92ed505a11d0ddce0ea33eca58a031bb2f162c512f4062fb81bff36bf967e834e3d5d468730dcd70440022ab60061a62fac53350fe259f", + "wx" : "2407b60abf3ee5edaf92ed505a11d0ddce0ea33eca58a031bb2f162c512f4062", + "wy" : "00fb81bff36bf967e834e3d5d468730dcd70440022ab60061a62fac53350fe259f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042407b60abf3ee5edaf92ed505a11d0ddce0ea33eca58a031bb2f162c512f4062fb81bff36bf967e834e3d5d468730dcd70440022ab60061a62fac53350fe259f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJAe2Cr8+5e2vku1QWhHQ3c4Ooz7K\nWKAxuy8WLFEvQGL7gb/za/ln6DTj1dRocw3NcEQAIqtgBhpi+sUzUP4lnw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 484, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100b62f26b5f2a2b26f6de86d42ad8a13da3ab3cccd0459b201de009e526adf21f2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0447b2ad96dfc2f23fe5926809f38042b2c801962bd7394cefbf4aacb2554b7b0bdf2b937a16a7d96a2a0682cd164428890208597f2cdcc734fda73600b5cf6c59", + "wx" : "47b2ad96dfc2f23fe5926809f38042b2c801962bd7394cefbf4aacb2554b7b0b", + "wy" : "00df2b937a16a7d96a2a0682cd164428890208597f2cdcc734fda73600b5cf6c59" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000447b2ad96dfc2f23fe5926809f38042b2c801962bd7394cefbf4aacb2554b7b0bdf2b937a16a7d96a2a0682cd164428890208597f2cdcc734fda73600b5cf6c59", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAER7Ktlt/C8j/lkmgJ84BCssgBlivX\nOUzvv0qsslVLewvfK5N6FqfZaioGgs0WRCiJAghZfyzcxzT9pzYAtc9sWQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 485, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bb1d9ac949dd748cd02bbbe749bd351cd57b38bb61403d700686aa7b4c90851e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0469a65b75f31ae7b4930292f90902461befcee5d1606939c28e01b652a7fbc498cf68619e5860128f56cecf53eba2ffe82889a9bb04a5fa4c8b722bc91d55978a", + "wx" : "69a65b75f31ae7b4930292f90902461befcee5d1606939c28e01b652a7fbc498", + "wy" : "00cf68619e5860128f56cecf53eba2ffe82889a9bb04a5fa4c8b722bc91d55978a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000469a65b75f31ae7b4930292f90902461befcee5d1606939c28e01b652a7fbc498cf68619e5860128f56cecf53eba2ffe82889a9bb04a5fa4c8b722bc91d55978a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaaZbdfMa57STApL5CQJGG+/O5dFg\naTnCjgG2Uqf7xJjPaGGeWGASj1bOz1Prov/oKImpuwSl+kyLcivJHVWXig==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 486, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022066755a00638cdaec1c732513ca0234ece52545dac11f816e818f725b4f60aaf2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b2037176c84db04a6c773e32f9ed1d6b25ef4c303c6725c6932ec2cc2788bcbb9361505e6b771691adb41598f292d6521722404bf183241b195738b77abd6cfe", + "wx" : "00b2037176c84db04a6c773e32f9ed1d6b25ef4c303c6725c6932ec2cc2788bcbb", + "wy" : "009361505e6b771691adb41598f292d6521722404bf183241b195738b77abd6cfe" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b2037176c84db04a6c773e32f9ed1d6b25ef4c303c6725c6932ec2cc2788bcbb9361505e6b771691adb41598f292d6521722404bf183241b195738b77abd6cfe", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEsgNxdshNsEpsdz4y+e0dayXvTDA8\nZyXGky7CzCeIvLuTYVBea3cWka20FZjyktZSFyJAS/GDJBsZVzi3er1s/g==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 487, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022055a00c9fcdaebb6032513ca0234ecfffe98ebe492fdf02e48ca48e982beb3669", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041eef95aef71f793afd50bb2604064d63e88bef7404a4d0e206446245ae2e7834c96e86dd040f9794b63712d90e719576b8b92c406ab0f288ad9b327bd124454f", + "wx" : "1eef95aef71f793afd50bb2604064d63e88bef7404a4d0e206446245ae2e7834", + "wy" : "00c96e86dd040f9794b63712d90e719576b8b92c406ab0f288ad9b327bd124454f" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041eef95aef71f793afd50bb2604064d63e88bef7404a4d0e206446245ae2e7834c96e86dd040f9794b63712d90e719576b8b92c406ab0f288ad9b327bd124454f", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEHu+VrvcfeTr9ULsmBAZNY+iL73QE\npNDiBkRiRa4ueDTJbobdBA+XlLY3EtkOcZV2uLksQGqw8oitmzJ70SRFTw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 488, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ab40193f9b5d76c064a27940469d9fffd31d7c925fbe05c919491d3057d66cd2", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04a9734899c954e5b7adbca8f783428b5fbcbdfd3d2813f8d2f95b31a78ab107567667abf8c02ce4951bc59b2564130c27d7b64cdbc5cad95ca42d5bbb7cd4e793", + "wx" : "00a9734899c954e5b7adbca8f783428b5fbcbdfd3d2813f8d2f95b31a78ab10756", + "wy" : "7667abf8c02ce4951bc59b2564130c27d7b64cdbc5cad95ca42d5bbb7cd4e793" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a9734899c954e5b7adbca8f783428b5fbcbdfd3d2813f8d2f95b31a78ab107567667abf8c02ce4951bc59b2564130c27d7b64cdbc5cad95ca42d5bbb7cd4e793", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqXNImclU5betvKj3g0KLX7y9/T0o\nE/jS+Vsxp4qxB1Z2Z6v4wCzklRvFmyVkEwwn17ZM28XK2VykLVu7fNTnkw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 489, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100ca0234ebb5fdcb13ca0234ecffffffffcb0dadbbc7f549f8a26b4408d0dc8600", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041ae51662331a1dbfab0751d30dfab2273a04a239e055a537b16ab595f9612396434f21c2bfe6555c9fc4a8e82dab1fa5631881b016e0831d9e1bbf5799fcf32e", + "wx" : "1ae51662331a1dbfab0751d30dfab2273a04a239e055a537b16ab595f9612396", + "wy" : "434f21c2bfe6555c9fc4a8e82dab1fa5631881b016e0831d9e1bbf5799fcf32e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041ae51662331a1dbfab0751d30dfab2273a04a239e055a537b16ab595f9612396434f21c2bfe6555c9fc4a8e82dab1fa5631881b016e0831d9e1bbf5799fcf32e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEGuUWYjMaHb+rB1HTDfqyJzoEojng\nVaU3sWq1lflhI5ZDTyHCv+ZVXJ/EqOgtqx+lYxiBsBbggx2eG79XmfzzLg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 490, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff3ea3677e082b9310572620ae19933a9e65b285598711c77298815ad3", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0453c90cdd8b0dadd21c44ad557b327f4dbf57144aaf06597deb3f94125206a6c14603475bd79b30e36340cd09b0b59e6cd46ce90150e9ffe5c8a0172b2c9898e3", + "wx" : "53c90cdd8b0dadd21c44ad557b327f4dbf57144aaf06597deb3f94125206a6c1", + "wy" : "4603475bd79b30e36340cd09b0b59e6cd46ce90150e9ffe5c8a0172b2c9898e3" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000453c90cdd8b0dadd21c44ad557b327f4dbf57144aaf06597deb3f94125206a6c14603475bd79b30e36340cd09b0b59e6cd46ce90150e9ffe5c8a0172b2c9898e3", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEU8kM3YsNrdIcRK1VezJ/Tb9XFEqv\nBll96z+UElIGpsFGA0db15sw42NAzQmwtZ5s1GzpAVDp/+XIoBcrLJiY4w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 491, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0220266666663bbbbbbbe6666666666666665b37902e023fab7c8f055d86e5cc41f4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0433797539515c51f429967b8e36930d9fdda1edb13aecec9771f7cde5f6f2e74eba51d0b6456bb902dba1f3ea436f96ad2355da454dc9b32c503c4bc6cfd6d410", + "wx" : "33797539515c51f429967b8e36930d9fdda1edb13aecec9771f7cde5f6f2e74e", + "wy" : "00ba51d0b6456bb902dba1f3ea436f96ad2355da454dc9b32c503c4bc6cfd6d410" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000433797539515c51f429967b8e36930d9fdda1edb13aecec9771f7cde5f6f2e74eba51d0b6456bb902dba1f3ea436f96ad2355da454dc9b32c503c4bc6cfd6d410", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEM3l1OVFcUfQplnuONpMNn92h7bE6\n7OyXcffN5fby5066UdC2RWu5Atuh8+pDb5atI1XaRU3JsyxQPEvGz9bUEA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 492, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff36db6db7a492492492492492146c573f4c6dfc8d08a443e258970b09", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040a8f5f1d5bbd2783fa7f37c86879057fb2fcf25383aafb86d03d6bafb41a17b3eaf6da715fe950349fd5736117b08e15e32cf1d2fdc003e510009f1b4ba1e648", + "wx" : "0a8f5f1d5bbd2783fa7f37c86879057fb2fcf25383aafb86d03d6bafb41a17b3", + "wy" : "00eaf6da715fe950349fd5736117b08e15e32cf1d2fdc003e510009f1b4ba1e648" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040a8f5f1d5bbd2783fa7f37c86879057fb2fcf25383aafb86d03d6bafb41a17b3eaf6da715fe950349fd5736117b08e15e32cf1d2fdc003e510009f1b4ba1e648", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECo9fHVu9J4P6fzfIaHkFf7L88lOD\nqvuG0D1rr7QaF7Pq9tpxX+lQNJ/Vc2EXsI4V4yzx0v3AA+UQAJ8bS6HmSA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 493, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd022100bfffffff2aaaaaab7fffffffffffffffc815d0e60b3e596ecb1ad3a27cfd49c4", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041dbc94e96c056b9d2cb6773bb24b69ed473851badf927a29955aff290ef3675a65e587561122aa8226facb95df08308cadf01c8351a1569176d917821113aa7c", + "wx" : "1dbc94e96c056b9d2cb6773bb24b69ed473851badf927a29955aff290ef3675a", + "wy" : "65e587561122aa8226facb95df08308cadf01c8351a1569176d917821113aa7c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041dbc94e96c056b9d2cb6773bb24b69ed473851badf927a29955aff290ef3675a65e587561122aa8226facb95df08308cadf01c8351a1569176d917821113aa7c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEHbyU6WwFa50stnc7sktp7Uc4Ubrf\nknoplVr/KQ7zZ1pl5YdWESKqgib6y5XfCDCMrfAcg1GhVpF22ReCEROqfA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 494, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02207fffffff55555555ffffffffffffffffd344a71e6f651458a27bdc81fd976e37", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04084ab885dbff7f12e6cdadb59d456e500797779425c7518c259c83718289e6e991c345d3a093e86670605bbc2ff4c69d0ed694fd433ec6b6ba1bf7d56c3e6b51", + "wx" : "084ab885dbff7f12e6cdadb59d456e500797779425c7518c259c83718289e6e9", + "wy" : "0091c345d3a093e86670605bbc2ff4c69d0ed694fd433ec6b6ba1bf7d56c3e6b51" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004084ab885dbff7f12e6cdadb59d456e500797779425c7518c259c83718289e6e991c345d3a093e86670605bbc2ff4c69d0ed694fd433ec6b6ba1bf7d56c3e6b51", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECEq4hdv/fxLmza21nUVuUAeXd5Ql\nx1GMJZyDcYKJ5umRw0XToJPoZnBgW7wv9MadDtaU/UM+xra6G/fVbD5rUQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 495, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02203fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192aa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04003adfa4c620a207096cd18ee8fd2a90e20106cf824a0c63d6dec727a9fe7f509430d26bdd5f71e819d12b70069901461ae083cc809122d4fb86b5c475244e5a", + "wx" : "3adfa4c620a207096cd18ee8fd2a90e20106cf824a0c63d6dec727a9fe7f50", + "wy" : "009430d26bdd5f71e819d12b70069901461ae083cc809122d4fb86b5c475244e5a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004003adfa4c620a207096cd18ee8fd2a90e20106cf824a0c63d6dec727a9fe7f509430d26bdd5f71e819d12b70069901461ae083cc809122d4fb86b5c475244e5a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADrfpMYgogcJbNGO6P0qkOIBBs+C\nSgxj1t7HJ6n+f1CUMNJr3V9x6BnRK3AGmQFGGuCDzICRItT7hrXEdSROWg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 496, + "comment" : "edge case for u2", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd02205d8ecd64a4eeba466815ddf3a4de9a8e6abd9c5db0a01eb80343553da648428f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "047c98b2d47eb433c0d18e533cfbc8909d66f7b79d5925ccb17eccec9d105c58848d5ca99b350bd7d10ab5ee6fcfe46623fdc03e9f828158f4d4cc08ad1ff83de4", + "wx" : "7c98b2d47eb433c0d18e533cfbc8909d66f7b79d5925ccb17eccec9d105c5884", + "wy" : "008d5ca99b350bd7d10ab5ee6fcfe46623fdc03e9f828158f4d4cc08ad1ff83de4" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200047c98b2d47eb433c0d18e533cfbc8909d66f7b79d5925ccb17eccec9d105c58848d5ca99b350bd7d10ab5ee6fcfe46623fdc03e9f828158f4d4cc08ad1ff83de4", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJiy1H60M8DRjlM8+8iQnWb3t51Z\nJcyxfszsnRBcWISNXKmbNQvX0Qq17m/P5GYj/cA+n4KBWPTUzAitH/g95A==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 497, + "comment" : "point duplication during verification", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "304502206f2347cab7dd76858fe0555ac3bc99048c4aacafdfb6bcbe05ea6c42c4934569022100b4cfa1996ec1d24cdbc8fa17fcabc3a5d4b2b36cf4b50a7b775ab78785710746", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "047c98b2d47eb433c0d18e533cfbc8909d66f7b79d5925ccb17eccec9d105c588472a35663caf4282ff54a1190301b99dc023fc1617d7ea70b2b33f752e007c21b", + "wx" : "7c98b2d47eb433c0d18e533cfbc8909d66f7b79d5925ccb17eccec9d105c5884", + "wy" : "72a35663caf4282ff54a1190301b99dc023fc1617d7ea70b2b33f752e007c21b" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200047c98b2d47eb433c0d18e533cfbc8909d66f7b79d5925ccb17eccec9d105c588472a35663caf4282ff54a1190301b99dc023fc1617d7ea70b2b33f752e007c21b", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJiy1H60M8DRjlM8+8iQnWb3t51Z\nJcyxfszsnRBcWIRyo1ZjyvQoL/VKEZAwG5ncAj/BYX1+pwsrM/dS4AfCGw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 498, + "comment" : "duplication bug", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "304502206f2347cab7dd76858fe0555ac3bc99048c4aacafdfb6bcbe05ea6c42c4934569022100b4cfa1996ec1d24cdbc8fa17fcabc3a5d4b2b36cf4b50a7b775ab78785710746", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04b7a90e21e7547d73267940033cea05042c50f7c9fa5eaeb471cd6260c685f2e38bb7309d0c3bab249faaf3e44179d6dd5302375c580fd0570a788c6be3680c67", + "wx" : "00b7a90e21e7547d73267940033cea05042c50f7c9fa5eaeb471cd6260c685f2e3", + "wy" : "008bb7309d0c3bab249faaf3e44179d6dd5302375c580fd0570a788c6be3680c67" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b7a90e21e7547d73267940033cea05042c50f7c9fa5eaeb471cd6260c685f2e38bb7309d0c3bab249faaf3e44179d6dd5302375c580fd0570a788c6be3680c67", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEt6kOIedUfXMmeUADPOoFBCxQ98n6\nXq60cc1iYMaF8uOLtzCdDDurJJ+q8+RBedbdUwI3XFgP0FcKeIxr42gMZw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 499, + "comment" : "point with x-coordinate 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30250201010220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "041550a173373b2d594374f0642cd73de06a045c09c7a4f388c731e8cd8971adfc9a3a9843583a86c0e1c62cbde67165f40a926b1028ba38aa3895e188ebbc7066", + "wx" : "1550a173373b2d594374f0642cd73de06a045c09c7a4f388c731e8cd8971adfc", + "wy" : "009a3a9843583a86c0e1c62cbde67165f40a926b1028ba38aa3895e188ebbc7066" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041550a173373b2d594374f0642cd73de06a045c09c7a4f388c731e8cd8971adfc9a3a9843583a86c0e1c62cbde67165f40a926b1028ba38aa3895e188ebbc7066", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFVChczc7LVlDdPBkLNc94GoEXAnH\npPOIxzHozYlxrfyaOphDWDqGwOHGLL3mcWX0CpJrECi6OKo4leGI67xwZg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 500, + "comment" : "point with x-coordinate 0", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "3045022101000000000000000000000000000000000000000000000000000000000000000002203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aa9", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04313447778195daa1791a6530cd0697ae34bf9d8d225984394f72eef3505971110996a8fbdd1a70ecd64cb00b595afe1669bfef80d91756a62d84c1d83e0f22ab", + "wx" : "313447778195daa1791a6530cd0697ae34bf9d8d225984394f72eef350597111", + "wy" : "0996a8fbdd1a70ecd64cb00b595afe1669bfef80d91756a62d84c1d83e0f22ab" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004313447778195daa1791a6530cd0697ae34bf9d8d225984394f72eef3505971110996a8fbdd1a70ecd64cb00b595afe1669bfef80d91756a62d84c1d83e0f22ab", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEMTRHd4GV2qF5GmUwzQaXrjS/nY0i\nWYQ5T3Lu81BZcREJlqj73Rpw7NZMsAtZWv4Wab/vgNkXVqYthMHYPg8iqw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 501, + "comment" : "comparison with point at infinity ", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "30440220555555550000000055555555555555553ef7a8e48d07df81a693439654210c7002203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aa9", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044ada634941476ca63c2c5803eec2f33b2d17920f798a5be6275f5a54cd2e7639b1a04bead5c7314c427492db21b9544d81caa8159587e41aa023aa967f31aaa1", + "wx" : "4ada634941476ca63c2c5803eec2f33b2d17920f798a5be6275f5a54cd2e7639", + "wy" : "00b1a04bead5c7314c427492db21b9544d81caa8159587e41aa023aa967f31aaa1" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044ada634941476ca63c2c5803eec2f33b2d17920f798a5be6275f5a54cd2e7639b1a04bead5c7314c427492db21b9544d81caa8159587e41aa023aa967f31aaa1", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEStpjSUFHbKY8LFgD7sLzOy0Xkg95\nilvmJ19aVM0udjmxoEvq1ccxTEJ0ktshuVRNgcqoFZWH5BqgI6qWfzGqoQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 502, + "comment" : "extreme value for k and edgecase s", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc476699780220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04aacce093270fa59ad412b5459a08e490743b97086c781ac3c8d54030b41a31193bece4956172d56befb7011d684e772905e48d2115444a75ac7a325a3f25f4b1", + "wx" : "00aacce093270fa59ad412b5459a08e490743b97086c781ac3c8d54030b41a3119", + "wy" : "3bece4956172d56befb7011d684e772905e48d2115444a75ac7a325a3f25f4b1" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004aacce093270fa59ad412b5459a08e490743b97086c781ac3c8d54030b41a31193bece4956172d56befb7011d684e772905e48d2115444a75ac7a325a3f25f4b1", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqszgkycPpZrUErVFmgjkkHQ7lwhs\neBrDyNVAMLQaMRk77OSVYXLVa++3AR1oTncpBeSNIRVESnWsejJaPyX0sQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 503, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022100b6db6db6249249254924924924924924625bd7a09bec4ca81bcdd9f8fd6b63cc", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f62b8d7feeff5a847ab79212269e55e62fa87ebe930821747b57a511a5ea99f0439ee057bb27898582a683c3fdb7f95404d41d42f276803751a316eb3aab7ebf", + "wx" : "00f62b8d7feeff5a847ab79212269e55e62fa87ebe930821747b57a511a5ea99f0", + "wy" : "439ee057bb27898582a683c3fdb7f95404d41d42f276803751a316eb3aab7ebf" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f62b8d7feeff5a847ab79212269e55e62fa87ebe930821747b57a511a5ea99f0439ee057bb27898582a683c3fdb7f95404d41d42f276803751a316eb3aab7ebf", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9iuNf+7/WoR6t5ISJp5V5i+ofr6T\nCCF0e1elEaXqmfBDnuBXuyeJhYKmg8P9t/lUBNQdQvJ2gDdRoxbrOqt+vw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 504, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022100cccccccc00000000cccccccccccccccc971f2ef152794b9d8fc7d568c9e8eaa7", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044baa07ff6e7bb9aa223d1c61932005fe98fe78b787fdab4bd3619bc8833072a2bcacd63802c56af82607953e72a0f5d3c23bd265544e020951824ea485555d33", + "wx" : "4baa07ff6e7bb9aa223d1c61932005fe98fe78b787fdab4bd3619bc8833072a2", + "wy" : "00bcacd63802c56af82607953e72a0f5d3c23bd265544e020951824ea485555d33" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044baa07ff6e7bb9aa223d1c61932005fe98fe78b787fdab4bd3619bc8833072a2bcacd63802c56af82607953e72a0f5d3c23bd265544e020951824ea485555d33", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAES6oH/257uaoiPRxhkyAF/pj+eLeH\n/atL02GbyIMwcqK8rNY4AsVq+CYHlT5yoPXTwjvSZVROAglRgk6khVVdMw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 505, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc4766997802203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aaa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "040c753ed1ba92f766800fdd0ae1c0d7f8f4cd8305fd803d8bca881397b5937e2db568509b1faf3cf251de6db9810e8b8caed235da10eeddbed62775c8e5c9460a", + "wx" : "0c753ed1ba92f766800fdd0ae1c0d7f8f4cd8305fd803d8bca881397b5937e2d", + "wy" : "00b568509b1faf3cf251de6db9810e8b8caed235da10eeddbed62775c8e5c9460a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040c753ed1ba92f766800fdd0ae1c0d7f8f4cd8305fd803d8bca881397b5937e2db568509b1faf3cf251de6db9810e8b8caed235da10eeddbed62775c8e5c9460a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDHU+0bqS92aAD90K4cDX+PTNgwX9\ngD2LyogTl7WTfi21aFCbH6888lHebbmBDouMrtI12hDu3b7WJ3XI5clGCg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 506, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022049249248db6db6dbb6db6db6db6db6db5a8b230d0b2b51dcd7ebf0c9fef7c185", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04030fdcae6541f22c5bab254e4f1a285c507d1cefea03bf90cf19daf3cb62df695ff2c94d588f2c2b2b0a12bebc011bcee4fa1b54506ec07d0a29d24a0891193c", + "wx" : "030fdcae6541f22c5bab254e4f1a285c507d1cefea03bf90cf19daf3cb62df69", + "wy" : "5ff2c94d588f2c2b2b0a12bebc011bcee4fa1b54506ec07d0a29d24a0891193c" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004030fdcae6541f22c5bab254e4f1a285c507d1cefea03bf90cf19daf3cb62df695ff2c94d588f2c2b2b0a12bebc011bcee4fa1b54506ec07d0a29d24a0891193c", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAw/crmVB8ixbqyVOTxooXFB9HO/q\nA7+Qzxna88ti32lf8slNWI8sKysKEr68ARvO5PobVFBuwH0KKdJKCJEZPA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 507, + "comment" : "extreme value for k", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402207cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978022016a4502e2781e11ac82cbc9d1edd8c981584d13e18411e2f6e0478c34416e3bb", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0403fc621eaf90c23d8f9fa125d2c59b8728ebccb30ca3e3db879a06ca90f20cdcae58d3f0c6aef0e805be10ea54e23cf6f0397f9addddc2b09088855316b0ef44", + "wx" : "03fc621eaf90c23d8f9fa125d2c59b8728ebccb30ca3e3db879a06ca90f20cdc", + "wy" : "00ae58d3f0c6aef0e805be10ea54e23cf6f0397f9addddc2b09088855316b0ef44" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000403fc621eaf90c23d8f9fa125d2c59b8728ebccb30ca3e3db879a06ca90f20cdcae58d3f0c6aef0e805be10ea54e23cf6f0397f9addddc2b09088855316b0ef44", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEA/xiHq+Qwj2Pn6El0sWbhyjrzLMM\no+Pbh5oGypDyDNyuWNPwxq7w6AW+EOpU4jz28Dl/mt3dwrCQiIVTFrDvRA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 508, + "comment" : "extreme value for k and edgecase s", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2960220555555550000000055555555555555553ef7a8e48d07df81a693439654210c70", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0470f2ce24dc62923bb09cc92d74329bbd0d2e6b0e354c0be2383d24acdccb9e4cd42d1f973466f5e5462a939084a294ebfc7a45629c70ee5def46de9536ea7bf7", + "wx" : "70f2ce24dc62923bb09cc92d74329bbd0d2e6b0e354c0be2383d24acdccb9e4c", + "wy" : "00d42d1f973466f5e5462a939084a294ebfc7a45629c70ee5def46de9536ea7bf7" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000470f2ce24dc62923bb09cc92d74329bbd0d2e6b0e354c0be2383d24acdccb9e4cd42d1f973466f5e5462a939084a294ebfc7a45629c70ee5def46de9536ea7bf7", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcPLOJNxikjuwnMktdDKbvQ0uaw41\nTAviOD0krNzLnkzULR+XNGb15UYqk5CEopTr/HpFYpxw7l3vRt6VNup79w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 509, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022100b6db6db6249249254924924924924924625bd7a09bec4ca81bcdd9f8fd6b63cc", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04732b8ac0c30fe44307431235271cb5d6e5f677a19ce3f058b939a7bf19349d3c858cc735af8577468275847cf5ec19972e6c20738276e2708b23c595bfc4433d", + "wx" : "732b8ac0c30fe44307431235271cb5d6e5f677a19ce3f058b939a7bf19349d3c", + "wy" : "00858cc735af8577468275847cf5ec19972e6c20738276e2708b23c595bfc4433d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004732b8ac0c30fe44307431235271cb5d6e5f677a19ce3f058b939a7bf19349d3c858cc735af8577468275847cf5ec19972e6c20738276e2708b23c595bfc4433d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcyuKwMMP5EMHQxI1Jxy11uX2d6Gc\n4/BYuTmnvxk0nTyFjMc1r4V3RoJ1hHz17BmXLmwgc4J24nCLI8WVv8RDPQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 510, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304502206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022100cccccccc00000000cccccccccccccccc971f2ef152794b9d8fc7d568c9e8eaa7", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0447aff9501825a166782bb58a5b459006eacdbce5e5323addad34ec1b6444cdce9199c31502ad4277c73ddd0c807b72634c45762404837d9814a5d4b5a7c3f398", + "wx" : "47aff9501825a166782bb58a5b459006eacdbce5e5323addad34ec1b6444cdce", + "wy" : "009199c31502ad4277c73ddd0c807b72634c45762404837d9814a5d4b5a7c3f398" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000447aff9501825a166782bb58a5b459006eacdbce5e5323addad34ec1b6444cdce9199c31502ad4277c73ddd0c807b72634c45762404837d9814a5d4b5a7c3f398", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAER6/5UBgloWZ4K7WKW0WQBurNvOXl\nMjrdrTTsG2REzc6RmcMVAq1Cd8c93QyAe3JjTEV2JASDfZgUpdS1p8PzmA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 511, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29602203333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aaa", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04aed8eeff77644bf83b9222f8f57173fa8217ec7e0763ee7d7171fb6092fba5c06486a86d94f48834ba5adbaf349687f9cee400389642b828e68207b147ca2c46", + "wx" : "00aed8eeff77644bf83b9222f8f57173fa8217ec7e0763ee7d7171fb6092fba5c0", + "wy" : "6486a86d94f48834ba5adbaf349687f9cee400389642b828e68207b147ca2c46" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004aed8eeff77644bf83b9222f8f57173fa8217ec7e0763ee7d7171fb6092fba5c06486a86d94f48834ba5adbaf349687f9cee400389642b828e68207b147ca2c46", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAErtju/3dkS/g7kiL49XFz+oIX7H4H\nY+59cXH7YJL7pcBkhqhtlPSINLpa2680lof5zuQAOJZCuCjmggexR8osRg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 512, + "comment" : "extreme value for k and s^-1", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022049249248db6db6dbb6db6db6db6db6db5a8b230d0b2b51dcd7ebf0c9fef7c185", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04f7c54a585a904300d05b53ef3b854e71999a344b89adc0caaa28e254db9bc7c7c161a79f38ff446051303577e40638fb020329940a63c241bb32c2205eb57b7d", + "wx" : "00f7c54a585a904300d05b53ef3b854e71999a344b89adc0caaa28e254db9bc7c7", + "wy" : "00c161a79f38ff446051303577e40638fb020329940a63c241bb32c2205eb57b7d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f7c54a585a904300d05b53ef3b854e71999a344b89adc0caaa28e254db9bc7c7c161a79f38ff446051303577e40638fb020329940a63c241bb32c2205eb57b7d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE98VKWFqQQwDQW1PvO4VOcZmaNEuJ\nrcDKqijiVNubx8fBYaefOP9EYFEwNXfkBjj7AgMplApjwkG7MsIgXrV7fQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 513, + "comment" : "extreme value for k", + "flags" : [ + "ArithmeticError" + ], + "msg" : "313233343030", + "sig" : "304402206b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296022016a4502e2781e11ac82cbc9d1edd8c981584d13e18411e2f6e0478c34416e3bb", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5", + "wx" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296", + "wy" : "4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaxfR8uEsQkf4vOblY6RA8ncDfYEt\n6zOg9KE5RdiYwpZP40Li/hp/m47n60p8D54WK84zV2sxXs7LtkBoN79R9Q==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 514, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3044022043f800fbeaf9238c58af795bcdad04bc49cd850c394d3382953356b0232102810220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + }, + { + "tcId" : 515, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3045022100bc07ff031506dc74a75086a43252fb43731975a16dca6b025e867412d94222d00220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a", + "wx" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296", + "wy" : "00b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaxfR8uEsQkf4vOblY6RA8ncDfYEt\n6zOg9KE5RdiYwpawHL0cAeWAZXEYFLWD8GHp1DHMqZTOoTE0Sb+XyECuCg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 516, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3044022043f800fbeaf9238c58af795bcdad04bc49cd850c394d3382953356b0232102810220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + }, + { + "tcId" : 517, + "comment" : "public key shares x-coordinate with generator", + "flags" : [ + "PointDuplication" + ], + "msg" : "313233343030", + "sig" : "3045022100bc07ff031506dc74a75086a43252fb43731975a16dca6b025e867412d94222d00220249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2", + "result" : "invalid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "044f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685", + "wx" : "4f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000", + "wy" : "00ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETzN8z9Z3JqgF5PFgCuKEnfOAfsoR\nc4Ajn72BaQAAAADtneoSTMjDlkFkEemIww9CfrUEr0OjFGzV336mBmbWhQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 518, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30440220554482404173a5582884b0d168a32ef8033d7eb780936c390e8eedf720c7f56402200a15413f9ed0d454b92ab901119e7251a4d444ba1421ba639fa57e0d8cf6b313", + "result" : "valid" + }, + { + "tcId" : 519, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502200b1d838dd54a462745e2c8d5f32637f26fb16dde20a385e45f8a20a8a1f8370e022100ae855e0a10ef087075fda0ed84e2bc5786a681172ea9834e53351316df332bbd", + "result" : "valid" + }, + { + "tcId" : 520, + "comment" : "x-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100af89e4f2b03e5d1f0352e258ef71493040c17d70c36cfd044128302df2ed5e4a0220420f04148c3e6f06561bd448362d6c6fa3f9aeeb7e42843b4674e7ddfd0ba901", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f49726500493584fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000", + "wx" : "3cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f497265004935", + "wy" : "0084fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f49726500493584fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPPA9YU2JOc/UmaB4c/rCgWGPBrj/\nh+gBXD9JcmUASTWE+hdNeRxyvyzjiAqJYN0qfHoTOKgvhanlnNvegAAAAA==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 521, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402206c1581f1485ccc4e657606fa1a38cf227e3870dc9f41e26b84e28483635e321b02201b3e3c22af23e919b30330f8710f6ef3760c0e2237a9a9f5cf30a1d9f5bbd464", + "result" : "valid" + }, + { + "tcId" : 522, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100dc83bf97ca28db0e04104a16fe3de694311a6cd9f230a300504ae71d8ec755b1022064a83af0ab3e6037003a1f4240dffd8a342afdee50604ed1afa416fd009e4668", + "result" : "valid" + }, + { + "tcId" : 523, + "comment" : "y-coordinate of the public key has many trailing 0's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30450220575b70b4375684291b95d81e3c820ed9bde9e5b7343036e4951f3c46894a6d9d022100f10d716efbfeba953701b603fc9ef6ff6e47edef38c9eeef2d55e6486bc4d6e6", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f4972650049357b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff", + "wx" : "3cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f497265004935", + "wy" : "7b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f4972650049357b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPPA9YU2JOc/UmaB4c/rCgWGPBrj/\nh+gBXD9JcmUASTV7BeixhuONQdMcd/V2nyLVg4XsyFfQelYaYyQhf////w==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 524, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30450221008d4f113189dfd3d3239e331f76d3fca9cef86fcd5dc9b4ab2ca38aeba56c178b022078389c3cf11dcff6d6c7f5efd277d480060691144b568a6f090c8902557bfc61", + "result" : "valid" + }, + { + "tcId" : 525, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100834d10ec2d2d50eeebfecd6328f03fafbb488fc043c362cbc67880ec0ebd04b302210094c026feaf6e68759146fe5b6fd52eaa3c3c5552d83719d2cb900615e2a634db", + "result" : "valid" + }, + { + "tcId" : 526, + "comment" : "y-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304502206894de495e7bb5566807d475d96a0d414a94f4f02c3ab7c2edc2916deafc1e1f022100a603642c20fabc07182867fcc6923d35be23ad3f97a5f93c6ec5b9cce8239569", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "042829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffffa01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e", + "wx" : "2829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffff", + "wy" : "00a01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffffa01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKCnDH6ouQA40TtlLyj/NBUWVbrz+\nitD236X/jv////+gGq+vAA5SWFhVr6dnat4oQRMJkFLfV+frO9N+vrkiLg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 527, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100e500c086fedd59e090ce7bfb615751ed9abe4c09b839ee8f05320245b9796f3e022100807b1d0638c86ef6113fff0d63497800e1b848b5a303a54c748e45ca8f35d7d7", + "result" : "valid" + }, + { + "tcId" : 528, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100b922c1abe1a8309c0acf90e586c6de8c33e37057673390a97ff098f71680b32b022100f86d92b051b7923d82555c205e21b54eab869766c716209648c3e6cc2629057d", + "result" : "valid" + }, + { + "tcId" : 529, + "comment" : "x-coordinate of the public key has many trailing 1's", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100823c37e46c74ec8497d89245fde3bf53ddb462c00d840e983dcb1b72bbf8bf27022100c4552f2425d14f0f0fa988778403d60a58962e7c548715af83b2edabbb24a49f", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f55a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73", + "wx" : "00fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f5", + "wy" : "5a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f55a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE////+UgIHmoEWN2PnnOPJmX/kFmt\naqwHCDGMTKmnpPVairy6LdqEdDEe5UFJuXPK4MD7iVV60L945lKaFmO9cw==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 530, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30450220577a08a95db6dcda9985109942d3786630f640190f920b95bd4d5d84e0f163ef022100d762286e92925973fd38b67ef944a99c0ec5b499b7175cbb4369e053c1fcbb10", + "result" : "valid" + }, + { + "tcId" : 531, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402207ba458cfe952326922c7aa2854bdc673ce3daaf65d464dfb9f700701503056b102200df8821c92d20546fa741fb426bf56728a53182691964225c9b380b56b22ee6d", + "result" : "valid" + }, + { + "tcId" : 532, + "comment" : "x-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402205cd60c3b021b4be116f06f1d447f65e458329a8bbae1d9b5977d18cf5618486102204c635cd7aa9aebb5716d5ae09e57f8c481a741a029b40f71ec47344ef883e86e", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "0400000003fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71", + "wx" : "03fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e", + "wy" : "1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000400000003fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAAAAA/oV+WOUnV8DpvXH+G+eABXu\nsjrrv/EXOTe6dI4QmYcgcOjofFVfoTZZzKXX+tz8sAI+qIlUjKSK8rp+cQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 533, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402204b50e1e8cf830e04c17e7472caf60da8150ffa568e2c64498cc972a379e542e502202e3adaa5afab89cca91693609555f40543578852cde29c21cb037c0c0b78478e", + "result" : "valid" + }, + { + "tcId" : 534, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402205aea930c7d8fffcd5c6df2c9430ef76f8b5ed58a8b9c95847288abf8f09a1ac202207ddfef7688a6053ce4eeeeefd6f1a9d71381b7548925f6682aa0a9d05cf5a3a3", + "result" : "valid" + }, + { + "tcId" : 535, + "comment" : "x-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304602210098b092c2d14b5b14a23e9368e0ce1be744dfae9f9a5cdaba51e7872099df96f202210090d3e4f87bd7bc94589f8150b6b01045cd8759a00af78b24d7de771887610df5", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015000000001352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2", + "wx" : "00bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015", + "wy" : "1352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015000000001352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvLspFMefBF6qbsu8YSgWs75dLWeW\ncH2BJen4UcGK8BUAAAAAE1K7Sg+i6kzOuatj3WhK3loRJ7zzAKaYpxk7wg==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 536, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "30460221009e95f2856a9fff9a172b07817c8c60fe185cd3ce9582678f8cc4b02bc444621a022100c54ca51d8117d904f0d3773911cb2792348fae21c2da7dad25f990d122376e4c", + "result" : "valid" + }, + { + "tcId" : 537, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3046022100e77df8f9782696344c33de29ebdc9f8d3fcf463d950cdbe256fd4fc2fd44877e02210087028850c962cf2fb450ffe6b983981e499dc498fbd654fa454c9e07c8cb5ca8", + "result" : "valid" + }, + { + "tcId" : 538, + "comment" : "y-coordinate of the public key is small", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100bd2dd6f5026d2b5ad7ead74bdf52b8cbcabc08facee0a1c8584658a85ed0c5dc02203e8543e819bdae47d872e29a85ba38addf3eaeaad8786d79c3fb027f6f1ff4bf", + "result" : "valid" + } + ] + }, + { + "type" : "EcdsaVerify", + "publicKey" : { + "type" : "EcPublicKey", + "curve" : "secp256r1", + "keySize" : 256, + "uncompressed" : "04bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d", + "wx" : "00bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015", + "wy" : "00fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d" + }, + "publicKeyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d", + "publicKeyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvLspFMefBF6qbsu8YSgWs75dLWeW\ncH2BJen4UcGK8BX////+7K1EtvBdFbMxRlScIpe1IqXu2EMM/1lnWObEPQ==\n-----END PUBLIC KEY-----\n", + "sha" : "SHA-512", + "tests" : [ + { + "tcId" : 539, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100bd5c0294acc28c15c5d1ebc7274c9ca21a081c8a67da430a34a7fff1a564fabb02207ec103a2385b4ff38b47d306434e9091de24dc9f1a25967ee06f8a0a53ac0181", + "result" : "valid" + }, + { + "tcId" : 540, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "304402203c7dbfb43dd80379ee2c23ad5472873a22c8a0179ac8f381ad9e0f193231dc1f02207cf8e07530ade503b3d43a84b75a2a76fc40763daed4e9734e745c58c9ae72d3", + "result" : "valid" + }, + { + "tcId" : 541, + "comment" : "y-coordinate of the public key is large", + "flags" : [ + "EdgeCasePublicKey" + ], + "msg" : "4d657373616765", + "sig" : "3045022100b38ca4dac6d949be5e5f969860269f0eedff2eb92f45bfc02470300cc96dd52602201c7b22992bb13749cc0c5bc25330a17446e40db734203f9035172725fc70f863", + "result" : "valid" + } + ] + } + ] +} diff --git a/packages/crypto/tests/wycheproof_secp256r1.rs b/packages/crypto/tests/wycheproof_secp256r1.rs new file mode 100644 index 0000000000..89499a14a3 --- /dev/null +++ b/packages/crypto/tests/wycheproof_secp256r1.rs @@ -0,0 +1,394 @@ +#![allow(clippy::single_match)] + +use cosmwasm_crypto::secp256r1_verify; +use serde::Deserialize; + +// See ./testdata/wycheproof/README.md for how to get/update those files +const SECP256R1_SHA256: &str = "./testdata/wycheproof/ecdsa_secp256r1_sha256_test.json"; +const SECP256R1_SHA512: &str = "./testdata/wycheproof/ecdsa_secp256r1_sha512_test.json"; +const SECP256R1_SHA3_256: &str = "./testdata/wycheproof/ecdsa_secp256r1_sha3_256_test.json"; +const SECP256R1_SHA3_512: &str = "./testdata/wycheproof/ecdsa_secp256r1_sha3_512_test.json"; + +#[derive(Deserialize, Debug)] +#[serde(rename_all = "camelCase")] +struct File { + number_of_tests: usize, + test_groups: Vec, +} + +#[derive(Deserialize, Debug)] +#[serde(rename_all = "camelCase")] +struct TestGroup { + public_key: Key, + tests: Vec, +} + +#[derive(Deserialize, Debug)] +#[serde(rename_all = "camelCase")] +struct Key { + uncompressed: String, +} + +#[derive(Deserialize, Debug)] +#[serde(rename_all = "camelCase")] +struct TestCase { + tc_id: u32, + msg: String, + sig: String, + // "acceptable", "valid" or "invalid" + result: String, +} + +fn read_file(path: &str) -> File { + use std::fs::File; + use std::io::BufReader; + + // Open the file in read-only mode with buffer. + let file = File::open(path).unwrap(); + let reader = BufReader::new(file); + + serde_json::from_reader(reader).unwrap() +} + +mod hashers { + use sha2::{Digest, Sha256, Sha512}; + use sha3::{Sha3_256, Sha3_512}; + + pub fn sha256(data: &[u8]) -> [u8; 32] { + Sha256::digest(data).into() + } + + // ecdsa_secp256r1_sha512 requires truncating to 32 bytes + pub fn sha512(data: &[u8]) -> [u8; 32] { + let mut out = [0u8; 32]; + let hash = Sha512::digest(data).to_vec(); + out.copy_from_slice(&hash[0..32]); + out + } + + pub fn sha3_256(data: &[u8]) -> [u8; 32] { + Sha3_256::digest(data).into() + } + + // ecdsa_secp256r1_sha3_512 requires truncating to 32 bytes + pub fn sha3_512(data: &[u8]) -> [u8; 32] { + let mut out = [0u8; 32]; + let hash = Sha3_512::digest(data).to_vec(); + out.copy_from_slice(&hash[0..32]); + out + } +} + +#[test] +fn ecdsa_secp256r1_sha256() { + let mut tested: usize = 0; + let File { + number_of_tests, + test_groups, + } = read_file(SECP256R1_SHA256); + assert_eq!(number_of_tests, 471, "Got unexpected number of tests"); + + for group in test_groups { + let public_key = hex::decode(group.public_key.uncompressed).unwrap(); + assert_eq!(public_key.len(), 65); + + for tc in group.tests { + tested += 1; + assert_eq!(tc.tc_id as usize, tested); + // eprintln!("Test case ID: {}", tc.tc_id); + + match tc.result.as_str() { + "valid" | "acceptable" => { + let message = hex::decode(tc.msg).unwrap(); + let message_hash = hashers::sha256(&message); + let der_signature = hex::decode(tc.sig).unwrap(); + let signature = from_der(&der_signature).unwrap(); + let valid = secp256r1_verify(&message_hash, &signature, &public_key).unwrap(); + assert!(valid); + } + "invalid" => { + let message = hex::decode(tc.msg).unwrap(); + let message_hash = hashers::sha256(&message); + let der_signature = hex::decode(tc.sig).unwrap(); + + if let Ok(signature) = from_der(&der_signature) { + match secp256r1_verify(&message_hash, &signature, &public_key) { + Ok(valid) => assert!(!valid), + Err(_) => { /* this is expected for "invalid", all good */ } + } + } else { + // invalid DER encoding, okay + } + } + _ => panic!("Found unexpected result value"), + } + if tc.result == "valid" {} + } + } + assert_eq!(tested, number_of_tests); +} + +#[test] +fn ecdsa_secp256r1_sha512() { + let mut tested: usize = 0; + let File { + number_of_tests, + test_groups, + } = read_file(SECP256R1_SHA512); + assert_eq!(number_of_tests, 541, "Got unexpected number of tests"); + + for group in test_groups { + let public_key = hex::decode(group.public_key.uncompressed).unwrap(); + assert_eq!(public_key.len(), 65); + + for tc in group.tests { + tested += 1; + assert_eq!(tc.tc_id as usize, tested); + // eprintln!("Test case ID: {}", tc.tc_id); + + match tc.result.as_str() { + "valid" | "acceptable" => { + let message = hex::decode(tc.msg).unwrap(); + let message_hash = hashers::sha512(&message); + let der_signature = hex::decode(tc.sig).unwrap(); + let signature = from_der(&der_signature).unwrap(); + let valid = secp256r1_verify(&message_hash, &signature, &public_key).unwrap(); + assert!(valid); + } + "invalid" => { + let message = hex::decode(tc.msg).unwrap(); + let message_hash = hashers::sha512(&message); + let der_signature = hex::decode(tc.sig).unwrap(); + + if let Ok(signature) = from_der(&der_signature) { + match secp256r1_verify(&message_hash, &signature, &public_key) { + Ok(valid) => assert!(!valid), + Err(_) => { /* this is expected for "invalid", all good */ } + } + } else { + // invalid DER encoding, okay + } + } + _ => panic!("Found unexpected result value"), + } + if tc.result == "valid" {} + } + } + assert_eq!(tested, number_of_tests); +} + +#[test] +fn ecdsa_secp256r1_sha3_256() { + let mut tested: usize = 0; + let File { + number_of_tests, + test_groups, + } = read_file(SECP256R1_SHA3_256); + assert_eq!(number_of_tests, 479, "Got unexpected number of tests"); + + for group in test_groups { + let public_key = hex::decode(group.public_key.uncompressed).unwrap(); + assert_eq!(public_key.len(), 65); + + for tc in group.tests { + tested += 1; + assert_eq!(tc.tc_id as usize, tested); + // eprintln!("Test case ID: {}", tc.tc_id); + + match tc.result.as_str() { + "valid" | "acceptable" => { + let message = hex::decode(tc.msg).unwrap(); + let message_hash = hashers::sha3_256(&message); + let der_signature = hex::decode(tc.sig).unwrap(); + let signature = from_der(&der_signature).unwrap(); + let valid = secp256r1_verify(&message_hash, &signature, &public_key).unwrap(); + assert!(valid); + } + "invalid" => { + let message = hex::decode(tc.msg).unwrap(); + let message_hash = hashers::sha3_256(&message); + let der_signature = hex::decode(tc.sig).unwrap(); + + if let Ok(signature) = from_der(&der_signature) { + match secp256r1_verify(&message_hash, &signature, &public_key) { + Ok(valid) => assert!(!valid), + Err(_) => { /* this is expected for "invalid", all good */ } + } + } else { + // invalid DER encoding, okay + } + } + _ => panic!("Found unexpected result value"), + } + if tc.result == "valid" {} + } + } + assert_eq!(tested, number_of_tests); +} + +#[test] +fn ecdsa_secp256r1_sha3_512() { + let mut tested: usize = 0; + let File { + number_of_tests, + test_groups, + } = read_file(SECP256R1_SHA3_512); + assert_eq!(number_of_tests, 545, "Got unexpected number of tests"); + + for group in test_groups { + let public_key = hex::decode(group.public_key.uncompressed).unwrap(); + assert_eq!(public_key.len(), 65); + + for tc in group.tests { + tested += 1; + assert_eq!(tc.tc_id as usize, tested); + // eprintln!("Test case ID: {}", tc.tc_id); + + match tc.result.as_str() { + "valid" | "acceptable" => { + let message = hex::decode(tc.msg).unwrap(); + let message_hash = hashers::sha3_512(&message); + let der_signature = hex::decode(tc.sig).unwrap(); + let signature = from_der(&der_signature).unwrap(); + let valid = secp256r1_verify(&message_hash, &signature, &public_key).unwrap(); + assert!(valid); + } + "invalid" => { + let message = hex::decode(tc.msg).unwrap(); + let message_hash = hashers::sha3_512(&message); + let der_signature = hex::decode(tc.sig).unwrap(); + + if let Ok(signature) = from_der(&der_signature) { + match secp256r1_verify(&message_hash, &signature, &public_key) { + Ok(valid) => assert!(!valid), + Err(_) => { /* this is expected for "invalid", all good */ } + } + } else { + // invalid DER encoding, okay + } + } + _ => panic!("Found unexpected result value"), + } + if tc.result == "valid" {} + } + } + assert_eq!(tested, number_of_tests); +} + +fn from_der(data: &[u8]) -> Result<[u8; 64], String> { + const DER_TAG_INTEGER: u8 = 0x02; + + let mut pos = 0; + + let Some(prefix) = data.get(pos) else { + return Err("Could not read prefix".to_string()); + }; + pos += 1; + if *prefix != 0x30 { + return Err("Prefix 0x30 expected".to_string()); + } + + let Some(body_length) = data.get(pos) else { + return Err("Could not read body length".to_string()); + }; + pos += 1; + if data.len() - pos != *body_length as usize { + return Err("Data length mismatch detected".to_string()); + } + + // r + let Some(r_tag) = data.get(pos) else { + return Err("Could not read r_tag".to_string()); + }; + pos += 1; + if *r_tag != DER_TAG_INTEGER { + return Err("INTEGER tag expected".to_string()); + } + let Some(r_length) = data.get(pos).map(|rl: &u8| *rl as usize) else { + return Err("Could not read r_length".to_string()); + }; + pos += 1; + if r_length >= 0x80 { + return Err("Decoding length values above 127 not supported".to_string()); + } + if pos + r_length > data.len() { + return Err("R length exceeds end of data".to_string()); + } + let r_data = &data[pos..pos + r_length]; + pos += r_length; + + // s + let Some(s_tag) = data.get(pos) else { + return Err("Could not read s_tag".to_string()); + }; + pos += 1; + if *s_tag != DER_TAG_INTEGER { + return Err("INTEGER tag expected".to_string()); + } + let Some(s_length) = data.get(pos).map(|sl| *sl as usize) else { + return Err("Could not read s_length".to_string()); + }; + pos += 1; + if s_length >= 0x80 { + return Err("Decoding length values above 127 not supported".to_string()); + } + if pos + s_length > data.len() { + return Err("S length exceeds end of data".to_string()); + } + let s_data = &data[pos..pos + s_length]; + pos += s_length; + + if pos != data.len() { + return Err("Extra bytes in data input".to_string()); + } + + let r = decode_unsigned_integer(r_data, "r")?; + let s = decode_unsigned_integer(s_data, "s")?; + + let mut out = [0u8; 64]; + out[0..32].copy_from_slice(&r); + out[32..].copy_from_slice(&s); + Ok(out) +} + +fn decode_unsigned_integer(mut data: &[u8], name: &str) -> Result<[u8; 32], String> { + if data.is_empty() { + return Err(format!("{name} data is empty")); + } + + // If high bit of first byte is set, this is interpreted as a negative integer. + // A leading zero is needed to prevent this. + if (data[0] & 0x80) != 0 { + return Err(format!("{name} data missing leading zero")); + } + + // "Leading octets of all 0's (or all 1's) are not allowed. In other words, the leftmost + // nine bits of an encoded INTEGER value may not be all 0's or all 1's. This ensures that + // an INTEGER value is encoded in the smallest possible number of octets." + // https://www.oss.com/asn1/resources/asn1-made-simple/asn1-quick-reference/basic-encoding-rules.html + + // If leading byte is 0 and there is more than 1 byte, trim it. + // If the high bit of the following byte is zero as well, the leading 0x00 was invalid. + if data.len() > 1 && data[0] == 0 { + data = &data[1..]; + if (data[0] & 0x80) == 0 { + return Err(format!("{name} data has invalid leading zero")); + } + } + + // The other requirement (first 9 bits being all 1) is not yet checked + + // Do we need a better value range check here? + if data.len() > 32 { + return Err(format!("{name} data exceeded 32 bytes")); + } + + Ok(pad_to_32(data)) +} + +fn pad_to_32(input: &[u8]) -> [u8; 32] { + let shift = 32 - input.len(); + let mut out = [0u8; 32]; + out[shift..].copy_from_slice(input); + out +} From 576f26c7112e4d1555653275ff0541edf8665062 Mon Sep 17 00:00:00 2001 From: Simon Warta <2603011+webmaster128@users.noreply.github.com> Date: Fri, 26 Jan 2024 01:02:02 +0100 Subject: [PATCH 2/3] Apply suggestions from code review Co-authored-by: Mauro Lacy --- packages/crypto/testdata/wycheproof/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/crypto/testdata/wycheproof/README.md b/packages/crypto/testdata/wycheproof/README.md index 077ea37b8b..67740a6d9c 100644 --- a/packages/crypto/testdata/wycheproof/README.md +++ b/packages/crypto/testdata/wycheproof/README.md @@ -8,7 +8,7 @@ This test data is used by integration tests in `test/wycheproof_*.rs`. ## Update -To ensure integrety if the files and update them to the latest version, run this +To ensure integrity of the files and update them to the latest version, run this from the repo root: ```sh From a0efe138c54aa27fbb18893f1902a46d38a54df9 Mon Sep 17 00:00:00 2001 From: Simon Warta Date: Fri, 26 Jan 2024 01:02:43 +0100 Subject: [PATCH 3/3] Apply review feedback --- packages/crypto/tests/wycheproof_secp256r1.rs | 20 ++++++------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/packages/crypto/tests/wycheproof_secp256r1.rs b/packages/crypto/tests/wycheproof_secp256r1.rs index 89499a14a3..2003035746 100644 --- a/packages/crypto/tests/wycheproof_secp256r1.rs +++ b/packages/crypto/tests/wycheproof_secp256r1.rs @@ -60,10 +60,8 @@ mod hashers { // ecdsa_secp256r1_sha512 requires truncating to 32 bytes pub fn sha512(data: &[u8]) -> [u8; 32] { - let mut out = [0u8; 32]; let hash = Sha512::digest(data).to_vec(); - out.copy_from_slice(&hash[0..32]); - out + hash[..32].try_into().unwrap() } pub fn sha3_256(data: &[u8]) -> [u8; 32] { @@ -72,10 +70,8 @@ mod hashers { // ecdsa_secp256r1_sha3_512 requires truncating to 32 bytes pub fn sha3_512(data: &[u8]) -> [u8; 32] { - let mut out = [0u8; 32]; let hash = Sha3_512::digest(data).to_vec(); - out.copy_from_slice(&hash[0..32]); - out + hash[..32].try_into().unwrap() } } @@ -86,7 +82,7 @@ fn ecdsa_secp256r1_sha256() { number_of_tests, test_groups, } = read_file(SECP256R1_SHA256); - assert_eq!(number_of_tests, 471, "Got unexpected number of tests"); + assert!(number_of_tests >= 471, "Got unexpected number of tests"); for group in test_groups { let public_key = hex::decode(group.public_key.uncompressed).unwrap(); @@ -95,7 +91,6 @@ fn ecdsa_secp256r1_sha256() { for tc in group.tests { tested += 1; assert_eq!(tc.tc_id as usize, tested); - // eprintln!("Test case ID: {}", tc.tc_id); match tc.result.as_str() { "valid" | "acceptable" => { @@ -135,7 +130,7 @@ fn ecdsa_secp256r1_sha512() { number_of_tests, test_groups, } = read_file(SECP256R1_SHA512); - assert_eq!(number_of_tests, 541, "Got unexpected number of tests"); + assert!(number_of_tests >= 541, "Got unexpected number of tests"); for group in test_groups { let public_key = hex::decode(group.public_key.uncompressed).unwrap(); @@ -144,7 +139,6 @@ fn ecdsa_secp256r1_sha512() { for tc in group.tests { tested += 1; assert_eq!(tc.tc_id as usize, tested); - // eprintln!("Test case ID: {}", tc.tc_id); match tc.result.as_str() { "valid" | "acceptable" => { @@ -184,7 +178,7 @@ fn ecdsa_secp256r1_sha3_256() { number_of_tests, test_groups, } = read_file(SECP256R1_SHA3_256); - assert_eq!(number_of_tests, 479, "Got unexpected number of tests"); + assert!(number_of_tests >= 479, "Got unexpected number of tests"); for group in test_groups { let public_key = hex::decode(group.public_key.uncompressed).unwrap(); @@ -193,7 +187,6 @@ fn ecdsa_secp256r1_sha3_256() { for tc in group.tests { tested += 1; assert_eq!(tc.tc_id as usize, tested); - // eprintln!("Test case ID: {}", tc.tc_id); match tc.result.as_str() { "valid" | "acceptable" => { @@ -233,7 +226,7 @@ fn ecdsa_secp256r1_sha3_512() { number_of_tests, test_groups, } = read_file(SECP256R1_SHA3_512); - assert_eq!(number_of_tests, 545, "Got unexpected number of tests"); + assert!(number_of_tests >= 545, "Got unexpected number of tests"); for group in test_groups { let public_key = hex::decode(group.public_key.uncompressed).unwrap(); @@ -242,7 +235,6 @@ fn ecdsa_secp256r1_sha3_512() { for tc in group.tests { tested += 1; assert_eq!(tc.tc_id as usize, tested); - // eprintln!("Test case ID: {}", tc.tc_id); match tc.result.as_str() { "valid" | "acceptable" => {