aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJ08nY2025-03-12 17:09:05 +0100
committerJ08nY2025-03-12 17:09:05 +0100
commit7866d55da3df1b9bea98bd5168cb92601a7cf453 (patch)
tree42bb374271769cbdeea07c8c87a29e8571bdee35
parent6bb48cea9b962ff689c3acf987974da1330e5405 (diff)
downloadECTester-7866d55da3df1b9bea98bd5168cb92601a7cf453.tar.gz
ECTester-7866d55da3df1b9bea98bd5168cb92601a7cf453.tar.zst
ECTester-7866d55da3df1b9bea98bd5168cb92601a7cf453.zip
-rw-r--r--reader/src/main/java/cz/crcs/ectester/reader/ECTesterReader.java17
1 files changed, 15 insertions, 2 deletions
diff --git a/reader/src/main/java/cz/crcs/ectester/reader/ECTesterReader.java b/reader/src/main/java/cz/crcs/ectester/reader/ECTesterReader.java
index ddd733b..1fa937e 100644
--- a/reader/src/main/java/cz/crcs/ectester/reader/ECTesterReader.java
+++ b/reader/src/main/java/cz/crcs/ectester/reader/ECTesterReader.java
@@ -333,7 +333,7 @@ public class ECTesterReader {
opts.addOption(Option.builder("v").longOpt("verbose").desc("Turn on verbose logging.").build());
opts.addOption(Option.builder().longOpt("format").desc("Output format to use. One of: text,yml,xml.").hasArg().argName("format").build());
- opts.addOption(Option.builder("kb").longOpt("key-builder").desc("Allocate KeyPair using KeyBuilder.").build());
+ opts.addOption(Option.builder().longOpt("alloc-keypair").desc("Use KeyPair allocation method, one of: keypair, keybuilder, any.").hasArg().argName("method").build());
opts.addOption(Option.builder().longOpt("fixed").desc("Generate key(s) only once, keep them for later operations.").build());
opts.addOption(Option.builder().longOpt("fixed-private").desc("Generate private key only once, keep it for later ECDH.").build());
opts.addOption(Option.builder().longOpt("fixed-public").desc("Generate public key only once, keep it for later ECDH.").build());
@@ -905,7 +905,20 @@ public class ECTesterReader {
fixedKey = cli.hasOption("fixed");
fixedPrivate = cli.hasOption("fixed-private");
fixedPublic = cli.hasOption("fixed-public");
- keyBuilder = cli.hasOption("key-builder") ? CardConsts.BUILD_KEYBUILDER : CardConsts.BUILD_KEYPAIR;
+
+ if (cli.hasOption("alloc-keypair")) {
+ String method = cli.getOptionValue("alloc-keypair");
+ if (method.equals("keypair")) {
+ keyBuilder = CardConsts.BUILD_KEYPAIR;
+ } else if (method.equals("keybuilder")) {
+ keyBuilder = CardConsts.BUILD_KEYBUILDER;
+ } else if (method.equals("any")) {
+ keyBuilder = CardConsts.BUILD_KEYBUILDER | CardConsts.BUILD_KEYPAIR;
+ } else {
+ System.err.println(Colors.error("Invalid keypair allocation method: " + method));
+ return false;
+ }
+ }
if (cli.hasOption("log")) {
log = cli.getOptionValue("log", String.format("ECTESTER_log_%d.log", System.currentTimeMillis() / 1000));