You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@milagro.apache.org by br...@apache.org on 2018/11/08 00:12:40 UTC

[20/51] [partial] incubator-milagro-crypto-c git commit: update code

http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto-c/blob/8d28d2c3/testVectors/ecdsa/P-521/KeyPair.rsp
----------------------------------------------------------------------
diff --git a/testVectors/ecdsa/P-521/KeyPair.rsp b/testVectors/ecdsa/P-521/KeyPair.rsp
new file mode 100644
index 0000000..8bfbe7c
--- /dev/null
+++ b/testVectors/ecdsa/P-521/KeyPair.rsp
@@ -0,0 +1,45 @@
+[P-521]
+
+[B.4.2 Key Pair Generation by Testing Candidates]
+N = 10
+
+d = 0184258ea667ab99d09d4363b3f51384fc0acd2f3b66258ef31203ed30363fcda7661b6a817daaf831415a1f21cb1cda3a74cc1865f2ef40f683c14174ea72803cff
+Qx = 019ee818048f86ada6db866b7e49a9b535750c3673cb61bbfe5585c2df263860fe4d8aa8f7486aed5ea2a4d733e346eaefa87ac515c78b9a986ee861584926ce4860
+Qy = 01b6809c89c0aa7fb057a32acbb9ab4d7b06ba39dba8833b9b54424add2956e95fe48b7fbf60c3df5172bf386f2505f1e1bb2893da3b96d4f5ae78f2544881a238f7
+
+d = 014b967f6651b5e6a482fccc609ab6630b3806fe1f94f4083319b0b50575fb3436a04f508172f7fc396d6e969ca3e8d1c1e9a84d431a48b94f30566dc6808dd1d138
+Qx = 0145f371040d3d4a24d6d3ceb2681db207b77096ab57606d92981a69ce35a0ac4628c2dc1284e4dd9715cde46f18b59e9fc98fea162ceb6e2c481ecbfad4e19d3abf
+Qy = 0125eb751ff4fb8bb98e1fb455d2cfb35e3323de5c7280fc9e51729704f4fec51d5a6ce6c1f75dbf710e1f9d3ee9f2a77e7c12c045e729d0e9a281c37f0f07b8cf0c
+
+d = 007616133442038e27357db450c353bd11fba3bcac8b7b8c3ef76aadb5fe05be1dd57a22d42a5444d00dcd018d389170c54fe781cb21c36020f657d001e1cbb41dd1
+Qx = 00bbecf65446053080cc1cf955938c58eb630c84ecad2756f93b47ebfa9f9bca3fa8343539812608cab2d3a9f8079ab8311a4f269b0a3cd9e0ddd066fc4121d92f0e
+Qy = 01dd96db411ad67997b10d42c76b8510c8a930dfa9a5927ac274b0c5021798690777b8e77e6ae2648bf513e02f586898e7dae20d71d19838a9f3175f06b057c5f2f4
+
+d = 013bcc0ed286861d3f5463bcfc0b68a6ec0fcf86291ba41257838b72536ada986e43e05ec4c32c0b29da632dd1ce39efc81c8278f5d18d9cf27f6e75523821a46d99
+Qx = 00a3a165c2bb535d1041d54b749e2f6e6c734a03c09df69c14a5dd2aa57790acc504548885f0bd3a44f8b66bb9c36b3ff257d7d465efb81445d4cc5a5af7f36c679c
+Qy = 008a5d094e4f2aa18fb877d2649dfd76f9482ac2e049aefbb463f3c9061cfdfaec785df9577a090e45a17330f422fb16a16acccff9ade7b034ec544c7a8aea441c49
+
+d = 01f79977450ce5887ae2ef7d648ab658c056e57f0a690cf28a4e94f373f2c15eb3c0d3e0d670feca6ff02d5fd03187146eb85e09d72f8cabb1900d0c338a23080c12
+Qx = 016d9ede24a3950098798766e57c53f2749cd0d3f56ca0904a3711c030965291edd5c6fe0903771768f42340e88e1cd2f161358972775fa53e5b87c3b660acc447e2
+Qy = 010ca5cfe6df8e069ae1326dd9e18cca75cde7cb24b427a409025f9e12b5098a56a20bb90b1d23b75fad7a54f9e25ff892e1236d1717f1f94e18fa2289f899fe2221
+
+d = 009a9160d2614937c33284627826be871c26407c84d23e6d23de5f5f48b500b89b0bc07f10c4e0fb99c085d9e9d7149278f76e3fae4abaeeef2495fe3d228ef0f949
+Qx = 019ed72e6bfc673f2a852acf9d60e2c3b19c50a56c54ac304612b26f83afe1aff4f87dca458e83b6f89ec48f8b1a20931acd3c97c71bf21b5633cf4fd68437db45c1
+Qy = 00d141dc4272ca03a528ad8fdade9ecb3070fb2d4af0bb296abdaed651b5d26573eb4443a4d0d4134ff248d8ed402c93bf6a905cb2792b9cecb4aeb69ed78f410382
+
+d = 002fdc02492573228ada3fa8a2db68d72e9396a2bfca9a8ebdb5c2955cc894a7493cfae001759368eb8ffc3c29b15365f6484cdd6a44e084f1d3c88dba7aa4f29c3c
+Qx = 010ba48733fc3e8f54f601f74659bcd43fde4cf8c5a07da341ce68e792f8f70721c23dc6d9b1b401bd3254c8de546e9367f10aee947b1dd295e6d822524546ddc195
+Qy = 01b2c0ea5c4171cdc069fc6c69e18636cfa404f487a143b3981a1f212969cdbd6601a84302867f8a4a4730fdcd0f994c226f7c02c5e664b79c34b7e5d071423ff528
+
+d = 01ad69406c11c66fad5fe2295f0e526622488755ecb18ba12ee51fa879ed47ff5f5b05195a821e8d36489492b5de2009f303e17b9fdf6379dae52c0178a16927ca38
+Qx = 01f1ca24041ba73812c1124e96454545c45ab903407afce3105108362ed3cb4f7d0d5b1466074c2ef22c7fd1ebc16e74a74a163fbb2f530ef44549dad81e806f24d6
+Qy = 006b34d6eff12bb76aee9bd7ac590e437735ae77da4a60191e8e01f1ceb8ad7c1eda4d0f84d4ed2dc72de702d351ef8f64b2cdf2a95ef185d3119f276f6ccb3c5a65
+
+d = 013c41b6514c608a2e4696cfc6bd2ddd36611ca5dbf6f2d2e3e32a1925c5ae4ff591dcaa75c4e8043adcb99d510cb664868bb638a2c52b81bb240a974548a68fce79
+Qx = 00c6d82f16433c71e37f2e9779be4599a3b1dda415f6c338e52df4ca70607a69637b50170f21bbb7f60b9a9c145bb63e6d4f370fcd00bfb60f7a0dc55cc44f65fc90
+Qy = 0152344d6f2e72deb2c59ff2ae268fb067279a1942ae231734ba980c5457a6a73bbf2b13343ae44a0c8a712572851da4b91065ee0436abe811ae71883c4a2f1b797f
+
+d = 00316e2d06fd00c9c4266ea20bf60cdf867859a6f5ba242de35054cdcf5486e5e344ab1d1bce13e2cc831137320774ec3ab0f6fb554fccec56ada267959794898028
+Qx = 00a183880e61c6e0435e591694e51f63c099fcd5b61e3ddacc4057399afc6a90321424ab0ec1699aeeb9c404616d62c23466132b52583c18d3530116b58ad41452f0
+Qy = 00191e06057e2282b4de6e0741fb37b04f0e6ae172be81267b0db3023e7a116ac5861decd54ba84e15d5fd64d6ca628461b79e120851bed1c74adebe3ddee838a170
+

