Repository: mina-sshd
Updated Branches:
  refs/heads/master fc7a8e7c2 -> c305bc494


[SSHD-757] Added ECC 256 and 521 bits PGP keys test cases


Project: http://git-wip-us.apache.org/repos/asf/mina-sshd/repo
Commit: http://git-wip-us.apache.org/repos/asf/mina-sshd/commit/c305bc49
Tree: http://git-wip-us.apache.org/repos/asf/mina-sshd/tree/c305bc49
Diff: http://git-wip-us.apache.org/repos/asf/mina-sshd/diff/c305bc49

Branch: refs/heads/master
Commit: c305bc4945f571415dc5ef9bf76f93716644071a
Parents: 3767115
Author: Lyor Goldstein <[email protected]>
Authored: Wed Nov 21 09:04:55 2018 +0200
Committer: Lyor Goldstein <[email protected]>
Committed: Thu Nov 22 07:05:16 2018 +0200

----------------------------------------------------------------------
 .../loader/openpgp/PGPPublicKeyExtractor.java   |  7 +++---
 .../openpgp/PGPKeyPairResourceParserTest.java   |  2 ++
 .../openpgp/PGPUtilsKeyFingerprintTest.java     |  2 ++
 .../keys/loader/openpgp/EC-256-gpg2-public.asc  | 15 +++++++++++
 .../keys/loader/openpgp/EC-521-gpg2-public.asc  | 21 ++++++++++++++++
 ...er-secret-passphrase-EC-256-gpg2-private.gpg | 19 ++++++++++++++
 ...er-secret-passphrase-EC-521-gpg2-private.gpg | 26 ++++++++++++++++++++
 7 files changed, 89 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/c305bc49/sshd-openpgp/src/main/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPPublicKeyExtractor.java
----------------------------------------------------------------------
diff --git 
a/sshd-openpgp/src/main/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPPublicKeyExtractor.java
 
b/sshd-openpgp/src/main/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPPublicKeyExtractor.java
index cb68837..e9efc1f 100644
--- 
a/sshd-openpgp/src/main/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPPublicKeyExtractor.java
+++ 
b/sshd-openpgp/src/main/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPPublicKeyExtractor.java
@@ -45,6 +45,7 @@ import org.apache.sshd.common.util.security.SecurityUtils;
 import org.bouncycastle.asn1.ASN1ObjectIdentifier;
 import org.bouncycastle.bcpg.BCPGKey;
 import org.bouncycastle.bcpg.DSAPublicBCPGKey;
+import org.bouncycastle.bcpg.ECDHPublicBCPGKey;
 import org.bouncycastle.bcpg.ECDSAPublicBCPGKey;
 import org.bouncycastle.bcpg.ECPublicBCPGKey;
 import org.bouncycastle.bcpg.EdDSAPublicBCPGKey;
@@ -97,14 +98,14 @@ public interface PGPPublicKeyExtractor {
             return null;
         } else if (bcKey instanceof EdDSAPublicBCPGKey) {
             return extractEdDSAPublicKey(resourceKey, (EdDSAPublicBCPGKey) 
bcKey);
-        } else if (bcKey instanceof ECDSAPublicBCPGKey) {
-            return extractECDSAPublicKey(resourceKey, (ECDSAPublicBCPGKey) 
bcKey);
+        } else if ((bcKey instanceof ECDSAPublicBCPGKey) || (bcKey instanceof 
ECDHPublicBCPGKey)) {
+            return extractECDSAPublicKey(resourceKey, bcKey);
         } else {
             throw new NoSuchAlgorithmException("Unsupported EC public key 
type: " + bcKey.getClass().getSimpleName());
         }
     }
 
-    default ECPublicKey extractECDSAPublicKey(NamedResource resourceKey, 
ECDSAPublicBCPGKey bcKey)
+    default ECPublicKey extractECDSAPublicKey(NamedResource resourceKey, 
ECPublicBCPGKey bcKey)
             throws IOException, GeneralSecurityException {
         if (bcKey == null) {
             return null;

http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/c305bc49/sshd-openpgp/src/test/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPKeyPairResourceParserTest.java
----------------------------------------------------------------------
diff --git 
a/sshd-openpgp/src/test/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPKeyPairResourceParserTest.java
 
b/sshd-openpgp/src/test/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPKeyPairResourceParserTest.java
index 5b77181..ae9dad2 100644
--- 
a/sshd-openpgp/src/test/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPKeyPairResourceParserTest.java
+++ 
b/sshd-openpgp/src/test/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPKeyPairResourceParserTest.java
@@ -130,7 +130,9 @@ public class PGPKeyPairResourceParserTest extends 
JUnitTestSupport {
                     add(new Object[] 
{"super-secret-passphrase-RSA-2048-v1p6p1-private.gpg", result, PASSWORD});
                     add(new Object[] 
{"super-secret-passphrase-RSA-4096-v2p0p8-private.gpg", result, PASSWORD});
                     add(new Object[] 
{"super-secret-passphrase-DSA-2048-gpg4win-3.1.3.gpg", result, PASSWORD});
+                    add(new Object[] 
{"super-secret-passphrase-EC-256-gpg2-private.gpg", result, PASSWORD});
                     add(new Object[] 
{"super-secret-passphrase-EC-384-v1p0-private.gpg", result, PASSWORD});
+                    add(new Object[] 
{"super-secret-passphrase-EC-521-gpg2-private.gpg", result, PASSWORD});
                     // TODO add(new Object[] 
{"super-secret-passphrase-ed25519-gpg4win-3.1.3.gpg, result", PASSWORD});
                 }
             }

