diff options
| author | J08nY | 2017-11-13 23:18:35 +0100 |
|---|---|---|
| committer | J08nY | 2017-11-13 23:18:35 +0100 |
| commit | 80e14c7d3f9eeec34f0236bfb8c595033142756a (patch) | |
| tree | 4688c60a7197e880237150caf7c9f2d38623e4f6 /src/cz/crcs/ectester/standalone/libs/JavaECLibrary.java | |
| parent | 35bdac1fff6e98485d5fbef870d6438fdbbd00c3 (diff) | |
| download | ECTester-80e14c7d3f9eeec34f0236bfb8c595033142756a.tar.gz ECTester-80e14c7d3f9eeec34f0236bfb8c595033142756a.tar.zst ECTester-80e14c7d3f9eeec34f0236bfb8c595033142756a.zip | |
Diffstat (limited to 'src/cz/crcs/ectester/standalone/libs/JavaECLibrary.java')
| -rw-r--r-- | src/cz/crcs/ectester/standalone/libs/JavaECLibrary.java | 35 |
1 files changed, 18 insertions, 17 deletions
diff --git a/src/cz/crcs/ectester/standalone/libs/JavaECLibrary.java b/src/cz/crcs/ectester/standalone/libs/JavaECLibrary.java index f8848da..5689b2b 100644 --- a/src/cz/crcs/ectester/standalone/libs/JavaECLibrary.java +++ b/src/cz/crcs/ectester/standalone/libs/JavaECLibrary.java @@ -1,12 +1,15 @@ package cz.crcs.ectester.standalone.libs; +import cz.crcs.ectester.standalone.consts.Ident; import cz.crcs.ectester.standalone.consts.KeyAgreementIdent; +import cz.crcs.ectester.standalone.consts.KeyPairGeneratorIdent; import cz.crcs.ectester.standalone.consts.SignatureIdent; import java.security.Provider; import java.security.Security; import java.util.HashSet; import java.util.Set; +import java.util.function.Function; /** * @author Jan Jancar johny@neuromancer.sk @@ -39,34 +42,32 @@ public abstract class JavaECLibrary implements ECLibrary { return initialized; } - @Override - public Set<KeyAgreementIdent> getECKAs() { - Set<KeyAgreementIdent> results = new HashSet<>(); + private <T extends Ident> Set<T> getIdents(String type, Function<String, T> getter) { + Set<T> results = new HashSet<>(); for (Provider.Service service : provider.getServices()) { - if (service.getType().equals("KeyAgreement")) { - KeyAgreementIdent id = KeyAgreementIdent.get(service.getAlgorithm()); + if (service.getType().equals(type)) { + T id = getter.apply(service.getAlgorithm()); if (id != null) { results.add(id); } } } - System.out.println(results); return results; } @Override + public Set<KeyAgreementIdent> getECKAs() { + return getIdents("KeyAgreement", KeyAgreementIdent::get); + } + + @Override public Set<SignatureIdent> getECSigs() { - Set<SignatureIdent> results = new HashSet<>(); - for (Provider.Service service : provider.getServices()) { - if (service.getType().equals("Signature")) { - SignatureIdent id = SignatureIdent.get(service.getAlgorithm()); - if (id != null) { - results.add(id); - } - } - } - System.out.println(results); - return results; + return getIdents("Signature", SignatureIdent::get); + } + + @Override + public Set<KeyPairGeneratorIdent> getKPGs() { + return getIdents("KeyPairGenerator", KeyPairGeneratorIdent::get); } @Override |