http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto-c/blob/8d28d2c3/testVectors/ecdsa/P-521/sha256Sign.rsp
----------------------------------------------------------------------
diff --git a/testVectors/ecdsa/P-521/sha256Sign.rsp b/testVectors/ecdsa/P-521/sha256Sign.rsp
new file mode 100644
index 0000000..836e1b8
--- /dev/null
+++ b/testVectors/ecdsa/P-521/sha256Sign.rsp
@@ -0,0 +1,121 @@
+[P-521,SHA-256]
+
+Msg = 8ab8176b16278db54f84328ae0b75ef8f0cd18afdf40c04ad0927ed0f6d9e47470396c8e87cde7a9be2ffbfe6c9658c88b7de4d582111119c433b2e4a504493f0a1166e3a3ea0d7b93358f4a297d63f65a5e752f94e2ee7f49ebcc742fa3eb03a617d00c574245b77a20033854d82964b2949e2247637239ab00baf4d170d97c
+d = 01e8c05996b85e6f3f875712a09c1b40672b5e7a78d5852de01585c5fb990bf3812c3245534a714389ae9014d677a449efd658254e610da8e6cad33414b9d33e0d7a
+Qx = 007d042ca19408524e68b981f1419351e3b84736c77fe58fee7d11317df2e850d960c7dd10d10ba714c8a609d163502b79d682e8bbecd4f52591d2748533e45a867a
+Qy = 0197ac6416111ccf987d290459ebc8ad9ec56e49059c992155539a36a626631f4a2d89164b985154f2dddc0281ee5b5178271f3a76a0914c3fcd1f97be8e8376efb3
+k = 00dc8daaacddb8fd2ff5c34a5ce183a42261ad3c64dbfc095e58924364dc47ea1c05e2599aae917c2c95f47d6bb37da008af9f55730ddbe4d8ded24f9e8daa46db6a
+R = 009dd1f2a716843eedec7a6645ac834d4336e7b18e35701f06cae9d6b290d41491424735f3b57e829ad5de055eaeef1778f051c1ee152bf2131a081e53df2a567a8a
+S = 002148e8428d70a72bc9fa986c38c2c97deda0420f222f9dc99d32c0acba699dc7ba0a2b79ce5999ff61bd0b233c744a893bc105bca5c235423e531612da65d72e62
+
+Msg = c4bc2cec829036469e55acdd277745034e4e3cc4fcd2f50ec8bd89055c19795a1e051ccf9aa178e12f9beab6a016a7257e391faa536eaa5c969396d4e1ade36795a82ebc709d9422de8497e5b68e7292538d4ccdc6dd66d27a3ece6a2844962b77db073df9489c9710585ba03d53fa430dbc6626dc03b61d53fc180b9af5dea6
+d = 00b65bf33b2f27d52cbfabcadce741e691bf4762089afd37964de1a0deda98331bf8c74020a14b52d44d26e2f6fa7bcddbe83be7db17a0c8a1b376469cf92c6da27c
+Qx = 010038bb9a7aea626de68c14c64243150e72c69e2f8a1ab922bfbdaa6f33d24fb4542c0324357b0dd640bbcd07632ecd253f64ca2bfbfbf3de9b24fffd0568ab82da
+Qy = 00faf867d95308cc36d6f46844a0f535dc70f9768eed011a2464d2f308fa1d8e72c3616aec7e70516908183ffce7fdd36984a15f73efaa3858c2edf16a784d40e6c2
+k = 014aeb96c57d99677a1f5e4588064215e7e9af4027bfb8f31ff6126dbf341b8e6f719465e4273e91ba32670feca802549808322b7ee108bb20653cf20f93284d365f
+R = 0075ead62edf7d86c5d1bc2443d1aeb5dc034fd999e6ea012cef7499d9d050cd97d262095884e9fc89a42e15bd3dee80fe3c1ba10f4caabc4aabb86347023028b663
+S = 0129a992a6ff66d41948d11fa680f732b1a74315b804c982805190ed9d2fae223f2b149980b9241998cdea0c5672595a8a49d5186a0ef7a46c0a376f925bdda81726
+
+Msg = 1c1b641d0511a0625a4b33e7639d7a057e27f3a7f818e67f593286c8a4c827bb1f3e4f399027e57f18a45403a310c785b50e5a03517c72b45ef8c242a57b162debf2e80c1cf6c7b90237aede5f4ab1fcaf8187be3beb524c223cc0ceff24429eb181a5eea364a748c713214880d976c2cd497fd65ab3854ad0d6c2c1913d3a06
+d = 002c4e660609e99becd61c14d043e8b419a663010cc1d8f9469897d7d0a4f076a619a7214a2a9d07957b028f7d8539ba7430d0b9a7de08beeeae8452d7bb0eac669d
+Qx = 00fb3868238ca840dbb36ecc6cf04f5f773ea0ab8e8b0fdcf779dc4039a8d7146a417504e953c0cb5e7f4e599cc2c168deda8b7f16084b5582f89f2ece4cae5167f7
+Qy = 01f90b5c15eeda48e747cf3ee8183166a49dbfac6161cbd09d29d40a6854f4c495e88a435892a920cdaad20d41985890b648badd4f0a858ffcbd9afdfc23134ede18
+k = 01f875bbf882cd6dd034a87916c7b3ba54b41b2ea2ce84ebaf4e393fcf7291fee09dec2b5bb8b6490997c9e62f077c34f0947fe14cec99b906dd6bf0b5d301e75ca1
+R = 007aa70425697736b298233249f5d0cf25c99e640c9ff88035ef1804820e1bfe7d043755f02d7a079494f7fa6dc26740c4e6b7b430c63f29c67bbd3a5c88d2f0e8d1
+S = 00e0d42e4ff11cf5be37a9fda348514d5097a662f214687cbfb28ff42d635b13029871ca4f464bb1fbce02d5da4d5fb61b2a071844259fc863d136197bec3a61e7c7
+
+Msg = adb5f069b2b501a3ebb83d4f1808eb07710ac4a7b12532996855a20bcc54b2f76812915f632163c3654ff13d187d007152617cf859200194b59c5e81fc6cc9eb1ceb75d654050f260caa79c265254089270ccd02607fdcf3246119738c496dc3a4bd5d3be15789fc3d29a08d6d921febe2f40aef286d5d4330b07198c7f4588e
+d = 017c3522007a90357ff0bda7d3a36e66df88ca9721fb80e8f63f50255d47ee819068d018f14c6dd7c6ad176f69a4500e6f63caf5cf780531004f85009c69b9c1230c
+Qx = 013a4bea0eed80c66ea973a9d3d4a90b6abbb5dee57d8affaf93390a8783a20982eba644d2e2809f66530adeeee7f9a1da7515447e9ba118999f76f170c375f621f7
+Qy = 012f9dfaee40a75d8442b39b37a5c19ea124b464236e9b9a31bae6780cfd50f7ea4a700154b5ea0feeb64e9b35a1b0e33e46900cca1f34d13bb17e5017769841af27
+k = 018388a49caeda35859ef02702c1fd45ff26991998bd9d5e189c12c36cdae3f642ddd4a79561bd1d3e1cd9359de8f5c9e1604a312d207a27b08a6033f2741794ced5
+R = 015c6264795837dfea19f91876455f564f073c5c84a3c9d76e67872ae0447ba0d4850d8721302b25bec7ebfedd2721de140b2f3dead547042b24b0876117e7093cc1
+S = 0060eb74236c189a28ed20bd0822eb22d75f7d97c9043a3c8e3f6d4c90bc8ca02ac4d37c1171c799a1c7dfd2fcbf83406b5e48c051e0fbf0fd937bfe6c3db4e18154
+
+Msg = f253484d121d1ce8a88def6a3e9e78c47f4025ead6f73285bf90647102645b0c32d4d86742a50b8b7a42d5f6156a6faf588212b7dc72c3ffd13973bdba732b554d8bffc57d04f8167aef21ee941ee6ffb6cce0f49445bd707da8deb35dca650aaf761c3aa66a5ebccddd15aee21293f63061a7f4bfc3787c2cd62c806a1a9985
+d = 00c4dad55871d3bd65b016d143ddd7a195cc868b3048c8bbcb1435622036bdb5e0dec7178ca0138c610238e0365968f6ddd191bbfacc91948088044d9966f652ff25
+Qx = 0014858a3b9bd426b678fdcf93fc53d17e7a9e8fe022442aaaba65399d12fd3a6a381958fb0f07ac6088f4e490506ec0f1ab4d0dbd461126f7eb46ff69cfa8bd88af
+Qy = 018c18ce29ecc6d79d26a2de0cd31c4b32e84b5e90f6ba748f86c5afbd89618aceb9079460cbd1a8261ed5476973e61bf1d17ea78b022387443800c9247d21dde550
+k = 005577108f4187a173e5c29e927a8fc8f5ffd37e184254a6e381ff1018955aec91a35f30085e8cee6a7555c10f9efdce26d62f2b4b52dfdbaeafc3a30983e2d50d5b
+R = 00344375ae7c804cbe32ced7a20976efae5d9c19eb88b6e24514d1d0cfb728b0f4601098b18b2e98f42b5222dd5237d4d87767007bf5acb185c5526d72047e2cb1a1
+S = 002de4cfa908c73c1102d6fb7062baf54a056a9517701e036c9c51e09899d60051612d59348945f845dffebec5aa395b2fac7229929033615788777306ccad96d0a3
+
+Msg = 33bab1c369c495db1610965bc0b0546a216e8dd00cd0e602a605d40bc8812bbf1ffa67143f896c436b8f7cf0bed308054f1e1ff77f4d0a13c1e831efbd0e2fcfb3eadab9f755f070ba9aeaceb0a5110f2f8b0c1f7b1aa96a7f2d038a1b72e26400819b1f73d925ea4e34d6acaf59d0a461a34ce5d65c9c937a80e844e323a16d
+d = 003d4749fadcc2008f098de70545a669133c548ce0e32eec1276ff531bcff53533144555728ad8906d17f091cc0514571691107350b6561858e90dbe19633aaf31bf
+Qx = 010fe5986b65f6e65d13c88c4d2aed781a91026904f82129d46779bdadaf6b733c845a934e941ab4a285efdea9c96ecc9dc784d87e4d937b42c337b3a9cb111a9600
+Qy = 0077853768a2a4d6f596f57414e57ec60b76d3cd5ece8351cd1f335ebcb8801a3d91fb82c65caaeb5c31eea9918367bb5906863ff3ccaf7a6cee415e0d75c15ac2e0
+k = 01fbb4de337b09e935a6dc6215ffcfcb85d236cc490585e73251a8b8bac37cfa36c5d1df5f4536d33659be1e7a442529a783452f7efda74a4f661b6a127f9248aaf7
+R = 009d8f10eeff6178594c89d6e8184f9502117384813243ddf9ccf3c8eac5dc6502c472dfc1487a5caffc569f7dedd14a8ebcb310e9bacdb79fb6655aba026cdf87f2
+S = 00f74236c7915d638708d17c9f10e39dda358faf9bbb821d8dcda0d151aac143bfb165ad0a23a65cd3de532e32cad928728f5ae1c16f58fc16577f3ca8e36f9e708b
+
+Msg = 08c8b7faaac8e1154042d162dca1df0f66e0001b3c5ecf49b6a4334ce4e8a754a1a8e4daf8ec09cf1e521c96547aed5172ef852e82c03cddd851a9f992183ac5199594f288dbcc53a9bb6128561ff3236a7b4b0dce8eaf7d45e64e782955ee1b690ce6a73ece47dc4409b690de6b7928cbe60c42fc6a5ddf1d729faf1cc3885e
+d = 0096a77b591bba65023ba92f8a51029725b555caf6eff129879d28f6400e760439d6e69ce662f6f1aecf3869f7b6057b530a3c6ff8ed9e86d5944f583ee0b3fbb570
+Qx = 00fdf6aed933dba73913142ef8bdcd4b760db8500831cd11d7707ab852a6372c05d112a1e7fbc7b514c42142c7370d9f4129493cd75cc6f2daf83747078f15229db6
+Qy = 00ef91dffb3c43080a59534b95ca585ee87f6145f6a0199b2b82c89f456d8bd8e6ac71c78039c08177184484eb2ebd372f189db3a58fab961a75a18afec1ee32764a
+k = 013aa7b0471317a2a139c2f90df1c40d75e5a8a830fbaf87030fffdb2ef6f2c93d1310c9ed7fe9d7bcd4fe46537ff2495bc9c4f0aaff11461f5e4bebbfbce9a8740a
+R = 01c7a21800962c91d4651553633b18612d931bb88bff8b743ed595b4e869437e50f8e84fbf334c99061db123a1c40b73b07e203790561a37df65a660355ba2017d78
+S = 01301e1782559a38f1ca0eebe9bed0f5c7c33103d506a24f8a688f500ee1fe37f97b6685319279e82e6fe43cfd823ccbc123309974cffa76c4f8d41ec02a3cbc45f1
+
+Msg = ba74eed74282811631bd2069e862381e4e2a1e4e9a357b1c159a9ce69786f864b60fe90eeb32d8b72b099986fc594965a33285f7185b415df58fead7b8b50fc60d073680881d7435609ad1d22fd21e789b6730e232b0d2e888889fb82d6ad0337ab909308676164d4f47df44b21190eca8ba0f94995e60ad9bb02938461eee61
+d = 0015152382bfd4f7932a8668026e705e9e73daa8bade21e80ea62cf91bd2448ebc4487b508ca2bdaaf072e3706ba87252d64761c6885a65dcafa64c5573c224ae9e6
+Qx = 000b8c7c0186a77dc6e9addd2018188a6a40c3e2ba396f30bbd9293dba2841d57d60866b37f587432719b544d8bf7eb06d90a8c0dc9c93b0c53d53b2f667077228ca
+Qy = 01dd2e5c73ab908ae34f701689f1cd3cf5186d3a2bc941e208bf3ef970e5e429ee9b154d73286b2e5da423e75b7c7b78c7bdf915da92279db43265a0cdefca51f86a
+k = 00d03506999f5cc9ec3304072984a20a9c64a22ad9b418495ca904f4bbddc96e76d34672cb52763339d3f3bc5b1701c00a675b972797e3a086314da1a8d338436566
+R = 0085406c0ff5ec91f598bb579ad8714ad718c3e133d5dcc2e67c5d2339c146b69919cac07f3bc2bda218f4c7c8be04855e2ca6fff7fbdc4fc0fda87c8c3081cad4f5
+S = 01b45f2066e583636215ae135afc202b8bf3f301eccff2e1c0198b9aeddf695fa8179488e7b622fc307f601e2f6551815117cc836bb09ef888f8e64a45d9c84ad30c
+
+Msg = dc71f171a28bdc30968c39f08f999b88dc04c550e261ecf1124d67f05edeae7e87fe9b8135a96fe2bc3996a4f47213d9d191184a76bd6310e1ee5cb67ea7fc3ef6f641a0ba165198040fa668192b75a4754fc02c224bd4a74aade5a8c814adf151c2bfeda65165a04ef359e39847c84e312afb66d4cd1db50d41ef3fe5f31296
+d = 01750ff0ca0c166560b2034bc5760fe0b3915340bc43216e9de0c1d4a76550e8b2036e8b874230f8d29354aed43e183610f24fd4abd4b0be2f111dae942bd7a121f7
+Qx = 01b4b8947192a7c0166c0e0b2791e217370836283e805f3ee11cfb78445aba3c5bc39fe594e01916617ad59e7c8e740d8f2d07d88905d3f33bd5e51aafd4943c5dc6
+Qy = 01175d117232836c28e717ce2a55e59f4ec550effde30d18e3d99e42c6aa2283c7b3e7f2f6ff1fca605dde78c3a5bffa689347b4c93f51ba59a1787bb7d5e43861dc
+k = 0023645023d6bdf20652cdce1185c4ef225c66d54f18632d99ccf743bf554d04c214c88ce52a4f71ec75c899ad1b3c07c34112ca20b55c217ff1d72c9528e2774ce8
+R = 01e933f68ce0f8403cb16822b8e0564b1d39a35f27b53e4ae0bcdff3e051759464afbc34998ba7c8a7ee34ef6c1aaa722cffe48356fd0b738058358d4c768b3186c1
+S = 00a67368a305508ce6d25d29c84f552a4a513998990fef4936244f891a2909c30d5fdc9e8a267ecbf3c597138f4a08f7e92bee57d5420eadd700fee864bf78b2614b
+
+Msg = b895788d7828aaeace4f6b61a072ffa344d8ea324962ba6dab5efda93f65bf64a0f2ac6d5721d03ee70e2aef21cdba69fd29040199160e3a293b772ffb961ed694a8dc82800dab79367a4809a864e4aff6bc837aaa868e952b771b76591c0bb82249034e3208e593d85973d3fea753a95b16e221b2561644535c0131fe834ae7
+d = 0023048bc16e00e58c4a4c7cc62ee80ea57f745bda35715510ed0fc29f62359ff60b0cf85b673383b87a6e1a792d93ab8549281515850fa24d6a2d93a20a2fff3d6e
+Qx = 00ba3dc98326a15999351a2ec6c59e221d7d9e7ee7152a6f71686c9797f3f330d3150123620d547813ba9d7cc6c6d35cc9a087d07dff780e4821e74ad05f3762efd6
+Qy = 018b051af9824b5f614d23ecadd591e38edbfe910ad6cbebc3e8a6bec11ea90691c17deb3bc5f34a4a3acd90b7b10f521f6ee7b3cfbfdc03b72d5a8783a4a77c3e4c
+k = 006099d2667f06c58798757632d07d8b3efbe9c1323efb0c244be6b12b3b163ba1b7cf5246c98dcc0771665a66696d687af5f28ed664fd87d5093df6427523d4db84
+R = 010dc80ea853064a2ba5a781f108aca3785c5ec0aa45aa05ba31d4de671170797589e863d54a3a986aadf6f670277f50355713dfb27d4ec7e348f787910b3cd668cd
+S = 0018572bfad4f62e3694d1f2e6ffd432faed2e2b9d7e3611a07138212f1e79e6c394839f7cfae96bc368422630016fb9346681eadc5f9699e7331c3b5fde6d65e4c6
+
+Msg = 2c5bd848c476e34b427cfe5676692e588e1957957db7b5704492bd02104a38216535607f5d092dc40020130c04a3aaf0f1c52409834926d69a05d3f3188187a71d402a10ba34eac8629b4c6359b1095f30f710219298bf06b9f19bfc299981d7e251ca232a0a85338a7e02464731d1b25d4a1f68baf97064516590644820c998
+d = 002b8b866ce4503bb40ffc2c3c990465c72473f901d6ebe6a119ca49fcec8221b3b4fa7ec4e8e9a10dbd90c739065ad6a3a0dd98d1d6f6dcb0720f25a99357a40938
+Qx = 01b8c7a169d5455f16bfe5df1ba5d6ec9c76e4bad9968d4f5f96be5878a7b6f71d74bfac0076dd278bc4630629f3294646f17d6b6c712b0087e2c4d576039cfdc8b9
+Qy = 018faffd5422dfd1b61432fa77b9a288b2b7d546656c0dcca3032179e6f45ee3cf61d6a447fc51731cb54457343a41569fcf78cef42895f4da5efcb14ea1fc065f8d
+k = 00ac89e813f94042292aa1e77c73773c85cf881a9343b3f50711f13fa17b50f4e5cb04ac5f6fc3106a6ef4c9732016c4e08e301eefac19199459129a41a7589e0628
+R = 005bc7a253a028ee8b7253979b8d689d41d8df6fae7736341f22e28b6faf0cbbdebbd2ef4d73e56d2021af2c646dc15539a7c1e1c4dc9c7674808bd7968d8a66f947
+S = 00fd71575837a43a4cf1c47d0485cfd503c2cf36ebcea0fdef946ad29acb7fb2e7c6daf6b4eb741eb211081aed6207d02569f1518988f275ad94c7fd4735cb18a92e
+
+Msg = 65a0b97048067a0c9040acbb5d7f6e2e6ac462e1e0064a8ce5b5bbf8e57059e25a3ef8c80fc9037ae08f63e63f5bdb9378c322ad9b2daf839fad7a75b1027abb6f70f110247da7e971c7c52914e5a4f7761854432fa16b2a521e7bcaee2c735a87cad20c535bf6d04a87340c229bf9af8647eedca9e2dc0b5aa90f7fea3cdc0a
+d = 00a43b32ad7327ec92c0a67279f417c8ada6f40d6282fe79d6dc23b8702147a31162e646291e8df460d39d7cdbdd7b2e7c6c89509b7ed3071b68d4a518ba48e63662
+Qx = 0172fb25a3e22c2a88975d7a814f3e02d5bb74cfb0aaa082c5af580019b429fddd8c7f9e09b6938f62e8c31019b25571aaceef3c0d479079db9a9b533ee8e1670abd
+Qy = 00ff5516223b6cc7c711705f15b91db559014e96d3839249c5c849f2aced228a8998177a1e91177abbb24b57a8ea84d944e0c95da860ae0925f1b40c0e1b7c9e0a46
+k = 00383eda042e06c0297fbd279a2ad40559c5c12ad458f73458eebcc92b308d3c4fcec20a5b59f698e16fa6ea02dba8661b6955f67c052f67b0a56460869f24cfdf7d
+R = 01b9c35356b9d068f33aa22a61370dae44a6cb030497a34fb52af23c6b684677370268f06bb4433be6795a71de570088aec17ce0c9933d2f76c7edce7f406f62fedd
+S = 006f07ea453cfa20ad604ba855332f62834657b0b795684d50c1562a675456e37f4dae45f0df47d8e27e47bc9ce9c9cbba1554c5b94b0b17401b73c8d0c0902c6cc4
+
+Msg = d6e366a87808eea5d39fe77cac4b8c754e865a796062e2ec89f72165cd41fe04c48148068c570e0d29afe9011e7e7a2461f4d9897d8c1fa14b4ff88cab40059d17ab724f4039244e97fcecb07f9ffeec2fb9d6b1896700fe374104a8c44af01a10e93b268d25367bf2bef488b8abcc1ef0e14c3e6e1621b2d58753f21e28b86f
+d = 003c08fdccb089faee91dac3f56f556654a153cebb32f238488d925afd4c7027707118a372f2a2db132516e12ec25f1664953f123ac2ac8f12e0dcbbb61ff40fb721
+Qx = 0193301fc0791996ca29e2350723bd9aa0991ddbb4a78348ee72bdcd9ed63ce110ba3496f2ce0331b5c00d4d674c1b70114e17ce44a73c3e16bab14ed1ee924202e4
+Qy = 00aea9b288cfb2933ec0a40efa8e2108774e09b3863b3193d0dac6cc16ccaa5bd5f9ce133aec5cd3b62cbaeec04703e4b61b19572705db38cfaa1907c3d7c785b0cd
+k = 00d0e90d5ee7b5036655ad5c8f6a112c4b21c9449ca91c5c78421e364a2160bbac4428303657bc11ea69f59fb0fe85a41b8f155a362343094456fd2a39f2a79e4804
+R = 01a8c23a2965d365a4c2ffd0802ae8b3a69c6b84a1ba77fd8a5f2f61e8ec3a1dcb336f136e2a997252eaa94caf9b5ad6c9ecff5bf33abf547ca84985bb89908a11d7
+S = 01cc42a2dd97aa42b9df5ea430e0d4cb13106dd6da6e8c9315c96ed7b052db365bbde6960c9a965954a4398c18ea7db9593bbfc3c3b6b3466ff806fccac3de6424ab
+
+Msg = f99e1d272d0f5fb9c4f986e873d070ec638422bc04b47c715595e2cf1a701cdf88bc6c4b20085b357bad12ccba67cac8a5ca07f31ba432f9154ff1fadefd487a83a9c37e49fb70a2f170e58889cab0552e0a3806ccfa2a60d96e346851d84b7de6d1a4b8cf37567dc161a84f13421e3412457d4bc27f6213453c8519a2d7daa2
+d = 00969b515f356f8bb605ee131e80e8831e340902f3c6257270f7dedb2ba9d876a2ae55b4a17f5d9acd46c1b26366c7e4e4e90a0ee5cff69ed9b278e5b1156a435f7e
+Qx = 00fc7ae62b05ed6c34077cbcbb869629528a1656e2e6d403884e79a21f5f612e91fc83c3a8ac1478d58852f0e8ba120d5855983afd1a719949afa8a21aec407516c3
+Qy = 00aa705da6459a90eaa2c057f2e6614fb72fc730d6fdebe70e968c93dbc9858534768ea2666553cd01db132331441823950a17e8d2345a3cab039c22b21bfe7bd3b9
+k = 019029260f88e19360b70c11107a92f06faa64524cfbd9f70fecf02bd5a94f390582a7f4c92c5313bb91dc881596768d86f75a0d6f452094adbe11d6643d1a0b2135
+R = 007f2158e9b9fa995199608263969498923cf918fdc736427c72ce27ce4a3540dce2e8e5e63a8fc7ba46f7fa42480efbf79c6ed39521f6e6ec056079e453e80a89d9
+S = 008e349eed6f1e28b0dbf0a8aeb1d67e59a95b54a699f083db885f50d702f3c6a4069591afaa5b80b3c75efb1674ebd32c7ead0040d115945f9a52ee3a51806cad45
+
+Msg = 91f1ca8ce6681f4e1f117b918ae787a888798a9df3afc9d0e922f51cdd6e7f7e55da996f7e3615f1d41e4292479859a44fa18a5a006662610f1aaa2884f843c2e73d441753e0ead51dffc366250616c706f07128940dd6312ff3eda6f0e2b4e441b3d74c592b97d9cd910f979d7f39767b379e7f36a7519f2a4a251ef5e8aae1
+d = 0013be0bf0cb060dbba02e90e43c6ba6022f201de35160192d33574a67f3f79df969d3ae87850071aac346b5f386fc645ed1977bea2e8446e0c5890784e369124418
+Qx = 0167d8b8308259c730931db828a5f69697ec0773a79bdedbaaf15114a4937011c5ae36ab0503957373fee6b1c4650f91a3b0c92c2d604a3559dd2e856a9a84f551d9
+Qy = 019d2c1346aadaa3090b5981f5353243300a4ff0ab961c4ee530f4133fe85e6aab5bad42e747eee0298c2b8051c8be7049109ad3e1b572dda1cac4a03010f99f206e
+k = 01a363a344996aac9a3ac040066a65856edfb36f10bb687d4821a2e0299b329c6b60e3547dde03bdbd1afa98b0b75d79cf5aac0ef7a3116266cadf3dfbd46f8a4bfc
+R = 01ff097485faf32ce9e0c557ee064587c12c4834e7f0988cf181d07ba9ee15ae85a8208b61850080fc4bbedbd82536181d43973459f0d696ac5e6b8f2330b179d180
+S = 00306dc3c382af13c99d44db7a84ed813c8719c6ed3bbe751ead0d487b5a4aa018129862b7d282cce0bc2059a56d7722f4b226f9deb85da12d5b40648bf6ec568128