http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/c305bc49/sshd-openpgp/src/test/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPUtilsKeyFingerprintTest.java
----------------------------------------------------------------------
diff --git 
a/sshd-openpgp/src/test/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPUtilsKeyFingerprintTest.java
 
b/sshd-openpgp/src/test/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPUtilsKeyFingerprintTest.java
index d83e505..a75928d 100644
--- 
a/sshd-openpgp/src/test/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPUtilsKeyFingerprintTest.java
+++ 
b/sshd-openpgp/src/test/java/org/apache/sshd/common/config/keys/loader/openpgp/PGPUtilsKeyFingerprintTest.java
@@ -92,7 +92,9 @@ public class PGPUtilsKeyFingerprintTest extends 
JUnitTestSupport {
     @Parameters(name = "{0}")
     public static List<Object[]> parameters() {
         return parameterize(Arrays.asList(
+            "EC-256-gpg2-public.asc",
             "EC-348-v1p0-public.asc",
+            "EC-521-gpg2-public.asc",
             "RSA-2048-v1p0-public.asc",
             "RSA-2048-v1p6p1-public.asc",
             "RSA-4096-vp2p0p8-public.asc",

http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/c305bc49/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/EC-256-gpg2-public.asc
----------------------------------------------------------------------
diff --git 
a/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/EC-256-gpg2-public.asc
 
b/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/EC-256-gpg2-public.asc
new file mode 100644
index 0000000..cebba85
--- /dev/null
+++ 
b/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/EC-256-gpg2-public.asc
@@ -0,0 +1,15 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+mFIEW/UCHBMIKoZIzj0DAQcCAwRwthfsRaS0mRDLNIaSr33Z3BlN/jkRyjcPB6Pb
+7YgIsx6SduOzO6nS5jXLByMQies7RP6yTU/toaw9ZgeHOsxetENMeW9yIEdvbGRz
+dGVpbiAoTUlOQSBTU0hEIEVDQyAyNTYgYml0cyBrZXkpIDxsZ29sZHN0ZWluQGFw
+YWNoZS5vcmc+iJAEExMIADgWIQR0WNzQXYwc0XfdokuXaUwevKnY5AUCW/UCHAIb
+AwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRCXaUwevKnY5NYHAQD20Ssv+Qyc
+6TqGAWYQK8Nn2JlnyZpfZa8GsRaMHFkfGQD5ATVE5hH0YzqCJQlXIFhkRhnb1y7e
+gVwk8e2j6exv2I+4VgRb9QIcEggqhkjOPQMBBwIDBAAir4mj7T+LXOLouc0H3E+6
+c5meEAzG7jyZt6lV8ROGH6pwiG+lsle/iu3kizvoiOtiXdtr+gAKfoHPkpQ7MNUD
+AQgHiHgEGBMIACAWIQR0WNzQXYwc0XfdokuXaUwevKnY5AUCW/UCHAIbDAAKCRCX
+aUwevKnY5EOMAP43QNoih5T92eTR3fgFCs2fmzNEYNQmTbZtrAsbvMecMQEAgOPn
+dtxNt41SlS+O3x8En65gzaiKMusVbBaCIF+jR8c=
+=eZ7T
+-----END PGP PUBLIC KEY BLOCK-----

http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/c305bc49/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/EC-521-gpg2-public.asc
----------------------------------------------------------------------
diff --git 
a/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/EC-521-gpg2-public.asc
 
b/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/EC-521-gpg2-public.asc
new file mode 100644
index 0000000..6e05147
--- /dev/null
+++ 
b/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/EC-521-gpg2-public.asc
@@ -0,0 +1,21 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+mJMEW/T7qBMFK4EEACMEIwQBJlVreO43JyBB4xrzGqOrWtQ2PeZSFYG8cCRNhA6V
+gWy0iyTaeelWbx1v8JLLFFR5FEJauyaPFVcr5Yt6K8/KllMAwYkXA1Fgfomly3CK
+cw0be5ba2l6LZf012OMfL95W7N2n8pGTQVouHCXOfttgceVhd0t9vc3KJ/ndwMqq
+QzdNZZm0Q0x5b3IgR29sZHN0ZWluIChNSU5BIFNTSEQgRUNDIDUyMSBiaXRzIGtl
+eSkgPGxnb2xkc3RlaW5AYXBhY2hlLm9yZz6I0gQTEwoAOBYhBHO0L8Vu8dyBYR41
+TWC6tW9HfvBjBQJb9PuoAhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEGC6
+tW9HfvBjxLcCB1uHVLoj/YglRxm0avQ4w+7+/i5zCyrWD+9QwIk5hUtdVrLRnqxJ
+BH+FdPpiWLpiisqf0tWv3RQjXgew0XB0b/eRAgjsbPiBRZFsnDQz0vpHJFj/l471
+zrNAwNsXZq1Q0Km1tVTP75CN+GUxR45hQ9SXfzPheK+P5/pQyjE3XfPuZlnFfbiX
+BFv0+6gSBSuBBAAjBCMEAFiFexuRMnSfngDTPWTxWSh699tvXoOqfRTWCy40hsBP
+LBqmpOeYBPoQ93cYCEFnyMnHI/G+g0umQSxZvfZBWKYsALEAdOFmI6alDfFNpLa+
+FS0+XFVhwRz/gehZG7XZRwBX8FSzXaahfcL6ivz6zRXkvh2jbAPnZNohWxx9UgfN
+YT+3AwEKCYi8BBgTCgAgFiEEc7QvxW7x3IFhHjVNYLq1b0d+8GMFAlv0+6gCGwwA
+CgkQYLq1b0d+8GPpZgIJAR9cvxAMZV0GjBkFFy8vGKF6HINVV6kx3TJLGwrdIOaE
+CTIyERWhMHoV8s37RhWwgsnmxt0ExhXDnjgtXnQAYwipAgkB7q4vpOp6y+f78PY6
+26j0O57Qk3D3HMk2RDwb301O2XbvXnac6s5/M7cUmsF3axktP0KUK0qSdu0u3BqL
+hWes7XE=
+=jpkH
+-----END PGP PUBLIC KEY BLOCK-----

http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/c305bc49/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/super-secret-passphrase-EC-256-gpg2-private.gpg
----------------------------------------------------------------------
diff --git 
a/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/super-secret-passphrase-EC-256-gpg2-private.gpg
 
b/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/super-secret-passphrase-EC-256-gpg2-private.gpg
new file mode 100644
index 0000000..dd93db4
--- /dev/null
+++ 
b/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/super-secret-passphrase-EC-256-gpg2-private.gpg
@@ -0,0 +1,19 @@
+-----BEGIN PGP PRIVATE KEY BLOCK-----
+
+lKUEW/UCHBMIKoZIzj0DAQcCAwRwthfsRaS0mRDLNIaSr33Z3BlN/jkRyjcPB6Pb
+7YgIsx6SduOzO6nS5jXLByMQies7RP6yTU/toaw9ZgeHOsxe/gcDAtKiQ15aX4xK
+7RKctzKLT0+GvpeMwocKxJY4cKPLdVUafeG/oNTRUZxhpCZxhNQF72RRYWVJUSWa
+FYc7PAlq9bpdjaEilzvKrbkOUSGghga0Q0x5b3IgR29sZHN0ZWluIChNSU5BIFNT
+SEQgRUNDIDI1NiBiaXRzIGtleSkgPGxnb2xkc3RlaW5AYXBhY2hlLm9yZz6IkAQT
+EwgAOBYhBHRY3NBdjBzRd92iS5dpTB68qdjkBQJb9QIcAhsDBQsJCAcCBhUKCQgL
+AgQWAgMBAh4BAheAAAoJEJdpTB68qdjk1gcBAPbRKy/5DJzpOoYBZhArw2fYmWfJ
+ml9lrwaxFowcWR8ZAPkBNUTmEfRjOoIlCVcgWGRGGdvXLt6BXCTx7aPp7G/Yj5yp
+BFv1AhwSCCqGSM49AwEHAgMEACKviaPtP4tc4ui5zQfcT7pzmZ4QDMbuPJm3qVXx
+E4YfqnCIb6WyV7+K7eSLO+iI62Jd22v6AAp+gc+SlDsw1QMBCAf+BwMCXAs4w3kX
+lmTtMIuR/VfNPMZQnc12Lea0iLwQSZidPI/TMZ/vQecK1UUN2PD1WsAecAAg3g5K
+NcY5r4dAvmpeadRq32xuHqQYgted7ZxImIh4BBgTCAAgFiEEdFjc0F2MHNF33aJL
+l2lMHryp2OQFAlv1AhwCGwwACgkQl2lMHryp2ORDjAD+N0DaIoeU/dnk0d34BQrN
+n5szRGDUJk22bawLG7zHnDEBAIDj53bcTbeNUpUvjt8fBJ+uYM2oijLrFWwWgiBf
+o0fH
+=76uM
+-----END PGP PRIVATE KEY BLOCK-----

http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/c305bc49/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/super-secret-passphrase-EC-521-gpg2-private.gpg
----------------------------------------------------------------------
diff --git 
a/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/super-secret-passphrase-EC-521-gpg2-private.gpg
 
b/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/super-secret-passphrase-EC-521-gpg2-private.gpg
new file mode 100644
index 0000000..2c5ce5b
--- /dev/null
+++ 
b/sshd-openpgp/src/test/resources/org/apache/sshd/common/config/keys/loader/openpgp/super-secret-passphrase-EC-521-gpg2-private.gpg
@@ -0,0 +1,26 @@
+-----BEGIN PGP PRIVATE KEY BLOCK-----
+
+lQEIBFv0+6gTBSuBBAAjBCMEASZVa3juNycgQeMa8xqjq1rUNj3mUhWBvHAkTYQO
+lYFstIsk2nnpVm8db/CSyxRUeRRCWrsmjxVXK+WLeivPypZTAMGJFwNRYH6Jpctw
+inMNG3uW2tpei2X9NdjjHy/eVuzdp/KRk0FaLhwlzn7bYHHlYXdLfb3Nyif53cDK
+qkM3TWWZ/gcDAgIh5ahe2+kM7XlDnlGFeZ1ERSsbinlleEH3eiRMwzhz/yVRbrmR
+H/daJrGc64SEuJ48N+fjNTrrmjt4k+IoWY5DF1MZkZny/mrN/fQy0pN7emAn0K+6
+h8y9EyW6cJ+JMnncF2eukpgfusesKPyyvx1jtENMeW9yIEdvbGRzdGVpbiAoTUlO
+QSBTU0hEIEVDQyA1MjEgYml0cyBrZXkpIDxsZ29sZHN0ZWluQGFwYWNoZS5vcmc+
+iNIEExMKADgWIQRztC/FbvHcgWEeNU1gurVvR37wYwUCW/T7qAIbAwULCQgHAgYV
+CgkICwIEFgIDAQIeAQIXgAAKCRBgurVvR37wY8S3Agdbh1S6I/2IJUcZtGr0OMPu
+/v4ucwsq1g/vUMCJOYVLXVay0Z6sSQR/hXT6Yli6YorKn9LVr90UI14HsNFwdG/3
+kQII7Gz4gUWRbJw0M9L6RyRY/5eO9c6zQMDbF2atUNCptbVUz++QjfhlMUeOYUPU
+l38z4Xivj+f6UMoxN13z7mZZxX2dAQwEW/T7qBIFK4EEACMEIwQAWIV7G5EydJ+e
+ANM9ZPFZKHr3229eg6p9FNYLLjSGwE8sGqak55gE+hD3dxgIQWfIyccj8b6DS6ZB
+LFm99kFYpiwAsQB04WYjpqUN8U2ktr4VLT5cVWHBHP+B6FkbtdlHAFfwVLNdpqF9
+wvqK/PrNFeS+HaNsA+dk2iFbHH1SB81hP7cDAQoJ/gcDAgVW5i5FCB9x7apr07na
+S34ODn8O8qqzX32ren40RbUTuexwReROUQAhMgF3FlL99hoyzHc//7exNREPDRkF
+eNkxRqStUxkmqbzIDIVb148nUfJMqzruwN81rwkEZA/adcmD+9mgw8secp+qRWKr
+nU6GiLwEGBMKACAWIQRztC/FbvHcgWEeNU1gurVvR37wYwUCW/T7qAIbDAAKCRBg
+urVvR37wY+lmAgkBH1y/EAxlXQaMGQUXLy8YoXocg1VXqTHdMksbCt0g5oQJMjIR
+FaEwehXyzftGFbCCyebG3QTGFcOeOC1edABjCKkCCQHuri+k6nrL5/vw9jrbqPQ7
+ntCTcPccyTZEPBvfTU7Zdu9edpzqzn8ztxSawXdrGS0/QpQrSpJ27S7cGouFZ6zt
+cQ==
+=nmhU
+-----END PGP PRIVATE KEY BLOCK-----

Reply via email to