summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicola Tuveri <nic.tuv@gmail.com>2017-04-11 19:22:13 +0300
committerRichard Levitte <levitte@openssl.org>2017-04-12 15:04:17 +0200
commitd663c2db5619088800695d5cb074c3ec5d158aec (patch)
tree2390e61a197e58e292bff6f601a85f6502183f84
parentc491a39986610e499b44e6fee404475946a4b895 (diff)
ecdhtest.c: move NAMED CURVES TESTS to evptests.txt
Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/3187)
-rw-r--r--test/ecdhtest.c13
-rw-r--r--test/evptests.txt3034
2 files changed, 3035 insertions, 12 deletions
diff --git a/test/ecdhtest.c b/test/ecdhtest.c
index b327847e89..0d94083e78 100644
--- a/test/ecdhtest.c
+++ b/test/ecdhtest.c
@@ -570,18 +570,7 @@ int main(int argc, char *argv[])
if (!EC_get_builtin_curves(curves, crv_len)) goto err;
- /* NAMED CURVES TESTS */
- for (n = 0; n < crv_len; n++) {
- nid = curves[n].nid;
- /*
- * Skipped for X25519 because affine coordinate operations are not
- * supported for this curve.
- * Higher level ECDH tests are performed in evptests.txt instead.
- */
- if (nid == NID_X25519)
- continue;
- if (!test_ecdh_curve(nid, ctx, out)) goto err;
- }
+ /* NAMED CURVES TESTS: moved to evptests.txt */
/* KATs */
for (n = 0; n < (sizeof(ecdh_kats)/sizeof(ecdh_kat_t)); n++) {
diff --git a/test/evptests.txt b/test/evptests.txt
index a305b02e98..88c2ed6717 100644
--- a/test/evptests.txt
+++ b/test/evptests.txt
@@ -5251,3 +5251,3037 @@ Ctrl = rsa_padding_mode:oaep
Ctrl = rsa_mgf1_md:sha1
Input=2d207a73432a8fb4c03051b3f73b28a61764098dfa34c47a20995f8115aa6816679b557e82dbee584908c6e69782d7deb34dbd65af063d57fca76a5fd069492fd6068d9984d209350565a62e5c77f23038c12cb10c6634709b547c46f6b4a709bd85ca122d74465ef97762c29763e06dbc7a9e738c78bfca0102dc5e79d65b973f28240caab2e161a78b57d262457ed8195d53e3c7ae9da021883c6db7c24afdd2322eac972ad3c354c5fcef1e146c3a0290fb67adf007066e00428d2cec18ce58f9328698defef4b2eb5ec76918fde1c198cbb38b7afc67626a9aefec4322bfd90d2563481c9a221f78c8272c82d1b62ab914e1c69f6af6ef30ca5260db4a46
Output=eaf1a73a1b0c4609537de69cd9228bbcfb9a8ca8c6c3efaf056fe4a7f4634ed00b7c39ec6922d7b8ea2c04ebac
+
+## ECDH Tests: test with randomly generated keys for all the listed curves
+
+
+# TEST CURVE secp112r1
+
+PrivateKey=ALICE_secp112r1
+-----BEGIN EC PRIVATE KEY-----
+MD4CAQEEDqyoqnf0BYsKW6zaFrmuoAcGBSuBBAAGoSADHgAEng1OA5HXFACvczp4
+zjpapdbbMDoWexQwoUXBzA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp112r1_PUB
+-----BEGIN PUBLIC KEY-----
+MDIwEAYHKoZIzj0CAQYFK4EEAAYDHgAEng1OA5HXFACvczp4zjpapdbbMDoWexQw
+oUXBzA==
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp112r1
+-----BEGIN EC PRIVATE KEY-----
+MD4CAQEEDmkhtf6ESrj2YU+NSXj/oAcGBSuBBAAGoSADHgAEGw81kebWlx3DXTiJ
+vAjJwJ76vm+h5F9BRlFndw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp112r1_PUB
+-----BEGIN PUBLIC KEY-----
+MDIwEAYHKoZIzj0CAQYFK4EEAAYDHgAEGw81kebWlx3DXTiJvAjJwJ76vm+h5F9B
+RlFndw==
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp112r1
+PeerKey=BOB_secp112r1_PUB
+SharedSecret=a6cefb5aa7a352afe818749eb401
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp112r1
+PeerKey=ALICE_secp112r1_PUB
+SharedSecret=a6cefb5aa7a352afe818749eb401
+
+# TEST CURVE secp112r2
+
+PrivateKey=ALICE_secp112r2
+-----BEGIN EC PRIVATE KEY-----
+MD4CAQEEDiDPNuUp8TpnChRbQVCZoAcGBSuBBAAHoSADHgAEkngvtWjnQ1nlUZni
+c2TEU1yMlDAMhBvX/0iQsQ==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp112r2_PUB
+-----BEGIN PUBLIC KEY-----
+MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAEkngvtWjnQ1nlUZnic2TEU1yMlDAMhBvX
+/0iQsQ==
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp112r2
+-----BEGIN EC PRIVATE KEY-----
+MD4CAQEEDgP2gYaP47y+NnPc5k1qoAcGBSuBBAAHoSADHgAE1k6/mBTO9VuAAelO
+C7eFSFNC0HwtqZMQh9pFYQ==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp112r2_PUB
+-----BEGIN PUBLIC KEY-----
+MDIwEAYHKoZIzj0CAQYFK4EEAAcDHgAE1k6/mBTO9VuAAelOC7eFSFNC0HwtqZMQ
+h9pFYQ==
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp112r2
+PeerKey=BOB_secp112r2_PUB
+SharedSecret=6bed2c55e233e9214d5898c4c12a
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp112r2
+PeerKey=ALICE_secp112r2_PUB
+SharedSecret=6bed2c55e233e9214d5898c4c12a
+
+# TEST CURVE secp128r1
+
+PrivateKey=ALICE_secp128r1
+-----BEGIN EC PRIVATE KEY-----
+MEQCAQEEEI/Vz6XF9FP4xlZny4YJhiWgBwYFK4EEAByhJAMiAAQfafSJynzuKe/u
+RRisQWOlm4cngOoCuEdL5l+nZdc7UA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp128r1_PUB
+-----BEGIN PUBLIC KEY-----
+MDYwEAYHKoZIzj0CAQYFK4EEABwDIgAEH2n0icp87inv7kUYrEFjpZuHJ4DqArhH
+S+Zfp2XXO1A=
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp128r1
+-----BEGIN EC PRIVATE KEY-----
+MEQCAQEEEIZsR3ceHCvvpdtB6SEisNOgBwYFK4EEAByhJAMiAAQ0qNLQc3H+AQph
+A01pv2/zOVb8PjNKO/c3LcSnQZViaw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp128r1_PUB
+-----BEGIN PUBLIC KEY-----
+MDYwEAYHKoZIzj0CAQYFK4EEABwDIgAENKjS0HNx/gEKYQNNab9v8zlW/D4zSjv3
+Ny3Ep0GVYms=
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp128r1
+PeerKey=BOB_secp128r1_PUB
+SharedSecret=91ded46ac404afdbd708fdcc1cac6842
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp128r1
+PeerKey=ALICE_secp128r1_PUB
+SharedSecret=91ded46ac404afdbd708fdcc1cac6842
+
+# TEST CURVE secp128r2
+
+PrivateKey=ALICE_secp128r2
+-----BEGIN EC PRIVATE KEY-----
+MEQCAQEEECBEpKM+xnvosMYgDaK3lIKgBwYFK4EEAB2hJAMiAAQFV2NxSlH5votE
++bpHx8AP/qQHFXQqXf3f1afT6dSl/w==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp128r2_PUB
+-----BEGIN PUBLIC KEY-----
+MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEBVdjcUpR+b6LRPm6R8fAD/6kBxV0Kl39
+39Wn0+nUpf8=
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp128r2
+-----BEGIN EC PRIVATE KEY-----
+MEQCAQEEEAKnTSPDkPuhu8OYmnvAO4CgBwYFK4EEAB2hJAMiAAQE7cFtWtzlK+G8
+35+ZZKG7a1YgVBqnnKzlEcwIsuXT3w==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp128r2_PUB
+-----BEGIN PUBLIC KEY-----
+MDYwEAYHKoZIzj0CAQYFK4EEAB0DIgAEBO3BbVrc5SvhvN+fmWShu2tWIFQap5ys
+5RHMCLLl098=
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp128r2
+PeerKey=BOB_secp128r2_PUB
+SharedSecret=dc32faa978008a694672076b756a1e4b
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp128r2
+PeerKey=ALICE_secp128r2_PUB
+SharedSecret=dc32faa978008a694672076b756a1e4b
+
+# TEST CURVE secp160k1
+
+PrivateKey=ALICE_secp160k1
+-----BEGIN EC PRIVATE KEY-----
+MFECAQEEFQC503dg5c3S67QIvZMZl09h41T/vaAHBgUrgQQACaEsAyoABHcO7R0r
+by1LJbFhLP8SzZaqvgL5s18nW6IrgncEVLlR1zjyezHF+OM=
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp160k1_PUB
+-----BEGIN PUBLIC KEY-----
+MD4wEAYHKoZIzj0CAQYFK4EEAAkDKgAEdw7tHStvLUslsWEs/xLNlqq+AvmzXydb
+oiuCdwRUuVHXOPJ7McX44w==
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp160k1
+-----BEGIN EC PRIVATE KEY-----
+MFECAQEEFQDl82IIVUY8zVoe7BdS+6HGhjbJT6AHBgUrgQQACaEsAyoABAeUzqi2
+Zqm3T/Sxz7ltw+hhPpx/IBG/hVQ46jojZ4EZcsibzXbWuJw=
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp160k1_PUB
+-----BEGIN PUBLIC KEY-----
+MD4wEAYHKoZIzj0CAQYFK4EEAAkDKgAEB5TOqLZmqbdP9LHPuW3D6GE+nH8gEb+F
+VDjqOiNngRlyyJvNdta4nA==
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp160k1
+PeerKey=BOB_secp160k1_PUB
+SharedSecret=5457d367346cc3e82031784f95ebcd856de0c735
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp160k1
+PeerKey=ALICE_secp160k1_PUB
+SharedSecret=5457d367346cc3e82031784f95ebcd856de0c735
+
+# TEST CURVE secp160r1
+
+PrivateKey=ALICE_secp160r1
+-----BEGIN EC PRIVATE KEY-----
+MFECAQEEFQDQoO1qIVRZ3w0bSU71Mu7OMtZcl6AHBgUrgQQACKEsAyoABIdA3UMY
+Fe13IXf4GN8h9taDjTd1SpdshfNmhy0PI49NBoZVuWZLBcI=
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp160r1_PUB
+-----BEGIN PUBLIC KEY-----
+MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAEh0DdQxgV7Xchd/gY3yH21oONN3VKl2yF
+82aHLQ8jj00GhlW5ZksFwg==
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp160r1
+-----BEGIN EC PRIVATE KEY-----
+MFECAQEEFQCwEjC/HpkAGKeGyL5sZqIK962K5aAHBgUrgQQACKEsAyoABAnb5GGk
+Z52RRhdSI9n+mUdcUHLpHdfMxQYgqJcUZIGnAXyEZE2pQPI=
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp160r1_PUB
+-----BEGIN PUBLIC KEY-----
+MD4wEAYHKoZIzj0CAQYFK4EEAAgDKgAECdvkYaRnnZFGF1Ij2f6ZR1xQcukd18zF
+BiColxRkgacBfIRkTalA8g==
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp160r1
+PeerKey=BOB_secp160r1_PUB
+SharedSecret=87856536b6a295ea94d3e483d69c6212d5c7afcf
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp160r1
+PeerKey=ALICE_secp160r1_PUB
+SharedSecret=87856536b6a295ea94d3e483d69c6212d5c7afcf
+
+# TEST CURVE secp160r2
+
+PrivateKey=ALICE_secp160r2
+-----BEGIN EC PRIVATE KEY-----
+MFECAQEEFQCGYs4AkY25KhlQI3h/Q6ctnqtFJKAHBgUrgQQAHqEsAyoABA9I2+El
+CiEwR+KNer4mWrtr2XOixB8++4jI6DqyHLNRVLjdH7suCvk=
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp160r2_PUB
+-----BEGIN PUBLIC KEY-----
+MD4wEAYHKoZIzj0CAQYFK4EEAB4DKgAED0jb4SUKITBH4o16viZau2vZc6LEHz77
+iMjoOrIcs1FUuN0fuy4K+Q==
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp160r2
+-----BEGIN EC PRIVATE KEY-----
+MFECAQEEFQDXSaPNHYPLQIuab8xMAdNvkIF6c6AHBgUrgQQAHqEsAyoABGrNgBxK
+KPMCja/OYy4ry1ryyX9uC64KlHAUP3cAI/rhPOAjet4WGxc=
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp160r2_PUB
+-----BEGIN PUBLIC KEY-----
+MD4wEAYHKoZIzj0CAQYFK4EEAB4DKgAEas2AHEoo8wKNr85jLivLWvLJf24LrgqU
+cBQ/dwAj+uE84CN63hYbFw==
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp160r2
+PeerKey=BOB_secp160r2_PUB
+SharedSecret=5481e282c47cbd37c84873847c4fc2f31fc15a1a
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp160r2
+PeerKey=ALICE_secp160r2_PUB
+SharedSecret=5481e282c47cbd37c84873847c4fc2f31fc15a1a
+
+# TEST CURVE secp192k1
+
+PrivateKey=ALICE_secp192k1
+-----BEGIN EC PRIVATE KEY-----
+MFwCAQEEGLMXcp4cyxpX8o5H+i0KZ0tBPaoY2rceFaAHBgUrgQQAH6E0AzIABM/4
+v1IaXcrrCZ6+QvAmeQw0enQjlF9e6VJ8e4dk+ngIauGLp4o1AuSlnY5Bo8gTEA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp192k1_PUB
+-----BEGIN PUBLIC KEY-----
+MEYwEAYHKoZIzj0CAQYFK4EEAB8DMgAEz/i/UhpdyusJnr5C8CZ5DDR6dCOUX17p
+Unx7h2T6eAhq4YunijUC5KWdjkGjyBMQ
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp192k1
+-----BEGIN EC PRIVATE KEY-----
+MFwCAQEEGHwFc9UZApgLDS/sNjfBlVpzKHJSMhtTKaAHBgUrgQQAH6E0AzIABOAj
+uHDYtKPq43fIvme8c46QyI+1qUqv4EawVpzf1Fianriav7DrpsMhY3dWWU7otg==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp192k1_PUB
+-----BEGIN PUBLIC KEY-----
+MEYwEAYHKoZIzj0CAQYFK4EEAB8DMgAE4CO4cNi0o+rjd8i+Z7xzjpDIj7WpSq/g
+RrBWnN/UWJqeuJq/sOumwyFjd1ZZTui2
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp192k1
+PeerKey=BOB_secp192k1_PUB
+SharedSecret=6a4daca0412284172e8fcaafa0d9df76257d899752bf0f23
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp192k1
+PeerKey=ALICE_secp192k1_PUB
+SharedSecret=6a4daca0412284172e8fcaafa0d9df76257d899752bf0f23
+
+# TEST CURVE secp224k1
+
+PrivateKey=ALICE_secp224k1
+-----BEGIN EC PRIVATE KEY-----
+MGkCAQEEHQCFcoYkWo4jg/U8sVHczoyR6lP/YO13bsjUDDPHoAcGBSuBBAAgoTwD
+OgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27+64PjwPgVF/ugV2LE31VYivGvQ9E
+HJ4RiaUfDgw4RAo=
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp224k1_PUB
+-----BEGIN PUBLIC KEY-----
+ME4wEAYHKoZIzj0CAQYFK4EEACADOgAE9U3/VvpUdurtTqlZo6tR6onm9KBYvj27
++64PjwPgVF/ugV2LE31VYivGvQ9EHJ4RiaUfDgw4RAo=
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp224k1
+-----BEGIN EC PRIVATE KEY-----
+MGkCAQEEHQA6MRdijPxhxaiRJ/hTmBcduMN8gs9096OUTRP8oAcGBSuBBAAgoTwD
+OgAEZcBD4Ce1fs6fhwrA/5/grNkZolnCMGreMKPKayv0DdzxUKhFdcGD5U+gqDt8
+OQwiAjyo+asL3lA=
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp224k1_PUB
+-----BEGIN PUBLIC KEY-----
+ME4wEAYHKoZIzj0CAQYFK4EEACADOgAEZcBD4Ce1fs6fhwrA/5/grNkZolnCMGre
+MKPKayv0DdzxUKhFdcGD5U+gqDt8OQwiAjyo+asL3lA=
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp224k1
+PeerKey=BOB_secp224k1_PUB
+SharedSecret=80b65e65fe29c779213dd31189d371ff57b0b2bf08c6458ed142399a
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp224k1
+PeerKey=ALICE_secp224k1_PUB
+SharedSecret=80b65e65fe29c779213dd31189d371ff57b0b2bf08c6458ed142399a
+
+# TEST CURVE secp224r1
+
+PrivateKey=ALICE_secp224r1
+-----BEGIN EC PRIVATE KEY-----
+MGgCAQEEHEsqRcUldioZSVOyaCOV6yKTCp6Ot6SuRJNt6HKgBwYFK4EEACGhPAM6
+AARRwSHQaDL+sP42P0lCjPMj6rM+2JTtvYPYe10JriF9tU9eeBxEfYHbE3xb51we
+gjGvE7ZQVfLjGg==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp224r1_PUB
+-----BEGIN PUBLIC KEY-----
+ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEUcEh0Ggy/rD+Nj9JQozzI+qzPtiU7b2D
+2HtdCa4hfbVPXngcRH2B2xN8W+dcHoIxrxO2UFXy4xo=
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp224r1
+-----BEGIN EC PRIVATE KEY-----
+MGgCAQEEHM4cYZRHd9liDcZJpQ3qnGg1C0CU7MzdRyUSEzOgBwYFK4EEACGhPAM6
+AAR3AWSUr9igNFTpsztfa6U0vCrH1NQRMwVQzpVX0MHhhy8DO/qlCBXBgRTshqGZ
+IqlfX1yFs+3YjQ==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp224r1_PUB
+-----BEGIN PUBLIC KEY-----
+ME4wEAYHKoZIzj0CAQYFK4EEACEDOgAEdwFklK/YoDRU6bM7X2ulNLwqx9TUETMF
+UM6VV9DB4YcvAzv6pQgVwYEU7IahmSKpX19chbPt2I0=
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp224r1
+PeerKey=BOB_secp224r1_PUB
+SharedSecret=34ea06d16d82f0d1725de47f3639ac0c23db7d7ed68f01488539a2a5
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp224r1
+PeerKey=ALICE_secp224r1_PUB
+SharedSecret=34ea06d16d82f0d1725de47f3639ac0c23db7d7ed68f01488539a2a5
+
+# TEST CURVE secp256k1
+
+PrivateKey=ALICE_secp256k1
+-----BEGIN EC PRIVATE KEY-----
+MHQCAQEEIBwkc8tCHBMegngOqIDTSkjn7k5R8uHxPyzcZADVEuJPoAcGBSuBBAAK
+oUQDQgAEgwZsCpJV+DnG2UiSV/ZsZtVq+0z0y6W8qcSnCkZtFyjcVZa2VPFkApeu
+hrV9gw8l/tPl4gt4W2kVnGLYOz+ljg==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp256k1_PUB
+-----BEGIN PUBLIC KEY-----
+MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEgwZsCpJV+DnG2UiSV/ZsZtVq+0z0y6W8
+qcSnCkZtFyjcVZa2VPFkApeuhrV9gw8l/tPl4gt4W2kVnGLYOz+ljg==
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp256k1
+-----BEGIN EC PRIVATE KEY-----
+MHQCAQEEIAoQpBb1rTnK1y5l1RqpEdIHZ7csrYxsxCrnubfiC9pYoAcGBSuBBAAK
+oUQDQgAEBUKCHJHsvlcod0MCVlFHylzW241nveMmRAFhryNgX6rVqooGReVUm+Wi
+F7Uz0ZsIjdHKd9HHe+2BOWfnuWyR1A==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp256k1_PUB
+-----BEGIN PUBLIC KEY-----
+MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEBUKCHJHsvlcod0MCVlFHylzW241nveMm
+RAFhryNgX6rVqooGReVUm+WiF7Uz0ZsIjdHKd9HHe+2BOWfnuWyR1A==
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp256k1
+PeerKey=BOB_secp256k1_PUB
+SharedSecret=af43b52790082fd87afb1d14b883c12d12bb9e554080d1f8e527920676e31f3e
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp256k1
+PeerKey=ALICE_secp256k1_PUB
+SharedSecret=af43b52790082fd87afb1d14b883c12d12bb9e554080d1f8e527920676e31f3e
+
+# TEST CURVE secp384r1
+
+PrivateKey=ALICE_secp384r1
+-----BEGIN EC PRIVATE KEY-----
+MIGkAgEBBDCxE7Q4m1dsK7M3OtxocgY/ejX9JOKKdAtSnRiU4bnK3eFmALkMN7XI
+veQnWLB1PEKgBwYFK4EEACKhZANiAAQaUsvUFr/uISpAmYqYZIme4VassCtb0tNG
+U97s3qt4ozcogZ4z+fIzXZ4YXqfGoEa57+uQDgqr+jNOTji7Gxopt6AqZ9EvwuVa
+CuunUi0pcx6cc8IuUfrwMwSFovV/7sM=
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp384r1_PUB
+-----BEGIN PUBLIC KEY-----
+MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEGlLL1Ba/7iEqQJmKmGSJnuFWrLArW9LT
+RlPe7N6reKM3KIGeM/nyM12eGF6nxqBGue/rkA4Kq/ozTk44uxsaKbegKmfRL8Ll
+Wgrrp1ItKXMenHPCLlH68DMEhaL1f+7D
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp384r1
+-----BEGIN EC PRIVATE KEY-----
+MIGkAgEBBDBRiGXRsb5sUq0b3/dgZ+pA9kbrSivBMCUCXVwxno1d/30hI/Yy0Z5P
+WwbBgwTFprWgBwYFK4EEACKhZANiAASp1FeUOBJFmzQCNbGiOz8He0kF+KIf24UG
+YVO5MC7u5rV9hpoYsbcgmwxALskPN18os2ygK1Pnf/h+WALIsG2RknSTbiyvBYko
+IhJV9cflvEDpMeaWSLF7qJ5YjEIf9PM=
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp384r1_PUB
+-----BEGIN PUBLIC KEY-----
+MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEqdRXlDgSRZs0AjWxojs/B3tJBfiiH9uF
+BmFTuTAu7ua1fYaaGLG3IJsMQC7JDzdfKLNsoCtT53/4flgCyLBtkZJ0k24srwWJ
+KCISVfXH5bxA6THmlkixe6ieWIxCH/Tz
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp384r1
+PeerKey=BOB_secp384r1_PUB
+SharedSecret=2006ed49acbb991b8fbf8a15c3f263542496eaefe1e2952591b72fb929463eac7a403a5419cebbfb73734918eaed59fd
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp384r1
+PeerKey=ALICE_secp384r1_PUB
+SharedSecret=2006ed49acbb991b8fbf8a15c3f263542496eaefe1e2952591b72fb929463eac7a403a5419cebbfb73734918eaed59fd
+
+# TEST CURVE secp521r1
+
+PrivateKey=ALICE_secp521r1
+-----BEGIN EC PRIVATE KEY-----
+MIHcAgEBBEIAFBIz3FLAuX8VCWzMwu1f/tm8pf1QqnsdLqaIWCQAJa2W5ldpJTYf
+kj1gGxM44AD3qHnkXISvNLwwuxI1hr2+pOGgBwYFK4EEACOhgYkDgYYABACWlOOF
+Yk/p3AS2LxEQWBuMm6uIjo3XArjh1QrsLcUc5hhi82CIz6kKwKjCnYRDHq4iv1x6
+3rVEzGGhQOM1g+cRVwHSpfbBpaxK7bMLkVFOOavvOdcdyRHaHsvxw2pREmdS/Gwt
+fgT8odQrG06KMIwVeL+H08fGJSbPX0Zock0DOPCpaw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_secp521r1_PUB
+-----BEGIN PUBLIC KEY-----
+MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAlpTjhWJP6dwEti8REFgbjJuriI6N
+1wK44dUK7C3FHOYYYvNgiM+pCsCowp2EQx6uIr9cet61RMxhoUDjNYPnEVcB0qX2
+waWsSu2zC5FRTjmr7znXHckR2h7L8cNqURJnUvxsLX4E/KHUKxtOijCMFXi/h9PH
+xiUmz19GaHJNAzjwqWs=
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_secp521r1
+-----BEGIN EC PRIVATE KEY-----
+MIHcAgEBBEIA9C/sMWveRlHPr9P5cc3U+1L2/zB0VtHewKSQRWZ67SmS4+m7uXTq
+UVSLRHiQEgQid0cg77gSxXPlmV+zy0f3zd+gBwYFK4EEACOhgYkDgYYABAE18N3S
+wDGtea3IOqUdh3j0JtnMeP41i/agEBlxK8/iEBXcQ61mkIrQIKcabRhoylEugXHi
+yNnqNQOD4DUa0bTKzAHtJ4UqqbEVno6byRmcUQwbmvG89eS8GLEmk5X/O2atHU4y
+IGTuTRQWn/BTJUCS+OgJz4FZdadscc5Z640EZqSDiw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_secp521r1_PUB
+-----BEGIN PUBLIC KEY-----
+MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBNfDd0sAxrXmtyDqlHYd49CbZzHj+
+NYv2oBAZcSvP4hAV3EOtZpCK0CCnGm0YaMpRLoFx4sjZ6jUDg+A1GtG0yswB7SeF
+KqmxFZ6Om8kZnFEMG5rxvPXkvBixJpOV/ztmrR1OMiBk7k0UFp/wUyVAkvjoCc+B
+WXWnbHHOWeuNBGakg4s=
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_secp521r1
+PeerKey=BOB_secp521r1_PUB
+SharedSecret=018c8f33e544a0fa8854dcd96bdba75b7687d1c42b2ff1bf0a06d49c424fee96d8a7f3af3119dcbfabc1c147477c50f7c72971956f9bb17ddec6d02b2187f06cf4be
+
+# ECDH Bob with Alice peer
+Derive=BOB_secp521r1
+PeerKey=ALICE_secp521r1_PUB
+SharedSecret=018c8f33e544a0fa8854dcd96bdba75b7687d1c42b2ff1bf0a06d49c424fee96d8a7f3af3119dcbfabc1c147477c50f7c72971956f9bb17ddec6d02b2187f06cf4be
+
+# TEST CURVE prime192v1
+
+PrivateKey=ALICE_prime192v1
+-----BEGIN EC PRIVATE KEY-----
+MF8CAQEEGPF9e9IU2oPZTMVU3UttCs+XOint3FCr96AKBggqhkjOPQMBAaE0AzIA
+BOJuka5jMKORPW1YtgSiCkrPvhaqG9tC1k+QJhAKKfVyZm41b4FnSPJUSkaWmdk8
+yA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_prime192v1_PUB
+-----BEGIN PUBLIC KEY-----
+MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAE4m6RrmMwo5E9bVi2BKIKSs++Fqob
+20LWT5AmEAop9XJmbjVvgWdI8lRKRpaZ2TzI
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_prime192v1
+-----BEGIN EC PRIVATE KEY-----
+MF8CAQEEGF7Bqpc1mVjKqea4QQRj+hRd7f+OnOGbIaAKBggqhkjOPQMBAaE0AzIA
+BKSnA0kQ//UW65YoIMNSbbqLKquz7MrBrJmdoXvtgLqoK2CJrvI1xKX22VYeHeBC
+DA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_prime192v1_PUB
+-----BEGIN PUBLIC KEY-----
+MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEpKcDSRD/9Rbrliggw1Jtuosqq7Ps
+ysGsmZ2he+2AuqgrYImu8jXEpfbZVh4d4EIM
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_prime192v1
+PeerKey=BOB_prime192v1_PUB
+SharedSecret=be2a779b587f8f5d7c9d8f006e0a6d0e996c9c63c255f861
+
+# ECDH Bob with Alice peer
+Derive=BOB_prime192v1
+PeerKey=ALICE_prime192v1_PUB
+SharedSecret=be2a779b587f8f5d7c9d8f006e0a6d0e996c9c63c255f861
+
+# TEST CURVE prime192v2
+
+PrivateKey=ALICE_prime192v2
+-----BEGIN EC PRIVATE KEY-----
+MF8CAQEEGC0i4qqlFzusRi4bHVp0PFy+yjQ0BnD59aAKBggqhkjOPQMBAqE0AzIA
+BMxIfAk+rvrVVrClFsosHe64NKeDhZ4U+OG+5svqDxXxSoVopEQPk9QhDSVhK1UJ
+qg==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_prime192v2_PUB
+-----BEGIN PUBLIC KEY-----
+MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQIDMgAEzEh8CT6u+tVWsKUWyiwd7rg0p4OF
+nhT44b7my+oPFfFKhWikRA+T1CENJWErVQmq
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_prime192v2
+-----BEGIN EC PRIVATE KEY-----
+MF8CAQEEGCBOOpYLX+Ieu8pH3+7WDGkva1YmSQAxi6AKBggqhkjOPQMBAqE0AzIA
+BJricb7As9MfF+SqJMgjk8EsApeZdR/l0y2mYClyOuNeOfAkgkRCvzQwr36DWtqo
+3w==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_prime192v2_PUB
+-----BEGIN PUBLIC KEY-----
+MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQIDMgAEmuJxvsCz0x8X5KokyCOTwSwCl5l1
+H+XTLaZgKXI641458CSCREK/NDCvfoNa2qjf
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_prime192v2
+PeerKey=BOB_prime192v2_PUB
+SharedSecret=9b37033a48af7fe1825c062625f8b57d4b3ac48c12bec69c
+
+# ECDH Bob with Alice peer
+Derive=BOB_prime192v2
+PeerKey=ALICE_prime192v2_PUB
+SharedSecret=9b37033a48af7fe1825c062625f8b57d4b3ac48c12bec69c
+
+# TEST CURVE prime192v3
+
+PrivateKey=ALICE_prime192v3
+-----BEGIN EC PRIVATE KEY-----
+MF8CAQEEGDSIN1yCKx7X+/aTqOxSSArBc+rH+4klN6AKBggqhkjOPQMBA6E0AzIA
+BDr+LSlI0eTzbhc7oy/SKtB9K/bLMZDL4PBaj+SVlyiQ8NxcoR1TxmacAAEfuPpR
+Xw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_prime192v3_PUB
+-----BEGIN PUBLIC KEY-----
+MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQMDMgAEOv4tKUjR5PNuFzujL9Iq0H0r9ssx
+kMvg8FqP5JWXKJDw3FyhHVPGZpwAAR+4+lFf
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_prime192v3
+-----BEGIN EC PRIVATE KEY-----
+MF8CAQEEGJ5bWG6rBVTd6/uqClMsWNgQxE8404BxoqAKBggqhkjOPQMBA6E0AzIA
+BJdpOMEhBfrzoFkkCJ1f6EW68PLFs3W8FC+njQ5WXQsIbiGhn7kxwu08BMv6iwq9
+fw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_prime192v3_PUB
+-----BEGIN PUBLIC KEY-----
+MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQMDMgAEl2k4wSEF+vOgWSQInV/oRbrw8sWz
+dbwUL6eNDlZdCwhuIaGfuTHC7TwEy/qLCr1/
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_prime192v3
+PeerKey=BOB_prime192v3_PUB
+SharedSecret=7133f1d99b0e03ed9c4d78d3be40598cf419cd588283ac29
+
+# ECDH Bob with Alice peer
+Derive=BOB_prime192v3
+PeerKey=ALICE_prime192v3_PUB
+SharedSecret=7133f1d99b0e03ed9c4d78d3be40598cf419cd588283ac29
+
+# TEST CURVE prime239v1
+
+PrivateKey=ALICE_prime239v1
+-----BEGIN EC PRIVATE KEY-----
+MHECAQEEHkZomV2qq97tdYYhitXB++VP6ynNfvGDKsXF4QAkZKAKBggqhkjOPQMB
+BKFAAz4ABHyCaVYIAl1ETh4F+IeYeuv9D4K/2jLTKhMR0D+88VmM393GAD+Ff7fT
+gk+fNlozC5wpnZRZ2FDw+dHclA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_prime239v1_PUB
+-----BEGIN PUBLIC KEY-----
+MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQQDPgAEfIJpVggCXUROHgX4h5h66/0Pgr/a
+MtMqExHQP7zxWYzf3cYAP4V/t9OCT582WjMLnCmdlFnYUPD50dyU
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_prime239v1
+-----BEGIN EC PRIVATE KEY-----
+MHECAQEEHgGxkUaAYKh1VARaLeZvWLZvEVPiEpAN91YEKxxjP6AKBggqhkjOPQMB
+BKFAAz4ABHUYD7C/zIt7nCXGIm7xSUMQw8i6oFB94jJNuukQBxaqIqIhk+9kzonQ
+YYvla1J+jTiMp2vH6MMNjOOb0Q==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_prime239v1_PUB
+-----BEGIN PUBLIC KEY-----
+MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQQDPgAEdRgPsL/Mi3ucJcYibvFJQxDDyLqg
+UH3iMk266RAHFqoioiGT72TOidBhi+VrUn6NOIyna8foww2M45vR
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_prime239v1
+PeerKey=BOB_prime239v1_PUB
+SharedSecret=2ef92070f7a5fa14c8a67a8aa3080b4c4a597eafaa81d3f698599ac0be1e
+
+# ECDH Bob with Alice peer
+Derive=BOB_prime239v1
+PeerKey=ALICE_prime239v1_PUB
+SharedSecret=2ef92070f7a5fa14c8a67a8aa3080b4c4a597eafaa81d3f698599ac0be1e
+
+# TEST CURVE prime239v2
+
+PrivateKey=ALICE_prime239v2
+-----BEGIN EC PRIVATE KEY-----
+MHECAQEEHnpqukuabhxfeGVv1ugTEYpvhxRTNM8VWUKVhvm39qAKBggqhkjOPQMB
+BaFAAz4ABC7pFKHQkLJsMxlUd5SxBikOqrhnepA1zQ443DKw2mwbVig7rlK4IwRr
+COzUWwkNGuTVk6PhJ1ntC122DQ==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_prime239v2_PUB
+-----BEGIN PUBLIC KEY-----
+MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQUDPgAELukUodCQsmwzGVR3lLEGKQ6quGd6
+kDXNDjjcMrDabBtWKDuuUrgjBGsI7NRbCQ0a5NWTo+EnWe0LXbYN
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_prime239v2
+-----BEGIN EC PRIVATE KEY-----
+MHECAQEEHgBGgsO7pRfBmXJm42g5nK8PBnsfoV9Kzb8M6Au/uqAKBggqhkjOPQMB
+BaFAAz4ABCodBJmFKY+l27hBsTAWj5hAk/C/vooVFprOMWrtEVGIo+B4EtYI0jA3
+8r7wgVMtdESJMPoKMVXVIX1trg==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_prime239v2_PUB
+-----BEGIN PUBLIC KEY-----
+MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQUDPgAEKh0EmYUpj6XbuEGxMBaPmECT8L++
+ihUWms4xau0RUYij4HgS1gjSMDfyvvCBUy10RIkw+goxVdUhfW2u
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_prime239v2
+PeerKey=BOB_prime239v2_PUB
+SharedSecret=5bdab282dc371ee88ade318a6aad2b329ec3ea957e0df18b7a691c1bf703
+
+# ECDH Bob with Alice peer
+Derive=BOB_prime239v2
+PeerKey=ALICE_prime239v2_PUB
+SharedSecret=5bdab282dc371ee88ade318a6aad2b329ec3ea957e0df18b7a691c1bf703
+
+# TEST CURVE prime239v3
+
+PrivateKey=ALICE_prime239v3
+-----BEGIN EC PRIVATE KEY-----
+MHECAQEEHhpcEjwGH5oj/a9pwEg+dlaismaRJ1PiZsp5X9gyO6AKBggqhkjOPQMB
+BqFAAz4ABBZSAeGJfuSdruCS2L/M/orcH/l5zi/wQ6jSt7kaGDyh2HWFiZIF8ZEN
+UA2cDaaQEEXMUoEypyelfHK26Q==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_prime239v3_PUB
+-----BEGIN PUBLIC KEY-----
+MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQYDPgAEFlIB4Yl+5J2u4JLYv8z+itwf+XnO
+L/BDqNK3uRoYPKHYdYWJkgXxkQ1QDZwNppAQRcxSgTKnJ6V8crbp
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_prime239v3
+-----BEGIN EC PRIVATE KEY-----
+MHECAQEEHlNSiHyQRryLa/P/4JFtc6D5L3qPZb1wZZ1Fef+aw6AKBggqhkjOPQMB
+BqFAAz4ABHqXNNwBBIDpyPor6YxleMqb5/LEUGlQG90AHiBGA0C1ARTnW95BdjL5
+ZyyldzgnQdxkIDX2bRB23Z9G6g==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_prime239v3_PUB
+-----BEGIN PUBLIC KEY-----
+MFUwEwYHKoZIzj0CAQYIKoZIzj0DAQYDPgAEepc03AEEgOnI+ivpjGV4ypvn8sRQ
+aVAb3QAeIEYDQLUBFOdb3kF2MvlnLKV3OCdB3GQgNfZtEHbdn0bq
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_prime239v3
+PeerKey=BOB_prime239v3_PUB
+SharedSecret=78e80ae760061178bd005e9e3634333971468bc6d3f82baee238c5ed32f9
+
+# ECDH Bob with Alice peer
+Derive=BOB_prime239v3
+PeerKey=ALICE_prime239v3_PUB
+SharedSecret=78e80ae760061178bd005e9e3634333971468bc6d3f82baee238c5ed32f9
+
+# TEST CURVE prime256v1
+
+PrivateKey=ALICE_prime256v1
+-----BEGIN EC PRIVATE KEY-----
+MHcCAQEEIJVDw5PIEPJTI9/Fe9IzwWQ30FMeaTTlUijjE6pYdODzoAoGCCqGSM49
+AwEHoUQDQgAEavO8PitKvW9ZsyRod9PZIzb2E0tNpmJBysQHsImcJrf+cPubssM/
+/tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_prime256v1_PUB
+-----BEGIN PUBLIC KEY-----
+MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEavO8PitKvW9ZsyRod9PZIzb2E0tN
+pmJBysQHsImcJrf+cPubssM//tNd9EnQFm17RAo2h1CveGBB86dBvzwpeQ==
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_prime256v1
+-----BEGIN EC PRIVATE KEY-----
+MHcCAQEEIDbC35/7EWX5vWXDO8VEYlB0+/sPCYJPUm8E1Q46S2GJoAoGCCqGSM49
+AwEHoUQDQgAEkZsijYFGwAxsZCDgFYfU+yF79mQ0+iOWDFusDrNu1TDgA9AIjS67
++7FtU3asZFLRde/xhaS7xTrmXG3V+Kd4vw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_prime256v1_PUB
+-----BEGIN PUBLIC KEY-----
+MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkZsijYFGwAxsZCDgFYfU+yF79mQ0
++iOWDFusDrNu1TDgA9AIjS67+7FtU3asZFLRde/xhaS7xTrmXG3V+Kd4vw==
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_prime256v1
+PeerKey=BOB_prime256v1_PUB
+SharedSecret=390021fbca00d959c1adaf7e9cedef0e65a582489eab9adbe739ef66bf82adb4
+
+# ECDH Bob with Alice peer
+Derive=BOB_prime256v1
+PeerKey=ALICE_prime256v1_PUB
+SharedSecret=390021fbca00d959c1adaf7e9cedef0e65a582489eab9adbe739ef66bf82adb4
+
+# TEST CURVE sect113r1
+
+PrivateKey=ALICE_sect113r1
+-----BEGIN EC PRIVATE KEY-----
+MEECAQEEDwBys/27wGVZviSeQZVmZKAHBgUrgQQABKEiAyAABAG+JN/rb7VXh60l
+vYP0uQFp0AWZ2ZFL6tUjeylNiw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_sect113r1_PUB
+-----BEGIN PUBLIC KEY-----
+MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEAb4k3+tvtVeHrSW9g/S5AWnQBZnZkUvq
+1SN7KU2L
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_sect113r1
+-----BEGIN EC PRIVATE KEY-----
+MEECAQEEDwCaESrcD0p1spBTPUX8zKAHBgUrgQQABKEiAyAABAC5JEE3FeMiN7PC
+sYXxWQHFZHr2DRQloEggCul02g==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_sect113r1_PUB
+-----BEGIN PUBLIC KEY-----
+MDQwEAYHKoZIzj0CAQYFK4EEAAQDIAAEALkkQTcV4yI3s8KxhfFZAcVkevYNFCWg
+SCAK6XTa
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_sect113r1
+PeerKey=BOB_sect113r1_PUB
+SharedSecret=015405437add26b8841c62a9016c85
+
+# ECDH Bob with Alice peer
+Derive=BOB_sect113r1
+PeerKey=ALICE_sect113r1_PUB
+SharedSecret=015405437add26b8841c62a9016c85
+
+# TEST CURVE sect113r2
+
+PrivateKey=ALICE_sect113r2
+-----BEGIN EC PRIVATE KEY-----
+MEECAQEEDwAGoVnpnsEoqO+vNeH31aAHBgUrgQQABaEiAyAABAFNBMcD25LFxnyS
++xJVRQFwtDibjlTXRXBUJD6gZA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_sect113r2_PUB
+-----BEGIN PUBLIC KEY-----
+MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAU0ExwPbksXGfJL7ElVFAXC0OJuOVNdF
+cFQkPqBk
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_sect113r2
+-----BEGIN EC PRIVATE KEY-----
+MEECAQEEDwAE8eFnSQKnROhxAki6K6AHBgUrgQQABaEiAyAABAFKLu75SvvvqIbK
+DQiPpQA3vQjM9VnEYrnM/GnrCg==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_sect113r2_PUB
+-----BEGIN PUBLIC KEY-----
+MDQwEAYHKoZIzj0CAQYFK4EEAAUDIAAEAUou7vlK+++ohsoNCI+lADe9CMz1WcRi
+ucz8aesK
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_sect113r2
+PeerKey=BOB_sect113r2_PUB
+SharedSecret=014231c5e9e28d451aa44a755407e1
+
+# ECDH Bob with Alice peer
+Derive=BOB_sect113r2
+PeerKey=ALICE_sect113r2_PUB
+SharedSecret=014231c5e9e28d451aa44a755407e1
+
+# TEST CURVE sect131r1
+
+PrivateKey=ALICE_sect131r1
+-----BEGIN EC PRIVATE KEY-----
+MEcCAQEEEQBQIUPAkstOEseIOXD9ByfxoAcGBSuBBAAWoSYDJAAEABT7LAX2I+/o
+sOV0o4uEuBcFEjsSlmdtc9eFSaRBY+EcBA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_sect131r1_PUB
+-----BEGIN PUBLIC KEY-----
+MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEABT7LAX2I+/osOV0o4uEuBcFEjsSlmdt
+c9eFSaRBY+EcBA==
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_sect131r1
+-----BEGIN EC PRIVATE KEY-----
+MEcCAQEEEQPHEzPGPEmZh9Jm9Ykqr5W8oAcGBSuBBAAWoSYDJAAEAUdDZr6H5ifk
+3gu3QiglxVUGt/3GRk1LTHFuWH7TCd2r2w==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_sect131r1_PUB
+-----BEGIN PUBLIC KEY-----
+MDgwEAYHKoZIzj0CAQYFK4EEABYDJAAEAUdDZr6H5ifk3gu3QiglxVUGt/3GRk1L
+THFuWH7TCd2r2w==
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_sect131r1
+PeerKey=BOB_sect131r1_PUB
+SharedSecret=009e4acc8c1ba3a129a9ad83a733d7d702
+
+# ECDH Bob with Alice peer
+Derive=BOB_sect131r1
+PeerKey=ALICE_sect131r1_PUB
+SharedSecret=009e4acc8c1ba3a129a9ad83a733d7d702
+
+# TEST CURVE sect131r2
+
+PrivateKey=ALICE_sect131r2
+-----BEGIN EC PRIVATE KEY-----
+MEcCAQEEEQMc8+1AIokHyDTWsyRPxKT1oAcGBSuBBAAXoSYDJAAEBxaXZn/WQhzi
+ZYJtEfj5z/YHjtELfUnKJ8q+TGQe3TnHeA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_sect131r2_PUB
+-----BEGIN PUBLIC KEY-----
+MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEBxaXZn/WQhziZYJtEfj5z/YHjtELfUnK
+J8q+TGQe3TnHeA==
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_sect131r2
+-----BEGIN EC PRIVATE KEY-----
+MEcCAQEEEQNH17P9i1Lb1Lv9Hn6tSJdUoAcGBSuBBAAXoSYDJAAEAtkc0EhMOiKC
+k7BPNzOVo30CxGTknMxQldiS8ESqP5ggtA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_sect131r2_PUB
+-----BEGIN PUBLIC KEY-----
+MDgwEAYHKoZIzj0CAQYFK4EEABcDJAAEAtkc0EhMOiKCk7BPNzOVo30CxGTknMxQ
+ldiS8ESqP5ggtA==
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_sect131r2
+PeerKey=BOB_sect131r2_PUB
+SharedSecret=03cbec3a3050c7f13d4801ad692d61c417
+
+# ECDH Bob with Alice peer
+Derive=BOB_sect131r2
+PeerKey=ALICE_sect131r2_PUB
+SharedSecret=03cbec3a3050c7f13d4801ad692d61c417
+
+# TEST CURVE sect163k1
+
+PrivateKey=ALICE_sect163k1
+-----BEGIN EC PRIVATE KEY-----
+MFMCAQEEFQHGR4Y5cTzo8CKOmTy2s39/eSXhSaAHBgUrgQQAAaEuAywABAPWGsMI
+nYxIUpnpDXVxOWVf+XkdjQeDldkLEwULzgBpzPA+00lg0LF8KQ==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_sect163k1_PUB
+-----BEGIN PUBLIC KEY-----
+MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEA9YawwidjEhSmekNdXE5ZV/5eR2NB4OV
+2QsTBQvOAGnM8D7TSWDQsXwp
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_sect163k1
+-----BEGIN EC PRIVATE KEY-----
+MFMCAQEEFQJQnmQi1J9eJ0deyCiRxLufM8Vs5KAHBgUrgQQAAaEuAywABAatg0nW
+qB1vcD0hI6ZO6N9L5ZgUrAFdeskSW4CR42HeNecOrxf5cEHSTw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_sect163k1_PUB
+-----BEGIN PUBLIC KEY-----
+MEAwEAYHKoZIzj0CAQYFK4EEAAEDLAAEBq2DSdaoHW9wPSEjpk7o30vlmBSsAV16
+yRJbgJHjYd415w6vF/lwQdJP
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_sect163k1
+PeerKey=BOB_sect163k1_PUB
+SharedSecret=07bfdf00759b383aa7741ae4634400f8ddf2047092
+
+# ECDH Bob with Alice peer
+Derive=BOB_sect163k1
+PeerKey=ALICE_sect163k1_PUB
+SharedSecret=07bfdf00759b383aa7741ae4634400f8ddf2047092
+
+# TEST CURVE sect163r1
+
+PrivateKey=ALICE_sect163r1
+-----BEGIN EC PRIVATE KEY-----
+MFMCAQEEFQGX3OaU+YUXm/2HUggQ0DHVvy2PT6AHBgUrgQQAAqEuAywABATePwmf
+nwIK0QPC85nkPCBgYFi8gQLPXM3xTA99MVJ1eNNZByv2BbE0wA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_sect163r1_PUB
+-----BEGIN PUBLIC KEY-----
+MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEBN4/CZ+fAgrRA8LzmeQ8IGBgWLyBAs9c
+zfFMD30xUnV401kHK/YFsTTA
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_sect163r1
+-----BEGIN EC PRIVATE KEY-----
+MFMCAQEEFQD+fM3nIJq+9mVfIMYSKFavAbfrT6AHBgUrgQQAAqEuAywABAO3pdkd
+/NcAFJOcaHN+g+190tmBqgaEF15bP7fXy82YLoAwk/4+e0fOwA==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_sect163r1_PUB
+-----BEGIN PUBLIC KEY-----
+MEAwEAYHKoZIzj0CAQYFK4EEAAIDLAAEA7el2R381wAUk5xoc36D7X3S2YGqBoQX
+Xls/t9fLzZgugDCT/j57R87A
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_sect163r1
+PeerKey=BOB_sect163r1_PUB
+SharedSecret=02355c765bbc07fcc44bb1496e490912f6df56e6d4
+
+# ECDH Bob with Alice peer
+Derive=BOB_sect163r1
+PeerKey=ALICE_sect163r1_PUB
+SharedSecret=02355c765bbc07fcc44bb1496e490912f6df56e6d4
+
+# TEST CURVE sect163r2
+
+PrivateKey=ALICE_sect163r2
+-----BEGIN EC PRIVATE KEY-----
+MFMCAQEEFQOMfYbsGQ9MEzhW2WNpCvyxdUs06qAHBgUrgQQAD6EuAywABAcepbEl
+ZHYqscI+n89KNkh0rzwRPQDfbf9Q5PGFgfCwulHuundqGrWVDw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_sect163r2_PUB
+-----BEGIN PUBLIC KEY-----
+MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBx6lsSVkdiqxwj6fz0o2SHSvPBE9AN9t
+/1Dk8YWB8LC6Ue66d2oatZUP
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_sect163r2
+-----BEGIN EC PRIVATE KEY-----
+MFMCAQEEFQFc4z1ObqwpdSVEuVbQeAI1MPFbaKAHBgUrgQQAD6EuAywABAbFrzFF
+wL5MhwOAa16ENURXU+gGiQHC0guPXo09gLRoFkjz+cUXiOGCZw==
+-----END EC PRIVATE KEY-----
+
+PublicKey=BOB_sect163r2_PUB
+-----BEGIN PUBLIC KEY-----
+MEAwEAYHKoZIzj0CAQYFK4EEAA8DLAAEBsWvMUXAvkyHA4BrXoQ1RFdT6AaJAcLS
+C49ejT2AtGgWSPP5xReI4YJn
+-----END PUBLIC KEY-----
+
+# ECDH Alice with Bob peer
+Derive=ALICE_sect163r2
+PeerKey=BOB_sect163r2_PUB
+SharedSecret=040df54e6df412790ef5c0fafbbfcba5136b872951
+
+# ECDH Bob with Alice peer
+Derive=BOB_sect163r2
+PeerKey=ALICE_sect163r2_PUB
+SharedSecret=040df54e6df412790ef5c0fafbbfcba5136b872951
+
+# TEST CURVE sect193r1
+
+PrivateKey=ALICE_sect193r1
+-----BEGIN EC PRIVATE KEY-----
+MF8CAQEEGQARCWh8GW+PzMMrmjgIJ8Bo5A6aUDJOKYGgBwYFK4EEABihNgM0AAQA
+oFzJEHFANlO+k8zf1lVdhBLlonBl9Sc3AGflPbqbXlEzgwudgZ2SVwAzygw4wv33
+3A==
+-----END EC PRIVATE KEY-----
+
+PublicKey=ALICE_sect193r1_PUB
+-----BEGIN PUBLIC KEY-----
+MEgwEAYHKoZIzj0CAQYFK4EEABgDNAAEAKBcyRBxQDZTvpPM39ZVXYQS5aJwZfUn
+NwBn5T26m15RM4MLnYGdklcAM8oMOML999w=
+-----END PUBLIC KEY-----
+
+PrivateKey=BOB_sect193r1
+-----BEGIN EC PRIVATE KEY-----
+