http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto-c/blob/8d28d2c3/testVectors/ecdsa/P-521/sha256Verify.rsp
----------------------------------------------------------------------
diff --git a/testVectors/ecdsa/P-521/sha256Verify.rsp b/testVectors/ecdsa/P-521/sha256Verify.rsp
new file mode 100644
index 0000000..dbbd037
--- /dev/null
+++ b/testVectors/ecdsa/P-521/sha256Verify.rsp
@@ -0,0 +1,106 @@
+[P-521,SHA-256]
+
+Msg = 93e6fa311b9cf278babcd49a6739d312e5f12e05bc9dfee9bb37ccfb2f9ce57d2a3c0336674e094834a9fb80143c3c8ca82b34949596ad17ae6fc7592d1d93f143e7e7c842e17a7d230ace2d2be15c757c37ba0b1f34810c6e51786af718136db22c1f8336540cae5e2fc762ca43cd94c4babb1b11f8fd93a2ac9525324bab88
+Qx = 015bd9bf7a35cc60147b32b64e0e4e54bf9ac2173cc6784b3d4ebd076aa5d45c1e3d0846b20b61d6342341a8801a2f63028c991831318245c2fe31f8acde6bf2003e
+Qy = 01afb67c9c700ed332b47a2d148e6ddd3571e138f02a81c3cfe6d4dee0f512d92e76574fe5797c5566c05b3239fabb212c735615e719e718fb40fa6783c964357f72
+R = 01a341d0e8906239faace79554b90d1445bd28f703d7c7cc8eb163337ad3d4bfb3725cb06e618991491534d399866df5c5bdef897c889947b21148d89c657e64124d
+S = 005c5b728837d44b7b6935efb2b721b4f45c1675d803d87f70158e451434176d9682034c9b356b5f9181e07599bdcb55e5bc808fdd36fef9c19ddb6342c975262024
+Result = F (1 - Message changed)
+
+Msg = 8a3206879e6e463c6d19c4037c12c66ae26e23e09fa96e3b26d32bb41810cb9b02d55333733fad583ca5d24614c23071ee19e4dff9e4d958fc1de573e198eb6964cfc464ce97e69642c19c0ec75aeb01f93361b9df37cd2b1bc2602d967f3f508d1a9f3155a07675e8b1b53e79b608dffd6c4e0f0711fd0b8c6012eacd8e26de
+Qx = 009f21a6e7295b183656709089b3c647140c81f71b0b3812e6de22c52245335599ade6a3116cb70277dc2485f91c7b1f46d62afb60fc17a110358c9a02e02e010960
+Qy = 01e914284cea47dd6836e7ce899d0c9a88d67fc9d039ffa9fa5bee58d247e0d0dc9251be8b82afd3add327f98c5570bdcd8ad8827820032774d19db09232aeba190a
+R = 00ce4b2ac68afd071531027b90d4b92d9b0e1044b824ccebb2c9ab241d5b909ead1ffa2dc3d330f57187efbea7374bc77c4f7ce7ee689aa5a1e27aa78abc3cc1e751
+S = 00aa85d84f9c7fecd25064dbae69c16d6fcff38040027bf476c7f913746272b5d4b9bd34d2482e27730522df724895b99253aed86011139928fa9a272892f8c99d8f
+Result = F (2 - R changed)
+
+Msg = a2555db3870730ffbafd007a8b565e3c79103751b9c634a40e9ce79098fe74bb43b4cd990c50a80a50f8426893f03998e617a74c8997bd7acee599c24770da781502011747fa55b9215c245f5d36edac311640029663b44b01a50c9b8c5e53f09c11fd73609ce665c066dbee92a749847805c26039089b94f80521e1ac94317c
+Qx = 01098be00de7b2ee7390f26eff82ba5b6de8f04d7f11909193923866d2feefad9b01c5d78b699ce0a6900dc2a3073a03505ae946aa6f384ab0573ec9d17fa775dacd
+Qy = 0106e122e7148b547a0314da646b6f834e66c2ff7f64f39da9dc7983e80e84063e23c8ce12994e8495b7786c2b3180d7f22bd2d2becf1e1ba2029cbbe8d4801b65b1
+R = 01092e5ccfc4f966c3281a3924cd527606ce8e64cfd78f57373cfd702f528368beb71eb1a2cd64005bb172cb35b4ea61af88cb06bc8f1a38e2d75b235d23947dc209
+S = 01aff29a28d935d0e10bf8015f38ec128e0ec047f04020d1474366807b140e4d4a6d069aefc8dce723fcb4fc803df30b3880cc6d0dfc75c291d848d89e06ab7e24d1
+Result = F (2 - R changed)
+
+Msg = 58a98d6740bcae94d49817a49edcec1bfe9799f22fe7bc7c46933ec74db0679a34dd8057b71c439d00da2dab80711b943a9f4560d4b5e7f58b79a77f84eb7ac3b9e88c8f13b7ea5568b8612c22e4e5ff6f83c36649917e7165be0f3c759b06ba44cfd6b6d54ad996ac2cc9054e8d3d077386f4835cd024116462257907c1b496
+Qx = 001ec67de63455605b31a460d4faa664697cc505885577c0844472842dee78fa6d522e4b942d3c7e2de684e6399f6a44a328ccaab5e678cd99d49f015e35a934cdd9
+Qy = 019b41da41e7506cbcb7c31d39751669cda166fd045c86e1fac68d39d2ebb0f1ed50b8a923511e1306952888e068092b19130181c2de5f25c5e1fc4fd9ea202258d6
+R = 01e1882a3d98c236189a35ffddc9fecdb7cb5fc5e3d0784eabb69d9c37862dbb38eed6c5567a0abc4f74099329681b9a0921515f1df83ba8948b51d3871866a8f7ce
+S = 0025ff707889678f7cd05665c941a2bbe13622a1e75ab986cc86778658c62e527f55804ab27d0643f6bb8adaab0614eac47f33f0e1fba109c63b28fa6732a5afbe49
+Result = F (2 - R changed)
+
+Msg = 77bd3d86c52fe8c327649ce44ccb313cf34d6eee9f6074fd60a9ee3dbf3a84dc680c91703632d6f4ff39b8ea3d13090054d186b4a928b1052caee17dc9bee7a5905ca9bcbcd065be4160c4dd25639f2b23d1ce4837598917d7c86425679de1b33e922e331c1f3f748d3cbd8fc6aec68b73978f5d25d730c8a7fde247edd32822
+Qx = 00defff5ef7cc5de0e1ac32261e7a74e8c434c0b51f76df7566b612cc5b8201e7b38c51aa6118b6307f436394bf452a72224c977e37e410eae9525df2ee00a8123bf
+Qy = 00263b7db73558ddc783824f0b19776802aaf5e46ccb1b1d1dda07d2d6c5843f5036ae8d381b235ccd2ed04eb90c5d51e32cbd7acdc7031cae63c06797556fb66fe3
+R = 0089bd129a537840a52ef434d5a8ba4add952f72f22a84ac4523ea0bc02cbfa8b681ab0ed3fa2bca24ae575f23fce7efbb9bfd28e465174158a5ad2b08fd9e0b7132
+S = 0004ed533337791e05f8d097eabdf4be96b3fcc9f876d47fb8c5c7a05cbddba398cded2edf5ec9b7dbb4e32c1374b46953d66a193c211ef12de4b9d73adc369d5e95
+Result = F (4 - Q changed)
+
+Msg = 12e796e7b92085ce16fcb9f420ee18bb0b5b985cfc47618d7b28a9e2ceae5d526c9dab015c33ccadb05185f8b205875b20323edc7d0a53a6a35f7061ce823244c6c73de20a38650fe6ffad79bfae8a54dbb611eb55a76fa7400ffddc6421e58efad93f43db1b7aedbd63ba94ea12c39c686dc335c7205f05f6b3e1d12fb508ef
+Qx = 0180f1e933054473e81ac82aa458094b7cb95d4b8d399600420cfb082e37980414909a133d5e42ebb7d2defddb34a9fb51fe4ab72e88526fc28608e152aaaba3ee5b
+Qy = 01c5cee9fd322d1c3af1726366e8a1e3f22099d9246d4bb02708eed89ecef1fc73926dc97a5c263afa235edb39a9e63d9690608846abc482397a2d8673c5d472c970
+R = 017f1fd4df519ef432f68b5f426ff23a8f36b5729fdf7c8363d73f4e707d9800c7b50174fc3d66d89813a5265f8734602e5c998c2d7b51bdef6e90ee5a527e1357e0
+S = 010560ed68f152d649493c02c1e32bf4138aacb5f2d7f449e7685336edde24e5ce1cfaa2c54530f1419593614971896f1a877dda7bc5d56ccdbab18e770647287979
+Result = F (1 - Message changed)
+
+Msg = 3c06bb2421c7ebf060b9da78403a3ef87406cbcc73eb350a2e0a33d20f6a59572d282091654f98b5ed4b41411edfd216704c44a3e295bd7174cd51818b021cb37bfc3f644023ba69fdc081dac3e5f6bdd7c7bc1f71549882566fc4cb30114a1f02f9c0e7610feb0fecde666eb94f5e43245473ea56bd6256610b08162dc2eb36
+Qx = 006d8c16536b17cab6ff41f5df4038fe416c05ccb601710909708dc561b02ceed9cf020441d9daa075e8fd604531ff58084035b1c19a498b82582f5b20f9cedf61f9
+Qy = 00e89d71c66e55c4f5bf245413388bfe9de83944b11d1abdb4692db7da8a086442965ee512f7089f89464dda5d7786e52cc26a8a30bc8824cc56a289fefcd42bdfd2
+R = 0087f86cf4bd36e8253097ac1bc8500dedafdbccbe5767ec25e53c73c4f053f3b37acd1d5ea4c16e4058919b61d2a67393220ffefe07535d53923ace6815463c4c31
+S = 01def2582fd0df89fa28c9ce882f5c3846135f51bdf7f4b2497b190136ef04618eaa22a8c5a117b0adfc6425eac3111b6558df145a8b14ad39524b98659e01d51c21
+Result = F (3 - S changed)
+
+Msg = 08f3847e8b10f18a2f33abbec099f764215aeec9ce64c33fc1c6ae6e7dcee8eae995885dd91a354ccd2ac9bf8f9924a375b6387696fe415a08f7ee429318f045b9394f4d6e75ad099ebde5ca94e69414155f4dc271cdfe4bdc318122ae469f9a4b5f44550fef6d4e09925eeb579d61299578d6d84d99c4260ccae583e042b0b5
+Qx = 01c7fb4747a409a3723177c38c9943b81b2d0aee867b8f424e227f3a664f1877c560d37953e7cc09390e05599292bde1ea345073ec365834d99ac59332f6e5bd29d7
+Qy = 01b7485b454d5ed5d581c7897a7e68f425d8c23cd89b934747d90765a5fda1cfc3d997af61728f328cc8bdfca8a3ae1b3b90be13cf164c343d199b8e16b0400f3e33
+R = 01552ac2dfbe67c6abad8d3325713c1e28537eae620d805a73dbaa4e5e04acff6ae0498346d6e41df1cbdb20b70d8e548564da8fa239fe6c6f28b6c2a6ef57973097
+S = 00cc9e60b694d792f36cbe9adff8dc79f0f75b3ec11ff2d54419227c7566e0bd441655eb30b558c78a55ac613c1bf3c3058ea7a4bb70adbf5b49fcae15e54defd6db
+Result = F (3 - S changed)
+
+Msg = a1c88c643303f293bd918e30ac00964e52f78585be9ed920c579c48fa0276f749c04ad73e3a86697e393e7172d2459cdc30e0f1e2830e5e6952fb23c6a6e3eb61cfcb15a59cd6e11c3c2e080e78da3e0dc206ee9e1e5aed87d7b61d14702c59a116473f386faa21dcc97328f966771fc3e5ff72af66535f41e3daa4ebadd5624
+Qx = 016c0e1d1fc81e5069e9c02794fdfe1f5a8ac5008305d9ac2234eb0117e565203acc6777c570f41661c5db1adb26097d7f5f2a1762c4f8039f1b68caad75915baab8
+Qy = 000b3690995d6d881dc1564f792ab174cdc1a0fc6f12d69a21088d5e82de4a7d56947a2dad0ce64d9ad0675e72b6da755e3ef82c9cc6d532378c23112210236889d6
+R = 01316e9a934cad1aa0f7dbade1c9ad942d61bbe1bf41b7b95e3b25b761b9899f6125790369277aa09fa57340a2b8c3c609a08ae7be5a3c09dd4d081e6cb54d9f3061
+S = 00d6b285f91c3c8d6192af624336caf793ad5300d96262f5e25228dfb60896c4e28e61be22e92ca7d6e11a02f36655441032bf291f895aaa117f6bfdfb422286f255
+Result = F (4 - Q changed)
+
+Msg = bd980fd69fb9e1344540e5bb12fd0aab8199a16ffec416edfede8084b7cabff5891f8f04fa72a3260403adf5ee286efe9dc128b06466b21915c394b21ded8d468ec1f2ff82d6e4306c61b3315c8b131131c1ee8d093f5aa47b56dbf388cb935900c4d3413dde92cdb7d6b8c35440ed962d5ef036b241f2bc51842fa64496aaff
+Qx = 006194b1780a2416dde8c9402e3ddbf310c51ed87fc40530ad5c97931b99336c00098337fcca7b01c634e56a7874309177364e6d4c24c2ab33d6a1a09a84689ad0b5
+Qy = 00c5bfcdf640c0a7573ecf4a9dc1aa75db298ddf1a679609e0669182a594b9b9a8186ee961b902d84fe998e3b380c304a0be98974514966965bfef9971f05a57c162
+R = 018051118c2d8b841c6d78e2e5068c7305039cbae1f8b5a479b9bba559ebc45d8c8ac18d1f6033713871e656fa4eba9c1c0892e7263bb22c46ec3c72aae92afe2c79
+S = 00de0db6a6ba5e6a953a126be3b87d6c895f4bc2db27be223109dc67cf115bbc8c566e1c9a1bdf1a87e632f8a0e4b31331a086caeb60793e87f03b404140aba206ae
+Result = F (4 - Q changed)
+
+Msg = 961c9451bbb298e17f503680099244d969a0ff3d0ce6cf15b5bcc73d6edc3e8c8535a18531d885664612cad97da174f1daee6aad95220f6e2fd8c734c57747e46db21e169a03dd673df07aff30848e8370c0960d732e74f9b1d8b53847b69d2cad80f346b50e89d7993cb758fc218668c771422f804d3c9162da98cb30821912
+Qx = 00397714abcc503eaa0c18abd1fd26586d28ec1b1035d37ac710f2823911ec9afa429b41ea89cec13d5bcae9d6d7147794407e409f3b267cf4dd27e8c77e7ccf4d36
+Qy = 00a3a4b749d19b84708e42b59e9faa5a99ac0f0a01121655fab87785fca38c8cd4277c8c2c9a0024ff608c3cce954596315dfe0e3b133aeab08bb5389eb2a4f1fb42
+R = 019da96a866db12948e0aec7231f797061f345739d439bdaaba63e4d03e0bb52c3fea2fb593347d983f24a3afa6a77f476e6bb49a5de843b4c4755cddce97b8b909e
+S = 001bb442f428b2ca445a75ad88ed49d965d6659d748d02cebf78faa1ecc187b606f284d11d47791d585dc371c2d91848a55ca7b092f06d561efcf64e0de0814e1db4
+Result = P (0 )
+
+Msg = b9afbe0d18f798d2992740c35217eec0552f0812c607ef823f74dc2eb2ce58a9abe1c683ed193245a81b9f1eeb68d57c721f052f926b1ce3d79751bccf007375715e70b52c9bce92a6ccad24c205d43a4355d084dce3db2f50ab7d4dc3c6c400db8db47a48dabf295801e960232383480f029c7111bf8d5d7a0c9d64c9465644
+Qx = 01af06b10d357fc3c807854b4be235f81d5036da4df1af6a054a03ff800c1aa2d59c2ad5c0e25ed25c002057cae4b4adb92b95c36cf422a46c8833fd8968e0f32441
+Qy = 018432172be0e535a3f3a5f6d6927dfbf6a00051cc1983ba25410ee3598a60dd1f7c38526de7ee23f8e9ee973ffddff49eb3edb28adc7d094cd95b63d52ba45ecb58
+R = 01396b4f044919d0ba5ad43004cd37b8bb0626ea5549d57c532339358ee1794988a7c9eab91a9340dc2aa0f18e89b236a6c20d03a6e98f35c011430fc4213cd65dbd
+S = 0101e5a788a867d9b5a4444554c9651173f9f8e15c0f39f9adb66c18ef8075243f23b95d5229ccf5f56b87f5c50920b01b22ab7476ecf4c865a3d6d8f2242d422d8d
+Result = F (3 - S changed)
+
+Msg = a6c421bfcf95f7dc2f3721c56eddd2bf58bd8a2717396441d95e265c8a3c85b031b80e5f90786126f578affecfb4fc2dcfb3adb96a33cd0953b109970d218a6e59a688b6bc7d51e64eebab69929fac48f45fdccd2a27c1e1a48f19bbd36e5f8f8f0d8ab3f4e2cca2301893f8c373794582eda7b700f57d092d1662b929a2d43a
+Qx = 0176f1276918fed24a098d6d03077f3c33ae543316df1b6b06ce877e74b69b2cd4131fdf797e77e5f6391b0b32411120d03c0c59ba1721a7187d18708121d6f3a86f
+Qy = 010f9d38b30a2da1a745840de7c9994578e32bb10f9334b46f533b6eab550aa55048e4ac601889564ac8314e01b61613fc7b8e2bd3f1a188c5c5e869af16a8d61d9b
+R = 019cb5639a321e95214c90a612d29c9ffd5ae5aaa2a814ee2d66ac1ce1d2ab3229009129ec9d472061444cbfbf50c7e4cba09aab65299a42740bce7af3fddf2a1f46
+S = 00082ce6bf1d809d3bb4f9f09a95590bb64b0c41bcee5fcdd332947a9b59618da5da897fff44968d92635e7833dec1e91d8d99bd8b527609393b446c83d109a32243
+Result = P (0 )
+
+Msg = 1e8824c203e8915e62f5304b021a3a1cd027f5dfed3366e123ba28273b1a63956006aceb45a03b5995f14ef08e430131fe93123a4f91683cb0074280b525f7342963e98280d63ae179cdc908a191fed000239f1e56b012b7fecffc1d1a5883a29a78149d507205308170460da5a7d5ade323bef2c9ec4b9a336cfb8b1b7ae473
+Qx = 0089565cf5838658fd36b70cf5246cbe999a394562c46e9d8057928e0aa9e04ade6002cfb83f315e06790e58ea833b3bd64fba8e93c5fdba8319c5d38be7cf25a21a
+Qy = 008faeff531e683d28d817045a03b2dd22e50e6168f1e5fda5b5abc71859effc5e5c45b88705b62ca090e3362a8313dc472ec2ed970bbb5029200318e7582643d613
+R = 006b5237ad17da6037aef116532b3aaa70172d0ca0eebdc478c35e6f8bd0f9a6472d052c5a18a23dcced7be6e5e7b6d0bcb5b3cea707000e7d114b6f41084d6f5620
+S = 005e2556425b35e6495b137f7dab522c7e7b812004c87a002f6ce4f4b6cc5f967b8f5b7d3786a17d5f717d3ac467b73e176e90cdd8c5151a6e62fc4604cbeab7e717
+Result = F (1 - Message changed)
+
+Msg = aedf4e8089c90d95f870457561df7fe825138073e867fe13c39a0d0bcd77dfa2abcd635ca40bbb71eeae2b674075bfc5d5fc7d489dfd8f34ed30050631238af2122f7d45cc0634ae8a2efca5cbcc4f967ae55c290f77d53f2c03163f532f31097bc34f531823d23de7e5a9e09a1d17cbd9383a4381f3f6986368a6014fba8b96
+Qx = 00aa42473f80d9d81f6d41ed05c8ba35c005f90e2690f71dfdb12555b7590c7a8e95b618368c39f4e84d6cba25f522c9bdd256c60d3f8c8425ad313701225a9cc9c4
+Qy = 01992b7966b925f42c91f810eb05d602b804301849ea278466a68e5b616e3a0bce110fc9250db14f9c8f5929347e1bb8727bcf8072c6aebc26958954fe96df04e139
+R = 00cbb35513420f206bd26b568712503b66e159a54e154c8d4e9c661aa954e0bf425871275fff5e8f368c8ccc77ffe6adf84ba88a84483d8ba5cc862bd408f6a192c1
+S = 002ffb4e461e3161c801ad217a0483045181013deed29eec29cca94776139ddf5fe9d7771e5ac7b637a4bf7e5276940489bd8ae36f41ef6be93cff4b96bd0e1f3e59
+Result = P (0 )

