diff options
| author | J08nY | 2018-07-30 19:16:55 +0200 |
|---|---|---|
| committer | J08nY | 2018-07-30 19:16:55 +0200 |
| commit | bfb1202f83a36f086b69286060e7355777e83b61 (patch) | |
| tree | 29f336744b932b2090cf5e760ecf268569d20e74 /src/cz | |
| parent | d24630d759bb16f715564ab80a5d4447f57d03f2 (diff) | |
| download | ECTester-bfb1202f83a36f086b69286060e7355777e83b61.tar.gz ECTester-bfb1202f83a36f086b69286060e7355777e83b61.tar.zst ECTester-bfb1202f83a36f086b69286060e7355777e83b61.zip | |
Diffstat (limited to 'src/cz')
4 files changed, 38 insertions, 10 deletions
diff --git a/src/cz/crcs/ectester/reader/ECTesterReader.java b/src/cz/crcs/ectester/reader/ECTesterReader.java index 4a7d779..7bdf0f1 100644 --- a/src/cz/crcs/ectester/reader/ECTesterReader.java +++ b/src/cz/crcs/ectester/reader/ECTesterReader.java @@ -94,7 +94,6 @@ public class ECTesterReader { DESCRIPTION = "ECTesterReader " + VERSION + GIT_COMMIT + ", a javacard Elliptic Curve Cryptography support tester/utility."; CLI_HEADER = "\n" + DESCRIPTION + "\n\n"; - ; } private void run(String[] args) { diff --git a/src/cz/crcs/ectester/standalone/ECTesterStandalone.java b/src/cz/crcs/ectester/standalone/ECTesterStandalone.java index 31d291c..aafe38a 100644 --- a/src/cz/crcs/ectester/standalone/ECTesterStandalone.java +++ b/src/cz/crcs/ectester/standalone/ECTesterStandalone.java @@ -264,16 +264,26 @@ public class ECTesterStandalone { .findFirst() .orElse(null); + String baseAlgo; + if (algo.contains("with")) { + baseAlgo = algo.split("with")[0]; + } else { + baseAlgo = algo; + } + KeyPairGeneratorIdent kpIdent = lib.getKPGs().stream() .filter((ident) -> ident.contains(algo)) .findFirst() .orElse(lib.getKPGs().stream() - .filter((ident) -> ident.contains("ECDH")) + .filter((ident) -> ident.contains(baseAlgo)) .findFirst() .orElse(lib.getKPGs().stream() - .filter((ident) -> ident.contains("EC")) + .filter((ident) -> ident.contains("ECDH")) .findFirst() - .orElse(null))); + .orElse(lib.getKPGs().stream() + .filter((ident) -> ident.contains("EC")) + .findFirst() + .orElse(null)))); if (kaIdent == null || kpIdent == null) { throw new NoSuchAlgorithmException(algo); @@ -367,13 +377,26 @@ public class ECTesterStandalone { .findFirst() .orElse(null); + String baseAlgo; + if (algo.contains("with")) { + baseAlgo = algo.split("with")[1]; + } else { + baseAlgo = algo; + } + KeyPairGeneratorIdent kpIdent = lib.getKPGs().stream() .filter((ident) -> ident.contains(algo)) .findFirst() .orElse(lib.getKPGs().stream() - .filter((ident) -> ident.contains("EC")) + .filter((ident) -> ident.contains(baseAlgo)) .findFirst() - .orElse(null)); + .orElse(lib.getKPGs().stream() + .filter((ident) -> ident.contains("ECDSA")) + .findFirst() + .orElse(lib.getKPGs().stream() + .filter((ident) -> ident.contains("EC")) + .findFirst() + .orElse(null)))); if (sigIdent == null || kpIdent == null) { throw new NoSuchAlgorithmException(algo); diff --git a/src/cz/crcs/ectester/standalone/consts/Ident.java b/src/cz/crcs/ectester/standalone/consts/Ident.java index 40a44ac..29603c2 100644 --- a/src/cz/crcs/ectester/standalone/consts/Ident.java +++ b/src/cz/crcs/ectester/standalone/consts/Ident.java @@ -36,6 +36,7 @@ public abstract class Ident { try { instance = getter.apply(name, provider); } catch (Exception ignored) { + ignored.printStackTrace(); } if (instance == null) { @@ -46,6 +47,7 @@ public abstract class Ident { break; } } catch (Exception ignored) { + ignored.printStackTrace(); } } } diff --git a/src/cz/crcs/ectester/standalone/libs/jni/NativeKeyPairGeneratorSpi.java b/src/cz/crcs/ectester/standalone/libs/jni/NativeKeyPairGeneratorSpi.java index 7ca013a..aa83479 100644 --- a/src/cz/crcs/ectester/standalone/libs/jni/NativeKeyPairGeneratorSpi.java +++ b/src/cz/crcs/ectester/standalone/libs/jni/NativeKeyPairGeneratorSpi.java @@ -13,6 +13,8 @@ public abstract class NativeKeyPairGeneratorSpi extends KeyPairGeneratorSpi { private boolean useKeysize; private boolean useParams; + public static final int DEFAULT_KEYSIZE = 256; + @Override public void initialize(int keysize, SecureRandom random) { if (!keysizeSupported(keysize)) { @@ -37,6 +39,12 @@ public abstract class NativeKeyPairGeneratorSpi extends KeyPairGeneratorSpi { @Override public KeyPair generateKeyPair() { + if (!useKeysize && !useParams) { + if (keysizeSupported(DEFAULT_KEYSIZE)) { + initialize(DEFAULT_KEYSIZE, new SecureRandom()); + } + } + if (useKeysize) { return generate(keysize, random); } else if (useParams) { @@ -57,7 +65,6 @@ public abstract class NativeKeyPairGeneratorSpi extends KeyPairGeneratorSpi { public static class TomCrypt extends NativeKeyPairGeneratorSpi { public TomCrypt() { - initialize(256, new SecureRandom());//TODO: maybe remove this default init? } @Override @@ -78,7 +85,6 @@ public abstract class NativeKeyPairGeneratorSpi extends KeyPairGeneratorSpi { public Botan(String type) { this.type = type; - initialize(256, new SecureRandom());//TODO: maybe remove this default init? } @Override @@ -127,7 +133,6 @@ public abstract class NativeKeyPairGeneratorSpi extends KeyPairGeneratorSpi { public Cryptopp(String type) { this.type = type; - initialize(256, new SecureRandom());//TODO: maybe remove this default init? } @Override @@ -180,7 +185,6 @@ public abstract class NativeKeyPairGeneratorSpi extends KeyPairGeneratorSpi { public Mscng(String type) { this.type = type; - initialize(256, new SecureRandom()); } @Override |
