You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by lg...@apache.org on 2017/03/26 12:24:05 UTC
[1/2] mina-sshd git commit: Temporary workaround until new EdDSA
artifact released [Forced Update!]
Repository: mina-sshd
Updated Branches:
refs/heads/eddsa 6c1a85281 -> 0e70635aa (forced update)
Temporary workaround until new EdDSA artifact released
Project: http://git-wip-us.apache.org/repos/asf/mina-sshd/repo
Commit: http://git-wip-us.apache.org/repos/asf/mina-sshd/commit/0e70635a
Tree: http://git-wip-us.apache.org/repos/asf/mina-sshd/tree/0e70635a
Diff: http://git-wip-us.apache.org/repos/asf/mina-sshd/diff/0e70635a
Branch: refs/heads/eddsa
Commit: 0e70635aa58008dc29a5e2baa7a2568c82c2e865
Parents: dee62d6
Author: Lyor Goldstein <ly...@gmail.com>
Authored: Tue Mar 21 06:33:01 2017 +0200
Committer: Goldstein Lyor <ly...@c-b4.com>
Committed: Sun Mar 26 15:23:57 2017 +0300
----------------------------------------------------------------------
pom.xml | 4 +++-
src/eddsa-0.2.0-SNAPSHOT-sources.jar | Bin 0 -> 50453 bytes
src/eddsa-0.2.0-SNAPSHOT.jar | Bin 0 -> 61529 bytes
.../sshd/common/util/security/SecurityUtils.java | 4 ++--
.../security/eddsa/EdDSASecurityProviderUtils.java | 3 ++-
.../util/security/eddsa/SignatureEd25519.java | 4 ++--
.../util/security/eddsa/EDDSAProviderTest.java | 6 +++---
7 files changed, 12 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/0e70635a/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 06ec711..0b0a4c1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -202,7 +202,9 @@
<dependency>
<groupId>net.i2p.crypto</groupId>
<artifactId>eddsa</artifactId>
- <version>0.1.1</version>
+ <version>0.2.0-SNAPSHOT</version>
+ <scope>system</scope>
+ <systemPath>${projectRoot}${file.separator}src${file.separator}eddsa-0.2.0-SNAPSHOT.jar</systemPath>
</dependency>
<dependency>
http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/0e70635a/src/eddsa-0.2.0-SNAPSHOT-sources.jar
----------------------------------------------------------------------
diff --git a/src/eddsa-0.2.0-SNAPSHOT-sources.jar b/src/eddsa-0.2.0-SNAPSHOT-sources.jar
new file mode 100644
index 0000000..0136af5
Binary files /dev/null and b/src/eddsa-0.2.0-SNAPSHOT-sources.jar differ
http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/0e70635a/src/eddsa-0.2.0-SNAPSHOT.jar
----------------------------------------------------------------------
diff --git a/src/eddsa-0.2.0-SNAPSHOT.jar b/src/eddsa-0.2.0-SNAPSHOT.jar
new file mode 100644
index 0000000..ab1b310
Binary files /dev/null and b/src/eddsa-0.2.0-SNAPSHOT.jar differ
http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/0e70635a/sshd-core/src/main/java/org/apache/sshd/common/util/security/SecurityUtils.java
----------------------------------------------------------------------
diff --git a/sshd-core/src/main/java/org/apache/sshd/common/util/security/SecurityUtils.java b/sshd-core/src/main/java/org/apache/sshd/common/util/security/SecurityUtils.java
index b86bcc3..55d1a62 100644
--- a/sshd-core/src/main/java/org/apache/sshd/common/util/security/SecurityUtils.java
+++ b/sshd-core/src/main/java/org/apache/sshd/common/util/security/SecurityUtils.java
@@ -96,8 +96,8 @@ public final class SecurityUtils {
public static final String EDDSA = "EdDSA";
// A copy-paste from the original, but we don't want to drag the classes into the classpath
- // See EdDSANamedCurveTable.CURVE_ED25519_SHA512
- public static final String CURVE_ED25519_SHA512 = "SHA512withEd25519";
+ // See EdDSAEngine.SIGNATURE_ALGORITHM
+ public static final String CURVE_ED25519_SHA512 = "NONEwithEdDSA";
/**
* System property used to configure the value for the maximum supported Diffie-Hellman
http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/0e70635a/sshd-core/src/main/java/org/apache/sshd/common/util/security/eddsa/EdDSASecurityProviderUtils.java
----------------------------------------------------------------------
diff --git a/sshd-core/src/main/java/org/apache/sshd/common/util/security/eddsa/EdDSASecurityProviderUtils.java b/sshd-core/src/main/java/org/apache/sshd/common/util/security/eddsa/EdDSASecurityProviderUtils.java
index b5d79f0..e75477c 100644
--- a/sshd-core/src/main/java/org/apache/sshd/common/util/security/eddsa/EdDSASecurityProviderUtils.java
+++ b/sshd-core/src/main/java/org/apache/sshd/common/util/security/eddsa/EdDSASecurityProviderUtils.java
@@ -28,6 +28,7 @@ import java.security.PublicKey;
import java.util.Arrays;
import java.util.Objects;
+import net.i2p.crypto.eddsa.EdDSAEngine;
import net.i2p.crypto.eddsa.EdDSAKey;
import net.i2p.crypto.eddsa.EdDSAPrivateKey;
import net.i2p.crypto.eddsa.EdDSAPublicKey;
@@ -85,7 +86,7 @@ public final class EdDSASecurityProviderUtils {
}
public static boolean isEDDSASignatureAlgorithm(String algorithm) {
- return EdDSANamedCurveTable.CURVE_ED25519_SHA512.equalsIgnoreCase(algorithm);
+ return EdDSAEngine.SIGNATURE_ALGORITHM.equalsIgnoreCase(algorithm);
}
public static EdDSAPublicKey recoverEDDSAPublicKey(PrivateKey key) throws GeneralSecurityException {
http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/0e70635a/sshd-core/src/main/java/org/apache/sshd/common/util/security/eddsa/SignatureEd25519.java
----------------------------------------------------------------------
diff --git a/sshd-core/src/main/java/org/apache/sshd/common/util/security/eddsa/SignatureEd25519.java b/sshd-core/src/main/java/org/apache/sshd/common/util/security/eddsa/SignatureEd25519.java
index 97a7cf9..cd601f6 100644
--- a/sshd-core/src/main/java/org/apache/sshd/common/util/security/eddsa/SignatureEd25519.java
+++ b/sshd-core/src/main/java/org/apache/sshd/common/util/security/eddsa/SignatureEd25519.java
@@ -18,7 +18,7 @@
*/
package org.apache.sshd.common.util.security.eddsa;
-import net.i2p.crypto.eddsa.spec.EdDSANamedCurveTable;
+import net.i2p.crypto.eddsa.EdDSAEngine;
import org.apache.sshd.common.keyprovider.KeyPairProvider;
import org.apache.sshd.common.signature.AbstractSignature;
@@ -30,7 +30,7 @@ import org.apache.sshd.common.util.ValidateUtils;
*/
public class SignatureEd25519 extends AbstractSignature {
public SignatureEd25519() {
- super(EdDSANamedCurveTable.CURVE_ED25519_SHA512);
+ super(EdDSAEngine.SIGNATURE_ALGORITHM);
}
@Override
http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/0e70635a/sshd-core/src/test/java/org/apache/sshd/common/util/security/eddsa/EDDSAProviderTest.java
----------------------------------------------------------------------
diff --git a/sshd-core/src/test/java/org/apache/sshd/common/util/security/eddsa/EDDSAProviderTest.java b/sshd-core/src/test/java/org/apache/sshd/common/util/security/eddsa/EDDSAProviderTest.java
index f7461a3..b69f1ea 100644
--- a/sshd-core/src/test/java/org/apache/sshd/common/util/security/eddsa/EDDSAProviderTest.java
+++ b/sshd-core/src/test/java/org/apache/sshd/common/util/security/eddsa/EDDSAProviderTest.java
@@ -27,7 +27,7 @@ import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.Signature;
-import net.i2p.crypto.eddsa.spec.EdDSANamedCurveTable;
+import net.i2p.crypto.eddsa.EdDSAEngine;
import org.apache.sshd.common.config.keys.AuthorizedKeyEntry;
import org.apache.sshd.common.config.keys.KeyUtils;
@@ -75,7 +75,7 @@ public class EDDSAProviderTest extends BaseTestSupport {
@Test
public void testSignature() throws GeneralSecurityException {
- Signature s = SecurityUtils.getSignature(EdDSANamedCurveTable.CURVE_ED25519_SHA512);
+ Signature s = SecurityUtils.getSignature(EdDSAEngine.SIGNATURE_ALGORITHM);
assertNotNull("No signature instance", s);
s.initSign(keyPair.getPrivate());
@@ -83,7 +83,7 @@ public class EDDSAProviderTest extends BaseTestSupport {
s.update(data);
byte[] signed = s.sign();
- s = SecurityUtils.getSignature(EdDSANamedCurveTable.CURVE_ED25519_SHA512);
+ s = SecurityUtils.getSignature(EdDSAEngine.SIGNATURE_ALGORITHM);
s.initVerify(keyPair.getPublic());
s.update(data);
assertTrue("Failed to verify", s.verify(signed));
[2/2] mina-sshd git commit: [SSHD-732] Fixed
BuiltinClientIdentitiesWatcherTest in view
Posted by lg...@apache.org.
[SSHD-732] Fixed BuiltinClientIdentitiesWatcherTest in view
Project: http://git-wip-us.apache.org/repos/asf/mina-sshd/repo
Commit: http://git-wip-us.apache.org/repos/asf/mina-sshd/commit/dee62d68
Tree: http://git-wip-us.apache.org/repos/asf/mina-sshd/tree/dee62d68
Diff: http://git-wip-us.apache.org/repos/asf/mina-sshd/diff/dee62d68
Branch: refs/heads/eddsa
Commit: dee62d680415ac52971072d5b44495d37b0c226a
Parents: be51bdc
Author: Lyor Goldstein <ly...@gmail.com>
Authored: Tue Mar 21 06:49:16 2017 +0200
Committer: Goldstein Lyor <ly...@c-b4.com>
Committed: Sun Mar 26 15:23:57 2017 +0300
----------------------------------------------------------------------
.../client/config/keys/ClientIdentitiesWatcher.java | 12 +++++++++---
.../config/keys/BuiltinClientIdentitiesWatcherTest.java | 7 ++++++-
2 files changed, 15 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/dee62d68/sshd-core/src/main/java/org/apache/sshd/client/config/keys/ClientIdentitiesWatcher.java
----------------------------------------------------------------------
diff --git a/sshd-core/src/main/java/org/apache/sshd/client/config/keys/ClientIdentitiesWatcher.java b/sshd-core/src/main/java/org/apache/sshd/client/config/keys/ClientIdentitiesWatcher.java
index 6c2bb0b..094766f 100644
--- a/sshd-core/src/main/java/org/apache/sshd/client/config/keys/ClientIdentitiesWatcher.java
+++ b/sshd-core/src/main/java/org/apache/sshd/client/config/keys/ClientIdentitiesWatcher.java
@@ -76,7 +76,7 @@ public class ClientIdentitiesWatcher extends AbstractKeyPairProvider implements
return loadKeys(null);
}
- protected Iterable<KeyPair> loadKeys(Predicate<KeyPair> filter) {
+ protected Iterable<KeyPair> loadKeys(Predicate<? super KeyPair> filter) {
return () -> {
Stream<KeyPair> stream = safeMap(GenericUtils.stream(providers), this::doGetKeyPair);
if (filter != null) {
@@ -89,14 +89,20 @@ public class ClientIdentitiesWatcher extends AbstractKeyPairProvider implements
/**
* Performs a mapping operation on the stream, discarding any null values
* returned by the mapper.
+ *
+ * @param <U> Original type
+ * @param <V> Mapped type
+ * @param stream Original values stream
+ * @param mapper Mapper to target type
+ * @return Mapped stream
*/
- private <U, V> Stream<V> safeMap(Stream<U> stream, Function<U, V> mapper) {
+ protected <U, V> Stream<V> safeMap(Stream<U> stream, Function<? super U, ? extends V> mapper) {
return stream.map(u -> Optional.ofNullable(mapper.apply(u)))
.filter(Optional::isPresent)
.map(Optional::get);
}
- private KeyPair doGetKeyPair(ClientIdentityProvider p) {
+ protected KeyPair doGetKeyPair(ClientIdentityProvider p) {
try {
KeyPair kp = p.getClientIdentity();
if (kp == null) {
http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/dee62d68/sshd-core/src/test/java/org/apache/sshd/client/config/keys/BuiltinClientIdentitiesWatcherTest.java
----------------------------------------------------------------------
diff --git a/sshd-core/src/test/java/org/apache/sshd/client/config/keys/BuiltinClientIdentitiesWatcherTest.java b/sshd-core/src/test/java/org/apache/sshd/client/config/keys/BuiltinClientIdentitiesWatcherTest.java
index 9599684..70cc197 100644
--- a/sshd-core/src/test/java/org/apache/sshd/client/config/keys/BuiltinClientIdentitiesWatcherTest.java
+++ b/sshd-core/src/test/java/org/apache/sshd/client/config/keys/BuiltinClientIdentitiesWatcherTest.java
@@ -28,6 +28,7 @@ import java.nio.file.Path;
import java.nio.file.StandardOpenOption;
import java.security.GeneralSecurityException;
import java.security.KeyPair;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.EnumMap;
@@ -141,7 +142,11 @@ public class BuiltinClientIdentitiesWatcherTest extends BaseTestSupport {
}
private static void testMultipleFilesWatch(String phase, KeyIdentityProvider watcher, Collection<? extends KeyPair> expected) {
- Collection<? extends KeyPair> actual = (Collection<? extends KeyPair>) watcher.loadKeys();
+ Iterable<KeyPair> keys = watcher.loadKeys();
+ Collection<KeyPair> actual = new ArrayList<>();
+ for (KeyPair kp : keys) {
+ actual.add(kp);
+ }
assertEquals(phase + ": mismatched sizes", GenericUtils.size(expected), GenericUtils.size(actual));
if (!GenericUtils.isEmpty(expected)) {