http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto-c/blob/8d28d2c3/testVectors/ecdsa/P-521/sha512Sign.rsp
----------------------------------------------------------------------
diff --git a/testVectors/ecdsa/P-521/sha512Sign.rsp b/testVectors/ecdsa/P-521/sha512Sign.rsp
new file mode 100644
index 0000000..e08d3d6
--- /dev/null
+++ b/testVectors/ecdsa/P-521/sha512Sign.rsp
@@ -0,0 +1,121 @@
+[P-521,SHA-512]
+
+Msg = 9ecd500c60e701404922e58ab20cc002651fdee7cbc9336adda33e4c1088fab1964ecb7904dc6856865d6c8e15041ccf2d5ac302e99d346ff2f686531d25521678d4fd3f76bbf2c893d246cb4d7693792fe18172108146853103a51f824acc621cb7311d2463c3361ea707254f2b052bc22cb8012873dcbb95bf1a5cc53ab89f
+d = 00f749d32704bc533ca82cef0acf103d8f4fba67f08d2678e515ed7db886267ffaf02fab0080dca2359b72f574ccc29a0f218c8655c0cccf9fee6c5e567aa14cb926
+Qx = 0061387fd6b95914e885f912edfbb5fb274655027f216c4091ca83e19336740fd81aedfe047f51b42bdf68161121013e0d55b117a14e4303f926c8debb77a7fdaad1
+Qy = 00e7d0c75c38626e895ca21526b9f9fdf84dcecb93f2b233390550d2b1463b7ee3f58df7346435ff0434199583c97c665a97f12f706f2357da4b40288def888e59e6
+k = 003af5ab6caa29a6de86a5bab9aa83c3b16a17ffcd52b5c60c769be3053cdddeac60812d12fecf46cfe1f3db9ac9dcf881fcec3f0aa733d4ecbb83c7593e864c6df1
+R = 004de826ea704ad10bc0f7538af8a3843f284f55c8b946af9235af5af74f2b76e099e4bc72fd79d28a380f8d4b4c919ac290d248c37983ba05aea42e2dd79fdd33e8
+S = 0087488c859a96fea266ea13bf6d114c429b163be97a57559086edb64aed4a18594b46fb9efc7fd25d8b2de8f09ca0587f54bd287299f47b2ff124aac566e8ee3b43
+
+Msg = b3c63e5f5a21c4bfe3dbc644354d9a949186d6a9e1dd873828782aa6a0f1df2f64114a430b1c13fe8a2e09099e1ed05ef70de698161039ded73bcb50b312673bb073f8a792ac140a78a8b7f3586dffb1fc8be4f54516d57418ccc9945025ce3acf1eb84f69ceee5e9bd10c18c251dbc481562cd3aae54b54ab618cb1eeda33cf
+d = 01a4d2623a7d59c55f408331ba8d1523b94d6bf8ac83375ceb57a2b395a5bcf977cfc16234d4a97d6f6ee25a99aa5bff15ff535891bcb7ae849a583e01ac49e0e9b6
+Qx = 004d5c8afee038984d2ea96681ec0dccb6b52dfa4ee2e2a77a23c8cf43ef19905a34d6f5d8c5cf0981ed804d89d175b17d1a63522ceb1e785c0f5a1d2f3d15e51352
+Qy = 0014368b8e746807b2b68f3615cd78d761a464ddd7918fc8df51d225962fdf1e3dc243e265100ff0ec133359e332e44dd49afd8e5f38fe86133573432d33c02fa0a3
+k = 00bc2c0f37155859303de6fa539a39714e195c37c6ea826e224c8218584ae09cd0d1cc14d94d93f2d83c96e4ef68517fdb3f383da5404e5a426bfc5d424e253c181b
+R = 01a3c4a6386c4fb614fba2cb9e74201e1aaa0001aa931a2a939c92e04b8344535a20f53c6e3c69c75c2e5d2fe3549ed27e6713cb0f4a9a94f6189eb33bff7d453fce
+S = 016a997f81aa0bea2e1469c8c1dab7df02a8b2086ba482c43af04f2174831f2b1761658795adfbdd44190a9b06fe10e578987369f3a2eced147cff89d8c2818f7471
+
+Msg = 6e0f96d56505ffd2d005d5677dbf926345f0ff0a5da456bbcbcfdc2d33c8d878b0bc8511401c73168d161c23a88b04d7a9629a7a6fbcff241071b0d212248fcc2c94fa5c086909adb8f4b9772b4293b4acf5215ea2fc72f8cec57b5a13792d7859b6d40348fc3ba3f5e7062a19075a9edb713ddcd391aefc90f46bbd81e2557b
+d = 014787f95fb1057a2f3867b8407e54abb91740c097dac5024be92d5d65666bb16e4879f3d3904d6eab269cf5e7b632ab3c5f342108d1d4230c30165fba3a1bf1c66f
+Qx = 00c2d540a7557f4530de35bbd94da8a6defbff783f54a65292f8f76341c996cea38795805a1b97174a9147a8644282e0d7040a6f83423ef2a0453248156393a1782e
+Qy = 0119f746c5df8cec24e4849ac1870d0d8594c799d2ceb6c3bdf891dfbd2242e7ea24d6aec3166214734acc4cbf4da8f71e2429c5c187b2b3a048527c861f58a9b97f
+k = 0186cd803e6e0c9925022e41cb68671adba3ead5548c2b1cd09348ab19612b7af3820fd14da5fe1d7b550ed1a3c8d2f30592cd7745a3c09ee7b5dcfa9ed31bdd0f1f
+R = 010ed3ab6d07a15dc3376494501c27ce5f78c8a2b30cc809d3f9c3bf1aef437e590ef66abae4e49065ead1af5f752ec145acfa98329f17bca9991a199579c41f9229
+S = 008c3457fe1f93d635bb52df9218bf3b49a7a345b8a8a988ac0a254340546752cddf02e6ce47eee58ea398fdc9130e55a4c09f5ae548c715f5bcd539f07a34034d78
+
+Msg = 3f12ab17af3c3680aad22196337cedb0a9dba22387a7c555b46e84176a6f8418004552386ada4deec59fdabb0d25e1c6668a96f100b352f8dabd24b2262bd2a3d0f825602d54150bdc4bcbd5b8e0ca52bc8d2c70ff2af9b03e20730d6bd9ec1d091a3e5c877259bcff4fd2c17a12bfc4b08117ec39fe4762be128d0883a37e9d
+d = 015807c101099c8d1d3f24b212af2c0ce525432d7779262eed0709275de9a1d8a8eeeadf2f909cf08b4720815bc1205a23ad1f825618cb78bde747acad8049ca9742
+Qx = 0160d7ea2e128ab3fabd1a3ad5455cb45e2f977c2354a1345d4ae0c7ce4e492fb9ff958eddc2aa61735e5c1971fa6c99beda0f424a20c3ce969380aaa52ef5f5daa8
+Qy = 014e4c83f90d196945fb4fe1e41913488aa53e24c1d2142d35a1eed69fed784c0ef44d71bc21afe0a0065b3b87069217a5abab4355cf8f4ceae5657cd4b9c8008f1f
+k = 0096731f8c52e72ffcc095dd2ee4eec3da13c628f570dba169b4a7460ab471149abdede0b63e4f96faf57eab809c7d2f203fd5ab406c7bd79869b7fae9c62f97c794
+R = 01e2bf98d1186d7bd3509f517c220de51c9200981e9b344b9fb0d36f34d969026c80311e7e73bb13789a99e0d59e82ebe0e9595d9747204c5f5550c30d934aa30c05
+S = 012fed45cc874dc3ed3a11dd70f7d5c61451fbea497dd63e226e10364e0718d3722c27c7b4e5027051d54b8f2a57fc58bc070a55b1a5877b0f388d768837ef2e9cec
+
+Msg = a1eed24b3b7c33296c2491d6ee092ec6124f85cf566bb5bc35bffb5c734e34547242e57593e962fb76aee9e800eed2d702cc301499060b76406b347f3d1c86456978950737703c8159001e6778f69c734a56e5ce5938bd0e0de0877d55adeee48b0d8dfa4ac65fd2d3ce3e12878bac5c7014f9284d161b2a3e7d5c88569a45f6
+d = 018692def0b516edcdd362f42669999cf27a65482f9358fcab312c6869e22ac469b82ca9036fe123935b8b9ed064acb347227a6e377fb156ec833dab9f170c2ac697
+Qx = 01ceee0be3293d8c0fc3e38a78df55e85e6b4bbce0b9995251f0ac55234140f82ae0a434b2bb41dc0aa5ecf950d4628f82c7f4f67651b804d55d844a02c1da6606f7
+Qy = 01f775eb6b3c5e43fc754052d1f7fc5b99137afc15d231a0199a702fc065c917e628a54e038cbfebe05c90988b65183b368a2061e5b5c1b025bbf2b748fae00ba297
+k = 0161cf5d37953e09e12dc0091dc35d5fb3754c5c874e474d2b4a4f1a90b870dff6d99fb156498516e25b9a6a0763170702bb8507fdba4a6131c7258f6ffc3add81fd
+R = 014dfa43046302b81fd9a34a454dea25ccb594ace8df4f9d98556ca5076bcd44b2a9775dfaca50282b2c8988868e5a31d9eb08e794016996942088d43ad3379eb9a1
+S = 0120be63bd97691f6258b5e78817f2dd6bf5a7bf79d01b8b1c3382860c4b00f89894c72f93a69f3119cb74c90b03e9ede27bd298b357b9616a7282d176f3899aaa24
+
+Msg = 9aace26837695e6596007a54e4bccdd5ffb16dc6844140e2eeeb584b15acb2bbffd203c74440b6ee8db676fd200b4186a8c3e957c19e74d4d865ada83f80655323dfa3570907ed3ce853b6e8cc375ed2d758a2f5ad265dd3b47650517a49b3d02df9e0c60c21576378c2b3a08481eec129b2a75608e13e6420127a3a63c8a3f1
+d = 00a63f9cdefbccdd0d5c9630b309027fa139c31e39ca26686d76c22d4093a2a5e5ec4e2308ce43eb8e563187b5bd811cc6b626eace4063047ac0420c3fdcff5bdc04
+Qx = 014cab9759d4487987b8a00afd16d7199585b730fb0bfe63796272dde9135e7cb9e27cec51207c876d9214214b8c76f82e7363f5086902a577e1c50b4fbf35ce9966
+Qy = 01a83f0caa01ca2166e1206292342f47f358009e8b891d3cb817aec290e0cf2f47e7fc637e39dca03949391839684f76b94d34e5abc7bb750cb44486cce525eb0093
+k = 001e51fd877dbbcd2ab138fd215d508879298d10c7fcbdcc918802407088eb6ca0f18976a13f2c0a57867b0298512fc85515b209c4435e9ef30ab01ba649838bc7a0
+R = 011a1323f6132d85482d9b0f73be838d8f9e78647934f2570fededca7c234cc46aa1b97da5ac1b27b714f7a171dc4209cbb0d90e4f793c4c192dc039c31310d6d99b
+S = 00386a5a0fc55d36ca7231a9537fee6b9e51c2255363d9c9e7cb7185669b302660e23133eb21eb56d305d36e69a79f5b6fa25b46ec61b7f699e1e9e927fb0bceca06
+
+Msg = ac2175940545d4fbab6e2e651c6830aba562e0c11c919e797c43eff9f187a68a9e5a128e3e2a330b955a3f4577d3f826529ad1b03d7b60f7ad678f005053b41dc0f8d267f3685c6abe1a0e9a733c44b2f3ca48b90806f935141c842e3a6c06a58f5343d75e3585971a734f4ae1074ce5b54f74bd9342f4bbca738d260393f43e
+d = 0024f7d67dfc0d43a26cc7c19cb511d30a097a1e27e5efe29e9e76e43849af170fd9ad57d5b22b1c8840b59ebf562371871e12d2c1baefc1abaedc872ed5d2666ad6
+Qx = 009da1536154b46e3169265ccba2b4da9b4b06a7462a067c6909f6c0dd8e19a7bc2ac1a47763ec4be06c1bec57d28c55ee936cb19588cc1398fe4ea3bd07e6676b7f
+Qy = 014150cdf25da0925926422e1fd4dcfcffb05bdf8682c54d67a9bd438d21de5af43a15d979b320a847683b6d12ac1383a7183095e9da491c3b4a7c28874625e70f87
+k = 01c1308f31716d85294b3b5f1dc87d616093b7654907f55289499b419f38ceeb906d2c9fe4cc3d80c5a38c53f9739311b0b198111fede72ebde3b0d2bc4c2ef090d2
+R = 000dbf787ce07c453c6c6a67b0bf6850c8d6ca693a3e9818d7453487844c9048a7a2e48ff982b64eb9712461b26b5127c4dc57f9a6ad1e15d8cd56d4fd6da7186429
+S = 00c6f1c7774caf198fc189beb7e21ca92ceccc3f9875f0e2d07dc1d15bcc8f210b6dd376bf65bb6a454bf563d7f563c1041d62d6078828a57538b25ba54723170665
+
+Msg = 6266f09710e2434cb3da3b15396556765db2ddcd221dce257eab7399c7c490135925112932716af1434053b8b9fe340563e57a0b9776f9ac92cbb5fba18b05c0a2fafbed7240b3f93cd1780c980ff5fe92610e36c0177cabe82367c84cee9020cf26c1d74ae3eb9b9b512cb8b3cb3d81b17cf20dc76591b2b394ef1c62ac12ee
+d = 00349471460c205d836aa37dcd6c7322809e4e8ef81501e5da87284b267d843897746b33016f50a7b702964910361ed51d0afd9d8559a47f0b7c25b2bc952ce8ed9e
+Qx = 000bbd4e8a016b0c254e754f68f0f4ed081320d529ecdc7899cfb5a67dd04bc85b3aa6891a3ed2c9861ae76c3847d81780c23ad84153ea2042d7fd5d517a26ff3ce4
+Qy = 00645953afc3c1b3b74fdf503e7d3f982d7ee17611d60f8eb42a4bddbec2b67db1f09b54440c30b44e8071d404658285cb571462001218fc8c5e5b98b9fae28272e6
+k = 000eb2bd8bb56b9d2e97c51247baf734cc655c39e0bfda35375f0ac2fe82fad699bf1989577e24afb33c3868f91111e24fefe7dec802f3323ac013bec6c048fe5568
+R = 014bf63bdbc014aa352544bd1e83ede484807ed760619fa6bc38c4f8640840195e1f2f149b29903ca4b6934404fb1f7de5e39b1ea04dba42819c75dbef6a93ebe269
+S = 005d1bcf2295240ce4415042306abd494b4bda7cf36f2ee2931518d2454faa01c606be120b057062f2f3a174cb09c14f57ab6ef41cb3802140da22074d0e46f908d4
+
+Msg = 3de9e617a6868dca1a1432d503f923535da3f9b34426b2a4822174399c73b1c1ee67311410a58c17202ac767844b2024d8aa21a205707d93865693ac25a24fc87034fa3a7a7e27c3344cb03b87602c15180a5fe6a9dd90cd11af4a0f150207bf2d83f55b12c088adae99aa8cfa659311b3a25beb99056643760d6a282126b9b2
+d = 007788d34758b20efc330c67483be3999d1d1a16fd0da81ed28895ebb35ee21093d37ea1ac808946c275c44454a216195eb3eb3aea1b53a329eca4eb82dd48c784f5
+Qx = 00157d80bd426f6c3cee903c24b73faa02e758607c3e102d6e643b7269c299684fdaba1acddb83ee686a60acca53cddb2fe976149205c8b8ab6ad1458bc00993cc43
+Qy = 016e33cbed05721b284dacc8c8fbe2d118c347fc2e2670e691d5d53daf6ef2dfec464a5fbf46f8efce81ac226915e11d43c11c8229fca2327815e1f8da5fe95021fc
+k = 00a73477264a9cc69d359464abb1ac098a18c0fb3ea35e4f2e6e1b060dab05bef1255d9f9c9b9fbb89712e5afe13745ae6fd5917a9aedb0f2860d03a0d8f113ea10c
+R = 007e315d8d958b8ce27eaf4f3782294341d2a46fb1457a60eb9fe93a9ae86f3764716c4f5f124bd6b114781ed59c3f24e18aa35c903211b2f2039d85862932987d68
+S = 01bcc1d211ebc120a97d465b603a1bb1e470109e0a55d2f1b5c597803931bd6d7718f010d7d289b31533e9fcef3d141974e5955bc7f0ee342b9cad05e29a3dded30e
+
+Msg = aa48851af7ef17abe233163b7185130f4646203c205e22bcc2a5a3697bcab998c73a9ffe1d3ea0b7978ce7df937a72586eb5ca60b0d939a7d1c115c820171c89c8116b7e2c7b98cf0f14e4c4df3cb2f319ad3ab0ea25ff14526ddc037469f000bf82100acd4cdf94feb4eba4ea1726f0569336604a473aee67d71afebb569209
+d = 01f98696772221e6cccd5569ed8aed3c435ee86a04689c7a64d20c30f6fe1c59cc10c6d2910261d30c3b96117a669e19cfe5b696b68feeacf61f6a3dea55e6e5837a
+Qx = 007002872c200e16d57e8e53f7bce6e9a7832c387f6f9c29c6b75526262c57bc2b56d63e9558c5761c1d62708357f586d3aab41c6a7ca3bf6c32d9c3ca40f9a2796a
+Qy = 01fe3e52472ef224fb38d5a0a14875b52c2f50b82b99eea98d826c77e6a9ccf798de5ffa92a0d65965f740c702a3027be66b9c844f1b2e96c134eb3fdf3edddcf11c
+k = 01a277cf0414c6adb621d1cc0311ec908401ce040c6687ed45a0cdf2910c42c9f1954a4572d8e659733d5e26cbd35e3260be40017b2f5d38ec42315f5c0b056c596d
+R = 00d732ba8b3e9c9e0a495249e152e5bee69d94e9ff012d001b140d4b5d082aa9df77e10b65f115a594a50114722db42fa5fbe457c5bd05e7ac7ee510aa68fe7b1e7f
+S = 0134ac5e1ee339727df80c35ff5b2891596dd14d6cfd137bafd50ab98e2c1ab4008a0bd03552618d217912a9ec502a902f2353e757c3b5776309f7f2cfebf913e9cd
+
+Msg = b0d5d52259af364eb2d1a5027e5f7d0afe4b999cc5dd2268cfe76f51d2f17b541bdd7867e23a1bb897705153d9432a24012108979c6a2c9e2567c9531d012f9e4be764419491a52eae2e127430b0ab58cb8e216515a821b3db206447c235bf44ee304201b483b2a88844abaa18bca0147dfff7e502397dd62e15524f67eb2df2
+d = 013c3852a6bc8825b45fd7da1754078913d77f4e586216a6eb08b6f03adce7464f5dbc2bea0eb7b12d103870ef045f53d67e3600d7eba07aac5db03f71b64db1cceb
+Qx = 00c97a4ebcbbe701c9f7be127e87079edf479b76d3c14bfbee693e1638e5bff8d4705ac0c14597529dbe13356ca85eb03a418edfe144ce6cbf3533016d4efc29dbd4
+Qy = 011c75b7a8894ef64109ac2dea972e7fd5f79b75dab1bf9441a5b8b86f1dc1324426fa6cf4e7b973b44e3d0576c52e5c9edf8ce2fc18cb3c28742d44419f044667f8
+k = 01e25b86db041f21c2503d547e2b1b655f0b99d5b6c0e1cf2bdbd8a8c6a053f5d79d78c55b4ef75bff764a74edc920b35536e3c470b6f6b8fd53898f3bbc467539ef
+R = 01dce45ea592b34d016497882c48dc0c7afb1c8e0f81a051800d7ab8da9d237efd892207bc9401f1d30650f66af8d5349fc5b19727756270722d5a8adb0a49b72d0a
+S = 00b79ffcdc33e028b1ab894cb751ec792a69e3011b201a76f3b878655bc31efd1c0bf3b98aea2b14f262c19d142e008b98e890ebbf464d3b025764dd2f73c4251b1a
+
+Msg = 9599788344976779383a7a0812a096943a1f771ee484d586af1a06207478e4c0be9c200d42460fe837e24b266c8852d80d3c53cc52ffb1913fc3261145fc6da575611efd16c026059a2e64f802517ffd1b6b34de10ad2909c65c2155e8d939b8115400c1d793d23955b15f5d1c13c962ff92b4a815cee0e10f8e14e1f6e6cd38
+d = 01654eaa1f6eec7159ee2d36fb24d15d6d33a128f36c52e2437f7d1b5a44ea4fa965c0a26d0066f92c8b82bd136491e929686c8bde61b7c704daab54ed1e1bdf6b77
+Qx = 01f269692c47a55242bb08731ff920f4915bfcecf4d4431a8b487c90d08565272c52ca90c47397f7604bc643982e34d05178e979c2cff7ea1b9eaec18d69ca7382de
+Qy = 00750bdd866fba3e92c29599c002ac6f9e2bf39af8521b7b133f70510e9918a94d3c279edec97ab75ecda95e3dd7861af84c543371c055dc74eeeff7061726818327
+k = 01b7519becd00d750459d63a72f13318b6ac61b8c8e7077cf9415c9b4b924f35514c9c28a0fae43d06e31c670a873716156aa7bc744577d62476e038b116576a9e53
+R = 0183bddb46c249e868ef231a1ebd85d0773bf8105a092ab7d884d677a1e9b7d6014d6358c09538a99d9dca8f36f163ac1827df420c3f9360cc66900a9737a7f756f3
+S = 00d05ee3e64bac4e56d9d8bd511c8a43941e953cba4e5d83c0553acb87091ff54f3aad4d69d9f15e520a2551cc14f2c86bb45513fef0295e381a7635486bd3917b50
+
+Msg = fdde51acfd04eb0ad892ce9d6c0f90eb91ce765cbe3ce9d3f2defe8f691324d26b968b8b90e77706b068585f2a3ee7bf3e910528f7403c5af745a6f9d7ba6c53abd885c3b1be583415b128f4d3f224daf8563476bd9aa61e9c8518c144335f8f879c03696bddbe3ac37a8fbede29861611feaa87e325e2f60278b4893ed57fb0
+d = 01cba5d561bf18656991eba9a1dde8bde547885ea1f0abe7f2837e569ca52f53df5e64e4a547c4f26458b5d9626ed6d702e5ab1dd585cf36a0c84f768fac946cfd4c
+Qx = 012857c2244fa04db3b73db4847927db63cce2fa6cb22724466d3e20bc950a9250a15eafd99f236a801e5271e8f90d9e8a97f37c12f7da65bce8a2c93bcd25526205
+Qy = 00f394e37c17d5b8e35b488fa05a607dbc74264965043a1fb60e92edc212296ae72d7d6fe2e3457e67be853664e1da64f57e44bd259076b3bb2b06a2c604fea1be9d
+k = 00e790238796fee7b5885dc0784c7041a4cc7ca4ba757d9f7906ad1fcbab5667e3734bc2309a48047442535ff89144b518f730ff55c0c67eeb4c880c2dfd2fb60d69
+R = 01d7ce382295a2a109064ea03f0ad8761dd60eefb9c207a20e3c5551e82ac6d2ee5922b3e9655a65ba6c359dcbf8fa843fbe87239a5c3e3eaecec0407d2fcdb687c2
+S = 0161963a6237b8955a8a756d8df5dbd303140bb90143b1da5f07b32f9cb64733dc6316080924733f1e2c81ade9d0be71b5b95b55666026a035a93ab3004d0bc0b19f
+
+Msg = beb34c997f905c77451ac392f7957a0ab8b23325bd5c63ca31c109ac8f655a1e3094240cb8a99284f8091de2ab9a7db2504d16251980b86be89ec3a3f41162698bab51848880633e0b71a38f8896335853d8e836a2454ecab2acdcc052c8f659be1d703b13ae1b090334ac50ab0137ddb5e8b924c0e3d2e5789daaef2fdd4a1e
+d = 00972e7ff25adf8a032535e5b19463cfe306b90803bf27fabc6046ae0807d2312fbab85d1da61b80b2d5d48f4e5886f27fca050b84563aee1926ae6b2564cd756d63
+Qx = 01d7f1e9e610619daa9d2efa563610a371677fe8b58048fdc55a98a49970f6afa6649c516f9c72085ca3722aa595f45f2803402b01c832d28aac63d9941f1a25dfea
+Qy = 01571facce3fcfe733a8eef4e8305dfe99103a370f82b3f8d75085414f2592ad44969a2ef8196c8b9809f0eca2f7ddc71c47879e3f37a40b9fecf97992b97af29721
+k = 00517f6e4002479dc89e8cbb55b7c426d128776ca82cf81be8c1da9557178783f40e3d047db7e77867f1af030a51de470ee3128c22e9c2d642d71e4904ab5a76edfa
+R = 01c3262a3a3fb74fa5124b71a6c7f7b7e6d56738eabaf7666b372b299b0c99ee8a16be3df88dd955de093fc8c049f76ee83a4138cee41e5fe94755d27a52ee44032f
+S = 0072fd88bb1684c4ca9531748dfce4c161037fcd6ae5c2803b7117fb60d3db5df7df380591aaf3073a3031306b76f062dcc547ded23f6690293c34a710e7e9a226c3
+
+Msg = 543c374af90c34f50ee195006d5f9d8dd986d09ad182fcbefa085567275eee1e742bfe0af3d058675adeb5b9f87f248b00a9fbd2aa779129123a5b983f2f26fc3caf2ea34277550c22fe8c814c739b46972d50232993cddd63a3c99e20f5c5067d9b57e2d5db94317a5a16b5c12b5c4cafbc79cbc2f9940f074bbc7d0dc71e90
+d = 01f0ec8da29295394f2f072672db014861be33bfd9f91349dad5566ff396bea055e53b1d61c8c4e5c9f6e129ed75a49f91cce1d5530ad4e78c2b793a63195eb9f0da
+Qx = 009ec1a3761fe3958073b9647f34202c5e8ca2428d056facc4f3fedc7077fa87f1d1eb30cc74f6e3ff3d3f82df2641cea1eb3ff1529e8a3866ae2055aacec0bf68c4
+Qy = 00bed0261b91f664c3ff53e337d8321cb988c3edc03b46754680097e5a8585245d80d0b7045c75a9c5be7f599d3b5eea08d828acb6294ae515a3df57a37f903ef62e
+k = 00ac3b6d61ebda99e23301fa198d686a13c0832af594b289c9a55669ce6d62011384769013748b68465527a597ed6858a06a99d50493562b3a7dbcee975ad34657d8
+R = 00cef3f4babe6f9875e5db28c27d6a197d607c3641a90f10c2cc2cb302ba658aa151dc76c507488b99f4b3c8bb404fb5c852f959273f412cbdd5e713c5e3f0e67f94
+S = 00097ed9e005416fc944e26bcc3661a09b35c128fcccdc2742739c8a301a338dd77d9d13571612a3b9524a6164b09fe73643bbc31447ee31ef44a490843e4e7db23f

