summaryrefslogtreecommitdiff
path: root/src/cz/crcs/ectester/reader/test/CardTestSuite.java
diff options
context:
space:
mode:
authorJ08nY2019-03-06 16:12:47 +0100
committerJ08nY2019-03-06 16:12:47 +0100
commit09f3fa7fe3b4842b8ec0af6db0e4f4a3f23bb220 (patch)
tree3bcc34da01579f9f43d9fd1d0743056ce334841c /src/cz/crcs/ectester/reader/test/CardTestSuite.java
parent34d25b87527771d0346e98f634e9a90959322f59 (diff)
downloadECTester-09f3fa7fe3b4842b8ec0af6db0e4f4a3f23bb220.tar.gz
ECTester-09f3fa7fe3b4842b8ec0af6db0e4f4a3f23bb220.tar.zst
ECTester-09f3fa7fe3b4842b8ec0af6db0e4f4a3f23bb220.zip
Fix some keys in invalid test suite, add "random" test option.
Diffstat (limited to 'src/cz/crcs/ectester/reader/test/CardTestSuite.java')
-rw-r--r--src/cz/crcs/ectester/reader/test/CardTestSuite.java26
1 files changed, 21 insertions, 5 deletions
diff --git a/src/cz/crcs/ectester/reader/test/CardTestSuite.java b/src/cz/crcs/ectester/reader/test/CardTestSuite.java
index 87f6271..fc60ae5 100644
--- a/src/cz/crcs/ectester/reader/test/CardTestSuite.java
+++ b/src/cz/crcs/ectester/reader/test/CardTestSuite.java
@@ -47,16 +47,26 @@ public abstract class CardTestSuite extends TestSuite {
}
}
- public Test genOrPreset(EC_Curve curve, Result.ExpectedValue expected, byte keyPair) {
- if (Arrays.asList(options).contains("preset") && cfg.testOptions.contains("preset")) {
+ public Test setupKeypairs(EC_Curve curve, Result.ExpectedValue expected, byte keyPair) {
+ if ((Arrays.asList(options).contains("preset") && cfg.testOptions.contains("preset")) || (Arrays.asList(options).contains("random") && cfg.testOptions.contains("random"))) {
Test setLocal = null;
if ((keyPair & ECTesterApplet.KEYPAIR_LOCAL) != 0) {
- EC_Params priv = ECUtil.fixedRandomKey(curve);
+ EC_Params priv;
+ if (cfg.testOptions.contains("preset")) {
+ priv = ECUtil.fixedRandomKey(curve);
+ } else {
+ priv = ECUtil.fullRandomKey(curve);
+ }
setLocal = CommandTest.expect(new Command.Set(this.card, ECTesterApplet.KEYPAIR_LOCAL, EC_Consts.CURVE_external, priv.getParams(), priv.flatten()), expected);
}
Test setRemote = null;
if ((keyPair & ECTesterApplet.KEYPAIR_REMOTE) != 0) {
- EC_Params pub = ECUtil.fixedRandomPoint(curve);
+ EC_Params pub;
+ if (cfg.testOptions.contains("preset")) {
+ pub = ECUtil.fixedRandomPoint(curve);
+ } else {
+ pub = ECUtil.fullRandomPoint(curve);
+ }
if (pub == null) {
setRemote = CommandTest.expect(new Command.Generate(this.card, ECTesterApplet.KEYPAIR_REMOTE), expected);
} else {
@@ -69,7 +79,13 @@ public abstract class CardTestSuite extends TestSuite {
} else if (keyPair == ECTesterApplet.KEYPAIR_REMOTE) {
return setRemote;
} else {
- return CompoundTest.all(expected, "Set semi-random parameters.", setLocal, setRemote);
+ String desc;
+ if (cfg.testOptions.contains("preset")) {
+ desc = "Set semi-random parameters.";
+ } else {
+ desc = "Set fully-random parameters.";
+ }
+ return CompoundTest.all(expected, desc, setLocal, setRemote);
}
} else {
return CommandTest.expect(new Command.Generate(this.card, keyPair), expected);