http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto-c/blob/8d28d2c3/testVectors/ecdsa/P-521/sha512Verify.rsp
----------------------------------------------------------------------
diff --git a/testVectors/ecdsa/P-521/sha512Verify.rsp b/testVectors/ecdsa/P-521/sha512Verify.rsp
new file mode 100644
index 0000000..d12179e
--- /dev/null
+++ b/testVectors/ecdsa/P-521/sha512Verify.rsp
@@ -0,0 +1,106 @@
+[P-521,SHA-512]
+
+Msg = a0732a605c785a2cc9a3ff84cbaf29175040f7a0cc35f4ea8eeff267c1f92f06f46d3b35437195185d322cbd775fd24741e86ee9236ba5b374a2ac29803554d715fa4656ac31778f103f88d68434dd2013d4c4e9848a11198b390c3d600d712893513e179cd3d31fb06c6e2a1016fb96ffd970b1489e36a556ab3b537eb29dff
+Qx = 012a593f568ca2571e543e00066ecd3a3272a57e1c94fe311e5df96afc1b792e5862720fc730e62052bbf3e118d3a078f0144fc00c9d8baaaa8298ff63981d09d911
+Qy = 017cea5ae75a74100ee03cdf2468393eef55ddabfe8fd5718e88903eb9fd241e8cbf9c68ae16f4a1db26c6352afcb1894a9812da6d32cb862021c86cd8aa483afc26
+R = 01aac7692baf3aa94a97907307010895efc1337cdd686f9ef2fd8404796a74701e55b03ceef41f3e6f50a0eeea11869c4789a3e8ab5b77324961d081e1a3377ccc91
+S = 0009c1e7d93d056b5a97759458d58c49134a45071854b8a6b8272f9fe7e78e1f3d8097e8a6e731f7ab4851eb26d5aa4fdadba6296dc7af835fe3d1b6dba4b031d5f3
+Result = F (2 - R changed)
+
+Msg = 2fc1140a7414e33ab469799f9432b30d29d1e4451b28a756a0f24a7f7f90cb284fb443c074267a7600b370eefffea23078b4016b59cbeb95fab3c6f37a72e92271b29ee2382e1106f8dfd3871ef9bf045f78d378acc8d16c983d54c7bc0b0cb46bba0de78630f6d0796c2c275e46ebc88e6e6c0e675ebd849f02e47f51abd215
+Qx = 01d6aef44370325a8a5882f4667c21172cdc8fa41d712562883ececff53883ac8ee276124e825088c79d6c9d96323cb7b8c0b7ea44d3f0026e2538f4b62d785bb1af
+Qy = 0027203959a6e944b91fe6306debe74dc5dde9831fd0ec27e8be2d0b56807d63151b15f6495b8632e919e1e6b015f5ae5f2b6fb8cf75b5f848f00cf4ee457cebed3a
+R = 004417ff74889dde6bb1820b5d13da5c81dcf9b0723ee89bb1ff0d3faa90d497685709f315b2cbe55481dee43ebb6d25b1501ae69494dd69e7bffb72f987d1573b93
+S = 00fd7aa027c665458c7ac11d54d4f32cb4a1e727b499ce27b08d3d647c636cc3222a4f0a6057732249ddc22574d7cb80c3769c3ea9de3d33db3edd8ea90cb3f8dc8a
+Result = F (3 - S changed)
+
+Msg = f69417bead3b1e208c4c99236bf84474a00de7f0b9dd23f991b6b60ef0fb3c62073a5a7abb1ef69dbbd8cf61e64200ca086dfd645b641e8d02397782da92d3542fbddf6349ac0b48b1b1d69fe462d1bb492f34dd40d137163843ac11bd099df719212c160cbebcb2ab6f3525e64846c887e1b52b52eced9447a3d31938593a87
+Qx = 0153eb2be05438e5c1effb41b413efc2843b927cbf19f0bc9cc14b693eee26394a0d8880dc946a06656bcd09871544a5f15c7a1fa68e00cdc728c7cfb9c448034867
+Qy = 0143ae8eecbce8fcf6b16e6159b2970a9ceb32c17c1d878c09317311b7519ed5ece3374e7929f338ddd0ec0522d81f2fa4fa47033ef0c0872dc049bb89233eef9bc1
+R = 00dd633947446d0d51a96a0173c01125858abb2bece670af922a92dedcec067136c1fa92e5fa73d7116ac9c1a42b9cb642e4ac19310b049e48c53011ffc6e7461c36
+S = 00efbdc6a414bb8d663bb5cdb7c586bccfe7589049076f98cee82cdb5d203fddb2e0ffb77954959dfa5ed0de850e42a86f5a63c5a6592e9b9b8bd1b40557b9cd0cc0
+Result = P (0 )
+
+Msg = 3607eaa1db2f696b93d573f67f0359422101cc6ceb526a5ec87b249e5b791ac4df488f4832eb00c6ec94bb52b7dd9d953a9c3ced3fb7171d28c42f81fd9998cd7d35c7030975381e54e071a37eb41d3e419fe93576d141e36a980089db54ebbf3a3ebf8a076daf8e57ce4484d7f7d234e1f6d658da5103a6e1d6ae9641ecac79
+Qx = 01184b27a48e223891cbd1f4a0255747d078f82768157e5adcc8e78355a2ff17d8363dfa39bcdb48e2fae759ea3bd6a8909ce1b2e7c20653915b7cd7b94d8f110349
+Qy = 003bd6e273ee4278743f1bb71ff7aefe1f2c52954d674c96f268f3985e69727f22adbe31e0dbe01da91e3e6d19baf8efa4dcb4d1cacd06a8efe1b617bd681839e6b9
+R = 004c1d88d03878f967133eb56714945d3c89c3200fad08bd2d3b930190246bf8d43e453643c94fdab9c646c5a11271c800d5df25c11927c000263e785251d62acd59
+S = 012e31766af5c605a1a67834702052e7e56bbd9e2381163a9bf16b579912a98bebabb70587da58bec621c1e779a8a21c193dda0785018fd58034f9a6ac3e297e3790
+Result = F (1 - Message changed)
+
+Msg = 307bfa6a2764591bc31537fcbc7275e258f158f4b7ac5cb03761aafee8ff0c58a933cd28a38fcd1a29a7c907050c273bffb249303ea0007d16c8c4aaaf145afe9cc97285d33a8bd42f566b1bea7a5ef77844e3d7c3b55132ac7407da04f1a7e85ec7f2d03b667d9c3c52ebeb1d25b392fb4aa210aff2dac00ffd1b14b0e2112f
+Qx = 01d9020b8e6717254eebe619d46dd5a9dda7ba5491a7d1b6820fba888e236fafd71179200437f4d61284fb5a3dfbada66bac3e6909ccbeee03c2b93a8bebe41a73f4
+Qy = 0048a5f09174fda12704acdd8ed560695dec42864b6300a030768a0be7f09d25f82d7b126125e41417a145641937807ed8d1af7a53f5bc3fc3c57427d755dcce3e25
+R = 0092df2dcb457fc7578eaacc98ffd73ade07d764e9553506f3dc958cdb3f65d37665528cb2f5f8bded0db0a57e6fa73bfad1aaf94718379d1655db4f32d4c505a785
+S = 010e0c31479c2b29dc2726fe9f75b397d9e37a17619e96bc631c62e9ece71f05b199804cc803940d43ddee41171dd7787668c7db05049dd5b63e4f63562aa700ca81
+Result = F (3 - S changed)
+
+Msg = 3629ce6137cffaf0a485594cd47049e7866fa81bb56dd66168567542c6b8fdf7dbafe693c919a7288a03f2483b09c9cd2b3f91670264672967e4542d5bb6c87e861115ff3ec2ec2e96535148623e80525abae8d71f296a4e8947b48bb64074ebb7e0c7a586f57b35da910704f44b41151ac6db350c47e81805fc6932f435a98a
+Qx = 0007067d2cf7b7619b9fcff2c898246ae0950439b8bab92d809624970eda18456cb99953ce1ae45ee5d36ef02fcd5caa4d951de8581f0c21e572caad56d6dce60da3
+Qy = 01913c59007a309005f226b6a30122828d60b4d0390359e1977f88b5347dacf2056dd362648e8b1d6fc038a3bd3fde6f1140c740efa9075ab8b4a64b334c5cd43f09
+R = 012aa4a532c108aa3cfb1753f95ca626bb72bd96a423d727656d4ebdc3f406d6cc6c44d3718f9abae8a0b46be9b57f8fd3a540326b63d0d4a8a93165715920437787
+S = 001badaf38e16efd75915f4806f054d40abd2d11e402039bd48c832f66cbfd145e4dac93357d476b7e608d7b75a017374ae76eee86c505f2cc16eaa19075827ccd60
+Result = F (4 - Q changed)
+
+Msg = 27383a923d22292dacff105f00d0433eb719cc5fdf0d555f05a75fef392eb9a2b10aa7984ff8cfcc1425366578d138d193d735706e9689e1f2590374075c3b0143cf2a6f0d2108dcc3d6682c060e036c399774a3bc7800c7f34cba204693a42803df6592165fa19e34b6c1872ea11aa13e7a6648a4f0d56a5bf41dffd8f03aa4
+Qx = 00365388d9589c18ae608124b4cf746ff488183a912e07d26b6e867c5defb552a5a0df5a16b6342014dd1b0b6760072bcd60045d6a9a514fc74d16047c2e8765636d
+Qy = 01a5319b26fd555f2a12e557418f6aa65a3461aeaea5c0c6d8698ceaa5495eed7a7d2fed0b76e77b5be11834f36e413d5288e47231c0eb0e9007d4b042bb7a1b6014
+R = 01d9ef377063a592cf81e27815a2c20789ff9b60f7f125e618b52d90b35abdd41cd7f437cfad337953ab0314fe8e79a2f2d27fa08597d4b28313358f714a737321fb
+S = 00f01d4f150e0a174674a6a61a58a4ba781406024f6dd1b5252e04807b8a807a4ff8d52883eaa258286e506ef4b04ca890e6f81a79ed9a0cd5ed585094fea0bc5c43
+Result = P (0 )
+
+Msg = 2235705a18ad2fc1940d6f1641ef3b7019e56e1cad01aa4c6da18150d622551206dd00163e71b9c2b133f29507fdef144c6fa4a1110a30eb309b04b3f3f9d7f5d6649ec3cf9416c8145e12a0934db1e48ff14800b238a4abe1e2b95ae6984a47aba11408b5f4dbc2cba858d52d58022b66ba2721573b83d5b62f07f38c4c58da
+Qx = 00fd0cac24aeb75ca50c50a72340256b43649050e0fa155f72342877bf49c3d57ac2b51b828385ee6aea94bae38587e63390f5ef4ac5540a9e6fc6f1c1e79b524693
+Qy = 0107b227bdd307efd7a8d4034f733d150c41601215e76eea2bac62ad2427dff52f75f46da3d5fe31bfaedf071d2a8bb5e3c82bf6c84ecdf89ca233c92d599d376309
+R = 01c00196aa5dcbc4c4404fa76504a5eacbc96aa66c3ba531a3a679f3fb675ce58f863e08b0d2bdeae74d96ad93a39a78ed4bb3749e26567d0ca5c48a71079925b617
+S = 00f1188eba4f0943f4003ddad6a54606c13af26014db2eb8e60534fad3dae8f07c021cea0990987f1e02dce03fe53360472c3dee3c305bb3ef4b0b53ea6625bf152a
+Result = F (2 - R changed)
+
+Msg = f1f3b286307569704538c97c680abd5bb892b421463895c74aa8e1c4a46213f21a95941b8629af8117c2a00cbb71f44d79917357d529e486d8d5b8640f809960973fe9e28b34c6e4082f3b3b0689fd44d3afe5b71bf4349d32b7d80ef5e22d58f19a138e1b676addf384b3e54795c6cee53264f883d080630bf48f498761e6aa
+Qx = 0104a96beea09d88ea6789a9925880c8a9ece8d764be931675640c1bf847ac8e7a8b14f408ba6722c2bf6295db9132d6ad2fe287fa6e6855f7c58ed238148a896944
+Qy = 01b5e8e643fae552261427ea7d521f380adf605579462315c75e9203203ebdc9ee33dd7ba885b6cccccbd2327462988223c4b31485311c935a341ee87ba1ee820ce0
+R = 00ba2c57827baae684d2c637590275c782a6db263a5358c8e1a08b5460ca3cf0f5ff8d4119a6b0d55fc68a75c793098e0a5622a0b4e2fcb0f17943440138d751797b
+S = 01594beb73b2ebb7c573ff07b5c43e722dc05979df0eef53587e9fe06a920f61d2efcc7671e6cb875df4e4d92cd4d37cc3eadcb9b6aee8f2097790ce24d6dcda8706
+Result = F (4 - Q changed)
+
+Msg = b6fd672065774d5c252a6a596d0373b898465af6778c7219011db482fd94a4e260df7fb7bd3703da7293e96e5324c12f5b8e1cd2c27dc3062007b6ea08e1fcc819ca099033eeb0a88ae28fe49be330a1b727d49fbff8f497edb45b8e0fa1553c33e26ff9b4c35b729b85a6e98654ec3f46a2089b6f863033498e1e4aac3690f9
+Qx = 010d587aa82a4d8e690672c00e3fd71826d892862d14dc4fbad4935aaab86924dc7ee6f7fd3e2bbe86a8652589448494dab83d363d1d623cbae59f6c2670706a0576
+Qy = 01a9734c99b6ff21267050738937c30971d0f6fe07e29794748a5017ea1036c975c9a52e6d3739ca0e8d70e784529cc1a7437aac5d75c69121b69020a95356137f1d
+R = 0188dcb840dfc573a97117009226d58dbb930ba8ec848931786abc770611f3519c8ba73cceb5b489170805bcf04974672fe66c908ba379aca99fa67fec81a994c2d1
+S = 000b1a185512dc6a65e454ea2bdb8049ef8f012a53ae87b759fb5d9edba51ea32e254e80545a99eb4b7c58af96b7c433535fa3f009cc644b1c97666d88355af9fc19
+Result = P (0 )
+
+Msg = 297660ae8a7038969a7f0838cd95ed1885bd20c5a69a24f5fc8a63918c2167868ade4e372390b0c5ff198315ca1ef947d9c85036e38ba1277f1e6146723bd8f9ad1db6de80dce053c4c9e4597630a02dc514683310d3792a4831df7e8fcc77298f2a2fc4c071412219482a6e218c916719c613cd249a336f823632aeccff486f
+Qx = 0182c957a62e2e27aa28acee2e2f7b1ed6aef81c68001d2648da47d2b621e8b8bd18d991cd1e3fb9afb84f639fbed1050584428cd2a1d50f877532ffdefdd4e6f7ba
+Qy = 005fadeef58cc0d79362b599e94636f9c70e3e5580c085b7ea52a5fd24fe4a892120b8f28ba53ec249c42d6d3b36268b8ca8464e54b72d37327d7504d9b7ce534d95
+R = 01e3a78e973fef6b6de8a0356401e89f435ae5f49c0173f073c4dbb9c91463e420f5265eade8305f11d30fa8d97e5b4c5ab33975f73385aea81fbdde2f7ddf7fdf16
+S = 00efeca10b5362e05a8f2e3df6661d0d536b32ca1e0a62515df2d94eb314aadb5eb40468483e24b16efe85c503d6c231ef860aabe674b72ed1ddd93853338e5e4e50
+Result = F (3 - S changed)
+
+Msg = 5d058ae533538ad5f6122e8cc4f5c6dbba56c9b9e49d7eac506874683b7b20093552db5ccd2d819ad554eadedb9b2cf613b73429723caa9f21b9fdff20d575f17b02bbedaa9e2c6b788ed90e239d9def9d108df3cc596fc5e975c59f1d78b9be3fa41c4fe86d1dcaa2d4876c494e14bc167736fef07563d2db0506b24da891d1
+Qx = 009911b41f9af525c874e05bfdf050331bf830296911bcb18eec16275027d63fa106c8989b07921c7e58b02711b5b5880cc4e6d9174e0d31060548cf643bf7ed4f0c
+Qy = 0184fc0fac3c2c80c69c1c0293f4e5e22fa08c267b1f36ac5ad6dfdf4da1754f7942f48cb56f56cba05e22b91508fe4db3703066e8f697aca56f974f3fe530c9640c
+R = 017b8a22fd8f73112310867909f234fad6aa82999c28ea5a2e74b4b4bc79b2f89008b4d361ef7e797c7656f7d9317eff3e5a4982799b8cc0db82618bd2aa3959f617
+S = 01edacc6d1c0004b2090d2025d615de1fd53a96e826a3930c7cafaf3c87f34b2583997534cfa127485600a7ae04e6af4a2e98c77fd04507195e520e80014aa982a3c
+Result = F (1 - Message changed)
+
+Msg = c805a07a01e3806dc81454ee64b3afb33f302dbf65062c1c31169bb501fff4c4a1905729a4d0ff463f2349fd74596b7d51414419e3c92767ebc9db52dae4df2a83cee45486dc1296c6422000699c72137178ffd666d2f1d1a105972bef6eef74e704d8c815bea269512a32fb1b8dd82174e04b2d0d5beaa0401284a7e2bfaca5
+Qx = 006da3b694e3123ef96b3fd2ab964f85a36110590720dc1724a5d50d3050498957211c6a1535032cf1f31240bfab967cc0cf3b442c35a1bfa3e72470df1863d2593a
+Qy = 017d0a5dc460c85d0365c7bdc2e9300e276b8aa97368af9972744f4422442afc601ecfe7903a33b0354c901c7b61f29d2d3c5610192cd188291c5651754b385b87a8
+R = 01f9cb1f4e2e65282a929acd8b685ab34da176f5c73bcb374fd1b09bc995385ce3902d6c5496b02916fd5a28f6f8bb662828a76aa0ad14b01bc24a63b328c7bb949b
+S = 001d6b3a2f34e3b7bf63d06b11ace172ca61ac5a911a4b408d766eb586c9ab820d42f555e546d892643e12a6752465427c213e3839e4f8cb3a7e4fd83642843e8544
+Result = F (1 - Message changed)
+
+Msg = 05f1b975f4f446a1b8aef50dfca608b03574a83a7c78d5c2efe1660a034994917455b9c8a774ae381cbfdfff162d36b9a17bbc6ddef34517cf8fa54bb6901f42def4b787a83d3285eaf04621c58267ae6d2bdf20b3bb4cb6c4bd8ee5105eb3f049c44df4cca39f6015a3d316f08af97eda47f92a53600cb2304a2724e40a9361
+Qx = 00b7e03f0d623a0998add5360dfb0bfe836fcb0a46b0d6f697ba6b3766bd8698ac8c7af62f50511c6aa5e613f4a99fa28f70b220ba1cddb22482be74c969953ae6e5
+Qy = 00d4ee40ee4441dc85356760f87ba32e2e7c269a2e53a2e8425d5ff02f5e4fe8d65cefe20e162c3915d2eb9ad1354bd28595a86dbdc94a5d40c5b44b1e3aa3965455
+R = 01fcba4781de6506f7c3f26521f0e036b5225f651e69e115d6784b2176a666edf69d759627468400a73a136f599fb8db4643fcc16bdeeef6384a1875e1c81c36b962
+S = 00a21cfaa7e1ee0eff7efc3d7e936378500283b00687363070974483ad474c58c6b55b77f678d78e7cb44d9745f79394659bdd26b72663608384b5ae9cac1c888d13
+Result = F (2 - R changed)
+
+Msg = 3a8d8066c0bfc287e1434c2430261110e33d0ebf69d35b65b0a2d70763c7fec993decf883174f216a6c0ff622ef777c078cae5c6724f9a020f8ec07041dfcca3689a8abcce10efae0a2da949b87459586fd012805c54f0807d927d0b64595c6b18705b49d497cc2ee8b867f9e58b1382e25065500d1d7442944283346657a835
+Qx = 001bb7c623fde41beec7ddfb96f65848c2f52b50b39576bf06de6ccf157b8ec49889528728480928236300447da7171f58c8f0e0ba8fd3e2cf378b88619aa6c1e0bc
+Qy = 01f8b20a1a7df319bf78c2cee03581a1ffe8ca5107fbfd40760fbd5ef5247e2df1092d5caf504a9ee653ded2995f0cdd841d6af29c9f720770056ebbc128705f68e6
+R = 0000db4c31f316912295c5b9506aabc24b0b2dc2b2358e6b023148889d9200bcf44762e88575e359b4868b2d93ba7bdb24800b09fc22eade0744b9832b71ee784e9c
+S = 018c84437fac7cd82099a2a4230084ac27ec7ea9c92e1c9d9a71290df9b37dc881f9ba59ed331c22dca4b2cbb837cd916e0a78398d2b7aaf8e88f113a942beac48c0
+Result = F (4 - Q changed)

http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto-c/blob/8d28d2c3/testVectors/ecp/test_vector_ANSSI.txt
----------------------------------------------------------------------
diff --git a/testVectors/ecp/test_vector_ANSSI.txt b/testVectors/ecp/test_vector_ANSSI.txt
new file mode 100644
index 0000000..9936169
--- /dev/null
+++ b/testVectors/ecp/test_vector_ANSSI.txt
@@ -0,0 +1,173 @@
+# Choice: ANSSI, Type: WEIERSTRASS
+# Modulus:=0xf1fd178c0b3ad58f10126de8ce42435b3961adbcabc8ca6de8fcf353d86e9c03;
+# A:= -3; B:=0xee353fca5428a9300d4aba754a44c00fdfec0c9ae4b1a1803075ed967b7bb73f;
+
+#test1
+ECP1 = BECCBA22FEDDC3E7982061457B086CE999E2FA4E3E929F61C906DC5CBEFB38C5:8C8519FC3EE6E407C8A4AF54225D9BAD3D5A72731C50E79DB6C58839AEB4A7D4
+ECP2 = 38735A15984EB74DC462F7347825F9C6424297597B3E845FB8DB1EC1DF143A1C:CFDDBEE4F1638A800C389C6934DB4FAC4BB24267CCDACD43B870896F92FA7B59
+ECPsum = 6AE4D4ECC68C958FB05FD40C255A67CB342CF8E7DE1FA51D04203D7076E58ECC:5F016FEE82C5FA42625A9AFDE72FCC7C166A556200EFFFB3AB64377B15A09880
+ECPneg = BECCBA22FEDDC3E7982061457B086CE999E2FA4E3E929F61C906DC5CBEFB38C5:6577FD8FCC53F187476DBE94ABE4A7ADFC073B498F77E2D032376B1A29B9F42F
+ECPsub = C26B9CC584BC13883F0DDDD42A215DC1A45EA7E54ECDC18BC1FEBB7A4877F386:D7E7DFAF79330E528EAA3D243E25A6E01641EC9A05AF6CC1753132565F32BD64
+ECPdbl = 9218542B38E2061AE6AE14E2118086C5CB3E8EB8656F6A824D30D7332EC98FB5:CCB9B833753AB960E00C0FE40A1F707517E49308B5713F76D01372E13BDE0A9C
+BIGscalar1 = 09AC55646CAB266BA102124EC1CF1C5A74695823983BD5FAC93874A8AA290CF5
+ECPmul = 78DF895A26885ACCF2352B027CDE4B79FC91389CAD59B9178D4DB2771FC10EE3:727AD0E1076748DADD9ED7D009507A2B65A9C927FE0B196CFD98D64226E2686B
+ECPpinmul = 202ACF55FF374D8B91CAF99506AC95864DD4C8179B4D85F0A0928CF5A13E7DF2:BDE061010D83B59278F3050436EC066F1CB2C4C118E9A74596E83CE523CF1768
+BIGscalar2 = 854B7CAB0068630FC171C2CDBA6CFE79EAC3259E9595D3AD1DB221FB1248DEBC
+ECPmul2 = ECAF677D4DBDAAEA42A3EA291EC54A5B925001D6270BB78A0B5D486FC09DC05F:5582D15C32E0EA847EB6385225288C91F524267B2FC4B4B466BEDD4862E377ED
+ECPwrong = 90BBCB4F22B29EA765EF7291F72865F74FA8443311F6305C7628A1F8D6552044:5C59BE4E6AF2AD863E715C5F8B7FCBA9E4EE7B3989BBFD30BB66DE9AE47755E5
+ECPinf = 00:01
+ECPeven = BECCBA22FEDDC3E7982061457B086CE999E2FA4E3E929F61C906DC5CBEFB38C5:8C8519FC3EE6E407C8A4AF54225D9BAD3D5A72731C50E79DB6C58839AEB4A7D4
+ECPodd = BECCBA22FEDDC3E7982061457B086CE999E2FA4E3E929F61C906DC5CBEFB38C5:6577FD8FCC53F187476DBE94ABE4A7ADFC073B498F77E2D032376B1A29B9F42F
+
+#test2
+ECP1 = 06AC0CAC1D56F376FF0A0D96018A58352144D4B65644DFE830983A9678ACFF65:3213B7761429C918395A8159F8CAEFDB03F34C8B19B2F185D4C04535657CAFB8
+ECP2 = 64F45830CA90D2E3354B27B5725F5AD82F0920E77BCEAE35DEF970A541B4C27B:1C42D6983CEED50D004ED20638F2D243D48207FC7B5930DEF8CFB9226A945E23
+ECPsum = E0B22DDDD1701F42B7048961BEA51E0B537BC5B8089F52E34CEC6B0BA043546B:9251D5DF2E0B7CAAD8E52A6F57BAD07EA26DEB85405F95DE813985C8F18DDD81
+ECPneg = 06AC0CAC1D56F376FF0A0D96018A58352144D4B65644DFE830983A9678ACFF65:BFE96015F7110C76D6B7EC8ED5775380356E61319215D8E8143CAE1E72F1EC4B
+ECPsub = 01144C2B7B14176E9734727AAAB875CDC3CEEBF44804153659353B792145C4A4:B62092026D2DCC8C73509B7F7739C47DA8F29B618895F6B54AA0B4212691B847
+ECPdbl = E4259194030E0C77E2160ACDD001FD047506B17360321B6519C7648A6D6AB484:5CF89570D93CF8DE1D06DFA6D6C1AD28C3DAA14621B2F448A1303A2F06293EF0
+BIGscalar1 = 3429A59B5EA69437B68B53362A3D52AC477B8649769A019686300FED5914E130
+ECPmul = B559290DAA8F23B34FA322E27CB7A9D9146E38E9412088FB469EA0C88F45EB09:3E7D33B8F5B76E6CEC9685D153CA6A58EF035A1381C9BC7BF6A5C4C370AA8138
+ECPpinmul = 8CD5C60F1FCF8E57BC12B760B66664F7D507744E6DD41DF6CBD246115CE77493:B9068BA36E985CEF462405123196A39D79EE5BCBA540E366AE6BC72FB7C15749
+BIGscalar2 = 606C1E7AE7D26F83B0AE2135D3D2A78CE532971314767610AFDF7D8ADD2F90BC
+ECPmul2 = 8BABC6DD54D4C9D2B83D5EA20DD9B146A73997EA1016FBE54B5A3C6EA7220A3A:E50C81E4882B50A3DFAE512D22DA8B7484BDA639022731CF169646B9C4540324
+ECPwrong = DD114D33651F652EDF20B8FB152E9B9B31DC1BE3C6743705F10C1A1C67E04478:6ED4005A4B561677F372110EB10096FDF97DBC8D3EB703322A7E7A7340338FD4
+ECPinf = 00:01
+ECPeven = 06AC0CAC1D56F376FF0A0D96018A58352144D4B65644DFE830983A9678ACFF65:3213B7761429C918395A8159F8CAEFDB03F34C8B19B2F185D4C04535657CAFB8
+ECPodd = 06AC0CAC1D56F376FF0A0D96018A58352144D4B65644DFE830983A9678ACFF65:BFE96015F7110C76D6B7EC8ED5775380356E61319215D8E8143CAE1E72F1EC4B
+
+#test3
+ECP1 = 710ADFED18043AC85A51FCFC8142621AB413A5B5D12AD6EAE8BD945011546A57:E1D042D594FEF3D40D09E30F8F3723A1F9291464C9E22FBFFCF0DCC1D5BF694B
+ECP2 = 3C83A3DE196D4F455012412AE28811FB4CA2534F8ACBF56322644DD2EAD42CC9:3F818AF70CF093C90970B55E75A7CE3962558129BD328E3FF40B339B32E943A7
+ECPsum = AD6773DE188B7248F57EF247AB59468EE0FBCF8F4EBB31F63539FD5A038BF2BC:E3C52A669E2DC854E55DF91DD13F4BCAFEA3059BE8BBA9523A2AE71314C9A9E2
+ECPneg = 710ADFED18043AC85A51FCFC8142621AB413A5B5D12AD6EAE8BD945011546A57:102CD4B6763BE1BB03088AD93F0B1FB940389957E1E69AADEC0C169202AF32B8
+ECPsub = 912E6B06458E2102AD0295173B945C2976FCAF95D8A48F2C0EC0AA7134E02E57:81212674FB2AFF190E07D6CBB83307A6F6AF30D96B7239810E1F8CAEA0CE1E0A
+ECPdbl = A204C04AC205900126D06E2CAF058BAA44BDBA3052BF8248AE9A87D8781FD06E:4319DE1AE48A8FAEB382E8A83FDD8DE9C8CCF119836EA5190E2845AF4B2EC453
+BIGscalar1 = 353FD1190486C6A3ABFCDB6AA5E120361181E2AB7E9C55DE11546312CCA3998C
+ECPmul = 2F37C4FCCC2D4179DD6D9E2C9E1D89200A72CBCF34D359CF72D11E25CBF8DF95:076281FADA1B9236DDACC66C129E7185E76FE1D104A4FF355FEB448157DCFD88
+ECPpinmul = 2C33DAD2A772607A24E71E0ACDC4523C9BB6B237CB1E7B425F24E011B4DF7DBE:718AF276BE774E9A93F86EC993ADBEA540A2F201C2D0DADB23BDFFE6EC01A819
+BIGscalar2 = 21C5452BFD4F862102D60A96367BAEF0138A40C7E368B1513164B0A35FE0C015
+ECPmul2 = 46A24B36977DCA72477A8005864F77F20320D7749BC28F882B5E6FE9151F2A83:0A23624767FB794B8507D32CE75413C2C09A68030F40FAEC09CABE1B5C74DBB7
+ECPwrong = C9F82F13366027A426E44EA9F9C914A672813B32834D8A8A43F97B3B1A4A2820:927233A624A01A52BA55711E48EEEEB14074C471282DE3D0834EB1FDD3F9646C
+ECPinf = 00:01
+ECPeven = 710ADFED18043AC85A51FCFC8142621AB413A5B5D12AD6EAE8BD945011546A57:102CD4B6763BE1BB03088AD93F0B1FB940389957E1E69AADEC0C169202AF32B8
+ECPodd = 710ADFED18043AC85A51FCFC8142621AB413A5B5D12AD6EAE8BD945011546A57:E1D042D594FEF3D40D09E30F8F3723A1F9291464C9E22FBFFCF0DCC1D5BF694B
+
+#test4
+ECP1 = C0BB4FEDE295AC3CE904AB4E0CFEEC9255021210DBB00502E9663BF4F1C4C01E:CC54EF3666F3011E8E044D0420827A8A5EE5A8BCD85685A3A1BA14C08818402F
+ECP2 = 3E46A03B42CB2AD0F0C6D8C72E70B6157C96069DAC5752F2F69E3843E3536C8F:7FB2A8B48E921A10EA045244BD278C7D4D9B5E09E13D15501B2983409E41CD88
+ECPsum = A637480ACA31DE250A3CFB0DCE408430B87CABA9178C8CC420C54EEC0ED36D28:2E71C39056F89D5FD2C4CE2C017506AF11A450D59FF4FA663AE4E68E3E3312BF
+ECPneg = C0BB4FEDE295AC3CE904AB4E0CFEEC9255021210DBB00502E9663BF4F1C4C01E:25A82855A447D470820E20E4ADBFC8D0DA7C04FFD37244CA4742DE9350565BD4
+ECPsub = 0FFF4028CB6FB5FD9668351516EAA5525C0ED13D23CE465CBC32CEEB10E5A106:DE0613D798E87180ACC0D60D14D6F2CE7D874394266F931F316F0C4DCDD654DC
+ECPdbl = 9F4B2287F6DB42A65BA1A1096298F37E4B73D24B64D375BA26A0E29A82F8037D:54E006196658E37495BE12B495A22BD88F341EA4F8641629B1B0FC116CF0E203
+BIGscalar1 = 4A5CA7111DEEB669C3085779D19342B00DC4AAD86D596C20693D2CBD0500A603
+ECPmul = DD76E8CD96031AB78B16766CACC1FB7D35830BDFE06A233FDC1C24ADF98710BB:D034111AAEC54D89CE640D4384CE34FE777123F6275D676D5381EA266BDF3969
+ECPpinmul = 2B835A31A6E9CC590E5D20718B175300503CA499FB4276141BD49BEAA771C597:02EA560F0F09B49B3FD130D7620D62AC1866079CEC252CEBED6B2477E61C2317
+BIGscalar2 = 2B2C9A381EF55DB839A22E00037177757C13248B5067830B1DC3B58D278573F7
+ECPmul2 = 50A96CD626F9160C9C8355ACAD04F5650371F0760AD9030B053E3299A2ED6226:71E32CB7A27922D01BF14C1483CC9C90426AE961BCA30AFE525D0D289171537F
+ECPwrong = 43838B73272D4DF77C57C0828077A72FF4C690FD2E294F2351C97E0BF5E7D619:DA7ABE382368CFF50B84532FAF2739D0A83AFE63F25E16014BECF90356774C3A
+ECPinf = 00:01
+ECPeven = C0BB4FEDE295AC3CE904AB4E0CFEEC9255021210DBB00502E9663BF4F1C4C01E:25A82855A447D470820E20E4ADBFC8D0DA7C04FFD37244CA4742DE9350565BD4
+ECPodd = C0BB4FEDE295AC3CE904AB4E0CFEEC9255021210DBB00502E9663BF4F1C4C01E:CC54EF3666F3011E8E044D0420827A8A5EE5A8BCD85685A3A1BA14C08818402F
+
+#test5
+ECP1 = 04C45AAFD3B11F9092FF53CB617ED809CBD97CC4F80B28B5E42DAE23FF4FCF:63B5CAB21DE4A406E3AF42B0860A3AB04E523B773BE81C970263798A4C2E2B37
+ECP2 = 31F7A7654F1571C5E479BCB290C0EC950A865E231C3DB815512B138866297653:5AAD11CC85AF5DBD08151464862F8A958E97E1259A2475EF825037A27DC32D3B
+ECPsum = 2F912C5630B0A24C9EDFF963F0782E9876B76EE46654FCDF2DA864EF8D5E7AA6:6085AE921B8387C997248E69838B0069547213B4E64F82FF2AA537F4CE181495
+ECPneg = 04C45AAFD3B11F9092FF53CB617ED809CBD97CC4F80B28B5E42DAE23FF4FCF:8E474CD9ED5631882C632B38483808AAEB0F72456FE0ADD6E69979C98C4070CC
+ECPsub = D62EEEC761534AB66BD6B984D5A4E5D7738036DF8BEA590046D1DD844BC81D8E:C0852BFE5EC78E755DEE7DCBF92B7EEA897E60529CF80B841C025F49DCBB7364
+ECPdbl = 8D0344895665E28B2A0E08076051D6BADAAF95914BC8A9C80F4BEC2D157961B4:C0BD64CB7D1A73AB2440C5F5655EC0F9B0F97F13CD03897B73C58AA22320BB3B
+BIGscalar1 = 546393DBCCD3774F9D699A46EF1DEC049132C23BA8F9F47E9DCD71248E8DAAA1
+ECPmul = 11AF9BC0403382BAC79A91F67E197F6B6874231E87C15BF9F0183CCE1FA0273F:70EF2976F013B68B6B812E3C9500718117D143C472422E7238948F168D780E26
+ECPpinmul = 859FDB15D095F74DC7D4C70D0D7E4030A1810F8888C66612BB660EF633EFC4F8:ECEE3FAE5A33C764A79FF75FE2A1862B68C6BCCA55571DBEB570FB5633BC906C
+BIGscalar2 = C666DAA878314DEED50363B17A933A6EFEAE7D40CBBD64BB2910556AACF40AB2
+ECPmul2 = C7ACC4A7FE70422703E72D59A8A09DC3A85D976E76778B263188CACF526A2F52:B366F383820BCDA5552F8A812A4D59853D0049076129DBD7F41DE9FBABBD2181
+ECPwrong = 6061F0A1B356A40C456129E7EC188EF8285CB25C9C34982C5D0154891AF259DE:B9E181C6CD8009A46C8090225C4EBC55BA0012B65D6FEBC34A88DFD04320EEA6
+ECPinf = 00:01
+ECPeven = 04C45AAFD3B11F9092FF53CB617ED809CBD97CC4F80B28B5E42DAE23FF4FCF:8E474CD9ED5631882C632B38483808AAEB0F72456FE0ADD6E69979C98C4070CC
+ECPodd = 04C45AAFD3B11F9092FF53CB617ED809CBD97CC4F80B28B5E42DAE23FF4FCF:63B5CAB21DE4A406E3AF42B0860A3AB04E523B773BE81C970263798A4C2E2B37
+
+#test6
+ECP1 = E7A11D5800F20547F8C3C0A0236195F6188C4AE6729F8C2EFE38C2A4D6AFF032:1BCED76F33B58273DA7DB04604CC883442DE469A8C8B80A288A1039E5EB06CF1
+ECP2 = 2895B4B9078749DFAF6FE010BE5E41D1E727B43FCA70D1B7FEF9FA14B0AAFC89:F095EF810E571998804CD696962FDE7F2DEB7B3D6A8596D96613B3ACFA666E4F
+ECPsum = D513E089291F0FAA59F6395A684A1D4D3F1474E11C6976F855480FAEFDCF00F7:BA05BA2015F4212DBDE0F99CF0CCB570BC980AF410A4BEE7B31166144D6D1231
+ECPneg = E7A11D5800F20547F8C3C0A0236195F6188C4AE6729F8C2EFE38C2A4D6AFF032:D62E401CD785531B3594BDA2C975BB26F68367221F3D49CB605BEFB579BE2F12
+ECPsub = CFAE868E7905C112DADD88905D128142D23B93D8B27DC5D822261BE3BD361B73:5286CD14F81C87A0BFEC7B1E5F39E44A4B87AF8AA4E7C578DCFE1EA81692DD23
+ECPdbl = 9B7458157832DE81623993AEE067A5628F9CD931C055EFC0356C7D2767671E7B:454C5222BFB27701F0DDE20B7D28B7E131EBF43849E6F637CFD60635D7ECDFAF
+BIGscalar1 = F06D15E74992ABB22188FD9427AE8F5BD97E70E1FF9542F85D87597850FBDC4A
+ECPmul = DFB0DDA7F439B70584BC17E756D8C35D09C6EC87AECD55F31BAD8C91519A166C:E0705E7D1D84F44CD0470562E941FA27698F37B1D9689EE380C20103570ED047
+ECPpinmul = 7604B1EEAB29FA728F5C348BBD70F46C9293105F4043EC3CF8F01051EA6465B4:2F98A840AA404E499186613E2F10542A38E626F75181EC50E024259094C7419A
+BIGscalar2 = 589DE279B86077E82D44C17A821B3391F81D2DCB90219BC95B1DD79C7FF3CEDD
+ECPmul2 = 387970D6F9A2742DC2E9FA096545E451F51712BCE287969288EF52AF7FED56C7:D9263DC79D3633913BF8DD113CC32087C184A1C3B53A760DB37520E34D4C150F
+ECPwrong = 61019A35F5EB5F63A02E287E18C61D4632A4F0BFCF5F05A6F7707F9C12D07503:8F0FA16805E5E9AEB8ECD1389860C73853F43B15CDD6B9614A27D65C020B1AD4
+ECPinf = 00:01
+ECPeven = E7A11D5800F20547F8C3C0A0236195F6188C4AE6729F8C2EFE38C2A4D6AFF032:D62E401CD785531B3594BDA2C975BB26F68367221F3D49CB605BEFB579BE2F12
+ECPodd = E7A11D5800F20547F8C3C0A0236195F6188C4AE6729F8C2EFE38C2A4D6AFF032:1BCED76F33B58273DA7DB04604CC883442DE469A8C8B80A288A1039E5EB06CF1
+
+#test7
+ECP1 = 61BDCBF3183A2169CB8A6EC28D77F52D0E166AE458D4ACB836C97CC031D9386B:20CBE90B183327C46F45D9F78E9514A45DA6BBAD75590740CE72BBC29C46CCB8
+ECP2 = A1F62E3B96F3BC4971C90D55BE47D58E043DF9C4ABB277A237D995EAE0BF3B40:29C4BFD31C4C896F4A464A5D634179FFC8EA05CAD77551465B3BAA1B6AD0A63D
+ECPsum = 5A7B9D0610289012FE4458F1AFE359E789389B6A66D6D564EA2A7DB72BDD39EA:A3EBF46354FCE4D8CDBFE3F93E23D5B8E8CD1AEEECC1EC2E1A04547FE08B88BC
+ECPneg = 61BDCBF3183A2169CB8A6EC28D77F52D0E166AE458D4ACB836C97CC031D9386B:D1312E80F307ADCAA0CC93F13FAD2EB6DBBAF20F366FC32D1A8A37913C27CF4B
+ECPsub = 320F7F38236802605E00892B36CE0BC9EA54557B23A0AC0DFC794079CA8C6C52:67D207848F4F4C502C793F8A0FD87CB2D232B0917F776F2E96C8A409E3BB8F0B
+ECPdbl = 1524F1148ED5F37296B9A16E0232A7B8D2194263904FAE0A956721F41A79F1F5:DBBD0BBC572DA8F0CDB06DC0A498F5BE21C067EE4B1B0DE860830A9CB0A9EAD6
+BIGscalar1 = 0D66CB5C2E12A893099C70395875D5BB30FA06DEBAD4AC6C86C06FAE4087C7C1
+ECPmul = 46BFFBBAB63B09ADC3978188692597BE3B985F691DA398C85B0ACB7AE67CF3F6:4318BA82ECA14FAB68566483833D2E7E7B4B5208B759D590E5870BE32F7AA9AC
+ECPpinmul = 912D6ACC96C9B9C3A6C4B23D943D5B0B826D866FA774E1FFAE26FC781B18E413:B9A6CD885C00FEC7E5ECFB5B32486D9C2FE775C3BCE6194A71B27B8E3CA3D378
+BIGscalar2 = DB3C8D39F4734AF5E0389904E7E61F458269226FDDE1D3153A2520630D30829D
+ECPmul2 = 20BE4A417A1A35D1BE6F04A070D51D5CFCA951BD6C54D2C6F1DABE6A50CBF2AA:265DB933D2B25184B469150A11CFBFB773B350112FBCB61797CAB3478694CCD1
+ECPwrong = B5DF263066F808A135D74B73DE53F7AB08A16D522C107EFE3D48E1830FF7520B:050E0ADF58CACB8C4FD04B9FDB5958C995B54BBD92AB3186D6AD555DC7248A3C
+ECPinf = 00:01
+ECPeven = 61BDCBF3183A2169CB8A6EC28D77F52D0E166AE458D4ACB836C97CC031D9386B:20CBE90B183327C46F45D9F78E9514A45DA6BBAD75590740CE72BBC29C46CCB8
+ECPodd = 61BDCBF3183A2169CB8A6EC28D77F52D0E166AE458D4ACB836C97CC031D9386B:D1312E80F307ADCAA0CC93F13FAD2EB6DBBAF20F366FC32D1A8A37913C27CF4B
+
+#test8
+ECP1 = 8FBE17F1BF4B5F4ABC60369500253CE2755425AA3BF6A2551BE96FCF529B870F:889E3825C314148E005071C5DEAE0C1F9CFE4BD6D04FEF06C02744B78286D095
+ECP2 = 4F298F08FDB562DF5071CA293C095A6AAB08A1D82B18F06E0F5F513BD36FF4E1:C8E04FF5C0D46002E17F0581C411E943079DD017E86D0D4A80ECC9C42B7C8E66
+ECPsum = 675C8492C89BE0605D6913B1560EF76E02C87DF9D197DE193E78FDBC3BD08739:6D6392ECE13D0B34AA85874467716609A56DA0A07DED2713BCD27AA66A190965
+ECPneg = 8FBE17F1BF4B5F4ABC60369500253CE2755425AA3BF6A2551BE96FCF529B870F:695EDF664826C1010FC1FC22EF94373B9C6361E5DB78DB6728D5AE9C55E7CB6E
+ECPsub = 14BB61E0A9961B66084A9F3BAF7C6559A524C17418E500DDB2DC2D68ED1ABAE3:92F5FBFBB524EE591A01DCD02ED3E987C482C73B680F2BD3C81B6977A1F9E17E
+ECPdbl = B51107FABA0046125EA17C3C56268AD51A86DF6DEB59B747632E31D5CC12DA8E:A8ABCBE5689C9845F51005145D5639B0233BD5A6722FFCAAB2A6A93A898F412B
+BIGscalar1 = 4151345199037D468176DDF5E338C9C8CA270C5C13715B0BAF5641378C1B0D05
+ECPmul = 88340AE2B5B422686D022F066CDBBCFCA1848304DDEDE9737D0E0BD202494F96:BE87B2B58D99DA744531D38D47ADE537D3AB1970846BFCAC27B9912D55E53FE7
+ECPpinmul = 01CB34304FC4203B60B36FD1DDBCBDC66C1D19AF441F5AFD50CBFC6BFDBB610F:57E13DA4A58FC6E4A673EA5FE1C89D5A15156C86D52448088E6A4B8C86DE06CC
+BIGscalar2 = DA2421805C3A9CC66382235267887D9EC24EA9DAB1331FD22D53E4169B3B23E0
+ECPmul2 = ECC316E8988E50C0BB2086ED59D633180466962F9EBB23D9F90AC5BA97831CBF:02DE3C781D44B5B622CC125EFDBB31E1514DAE4E4046B0D2931FF7C0293D35B7
+ECPwrong = 7B91D4724E97CF08A95EAE7A5885E7922E2D4FA3469240141A63A84EA1A1A785:5FD2E85847601D9F19720C2D9DA8D9805933E947E1DAAEDC795BBA79D04DAC77
+ECPinf = 00:01
+ECPeven = 8FBE17F1BF4B5F4ABC60369500253CE2755425AA3BF6A2551BE96FCF529B870F:695EDF664826C1010FC1FC22EF94373B9C6361E5DB78DB6728D5AE9C55E7CB6E
+ECPodd = 8FBE17F1BF4B5F4ABC60369500253CE2755425AA3BF6A2551BE96FCF529B870F:889E3825C314148E005071C5DEAE0C1F9CFE4BD6D04FEF06C02744B78286D095
+
+#test9
+ECP1 = 99B3A827FEF4527DA56129C238DE5C90973597A7CBE37B2BBF3E12B013C85126:18C039DC588C9C72790A3BD554B75DAC65A01B1673B53F9463D83F57B985D5A8
+ECP2 = F1528836664A1BCF56C7D44EBAF11BC94B27EED5E6AD84D0ADDD7F71E7A92F9E:2307FD5F4BD36CA8C0036F9F04C1E2D6815FCD493CF818502356EB73F40D9F1F
+ECPsum = 5D38EAB2F26E906B44370E782EE1430A184A685CBF015F28E0AC03BF86AE1D2C:1AF030024BFEAC0F75AC7253038E1C1D6B6F3635E67B8BC85CB400F45D867866
+ECPneg = 99B3A827FEF4527DA56129C238DE5C90973597A7CBE37B2BBF3E12B013C85126:D93CDDAFB2AE391C97083213798AE5AED3C192A638138AD98524B3FC1EE8C65B
+ECPsub = 5192C7C0076FE073AFB68A92676EAB43522C04B9417B112DE2AEA1F0F65B90AA:BF764D92890DC9580BE7BFCFAAABA7443A12889D3D780FF8F582E5F3399ED5A5
+ECPdbl = 50E51539C8E881D6F6A8EC8F4D615EBF7AA89F17DAFA4E3571EB47A6DC93AA52:BD21E0F04DD64ADAB85570A688392798AA145C7B2A1E30C3B2CAD195F10E5BB7
+BIGscalar1 = 8B7318B7C955CEAB61D220B71228C58ED78A7F89F9ED59EE85EA333E53985178
+ECPmul = 8AFE1DC135BF4B87EDA23347D52CE362A2B28503FFBAF9625A106C375B426F1C:4CE9DE101B936DD71BA87E28F0545D320EFB4B1A644F4788164F2304717F980F
+ECPpinmul = 14E346E0D98FE1E1A9AC4509B2C06103880589234E9937FDE684BF6E5AB21B56:8ED88E672EA1D882294C6F9BAE0BFBDAF44769F16A4456D29B309EC673295DA3
+BIGscalar2 = 76E2DF577538A0C4891D4E0A86162C5CCF7DB507F9F1FFA32273A45EC17C7079
+ECPmul2 = 3E4452FB6180616968F7E7F45D874A0F333538B5E495FCBC83F31E4EF7AE9EDC:41DB1A1CBE62A970FAC54018DC6997B6CFEB4F4CB18A7A42CE784DD07F3EA4D7
+ECPwrong = ADE86A6357717C92D1CBE40BC2A9A959C5B0CE6757FB1004DB30F6011CAC3943:7368EAAEF2FE1A078216EF16F50DBDC5C1F2EC66899BF1DB487F044C57392B2B
+ECPinf = 00:01
+ECPeven = 99B3A827FEF4527DA56129C238DE5C90973597A7CBE37B2BBF3E12B013C85126:18C039DC588C9C72790A3BD554B75DAC65A01B1673B53F9463D83F57B985D5A8
+ECPodd = 99B3A827FEF4527DA56129C238DE5C90973597A7CBE37B2BBF3E12B013C85126:D93CDDAFB2AE391C97083213798AE5AED3C192A638138AD98524B3FC1EE8C65B
+
+#test10
+ECP1 = B7D01B151EC7F24C2853BC5CA003045C9DBF6D6B3F4EA98F30B4E545DBC12648:5D750E42C76C117BC58F3C2450A86B21E3E3073FF3C23143148B745139ABDFB7
+ECP2 = 5E41BF69E3069B64AC3DE3E063C9767ADDAF45338BEAE465AF60A45EC8D86D77:B323ECC5E6A9CC510CE7078E66B565BE892B14E9FC9C045F48519FD1F70E4880
+ECPsum = 85AAD5E10C0F65BB2E0A5AA4F628DD451A88DB33A565A78A3267CF8DD00DEEA1:6441C3C8EDEC898C15E4A0C5ED79F61E48D67E21EDD535B82A59F6BB09F37727
+ECPneg = B7D01B151EC7F24C2853BC5CA003045C9DBF6D6B3F4EA98F30B4E545DBC12648:9488094943CEC4134A8331C47D99D839557EA67CB806992AD4717F029EC2BC4C
+ECPsub = 57DCA43FCF531B4F2C70D309CDDF20D9363823CF3AACA81B5C5226E45B1319ED:1777F584EC56A3D7FA0C3B8D7AE37957C9E2CD2E425DA950B7F12FB18D1ED987
+ECPdbl = 0E7790365DC2DC06AFB80D3887A4D714D75CF1EC0E93DDDBC6C94FE7EE99CF48:09D00159C03502FD978D9295C387BB673E9B9B6508C5485701C240C769ECD298
+BIGscalar1 = 246D6C34A107BC78DC05D697AEDE5CCD55E7245DB0870F556C64C971951893D0
+ECPmul = CD35B2A38C966F18540A56F952A2C76477B4F1317A2CB44BBD07788E279DAD7D:7EEEE43B60428504869E7113FE10E05DCEB475E0A33BD8E07BB0033F45F5F0C2
+ECPpinmul = 95718425235ECAEABE302E8C3A640F5E352C7210F622EC0652801E45A8297223:38203B4CA6F1BFA2F826E99EA03AD4F1E9B67D17EC9419DB2EFA2F47C379F057
+BIGscalar2 = B77807E7EB2FC27EFE213BACA3124DCBE8D407FF30C2151112B1F2A5F0746360
+ECPmul2 = EDB4BF0707626117533952A6C53C8793313F43D57B5131B492FCD94ACEB03766:328DD32D07FD27ADE07A1D2D6443C4505E6BEF084140333AD9B83F40760B8603
+ECPwrong = 70A57D06BD671DFC48301F7A041B216F84BDBD0F52E1A15ABC599618F8331EDF:5EFCEF994CAC9F307110EAB4C66044545110BA97D8269EB73C0DA8E925E33745
+ECPinf = 00:01
+ECPeven = B7D01B151EC7F24C2853BC5CA003045C9DBF6D6B3F4EA98F30B4E545DBC12648:9488094943CEC4134A8331C47D99D839557EA67CB806992AD4717F029EC2BC4C
+ECPodd = B7D01B151EC7F24C2853BC5CA003045C9DBF6D6B3F4EA98F30B4E545DBC12648:5D750E42C76C117BC58F3C2450A86B21E3E3073FF3C23143148B745139ABDFB7