diff options
| author | J08nY | 2019-03-06 16:12:47 +0100 |
|---|---|---|
| committer | J08nY | 2019-03-06 16:12:47 +0100 |
| commit | 09f3fa7fe3b4842b8ec0af6db0e4f4a3f23bb220 (patch) | |
| tree | 3bcc34da01579f9f43d9fd1d0743056ce334841c /src/cz/crcs/ectester/reader/test/CardTestSuite.java | |
| parent | 34d25b87527771d0346e98f634e9a90959322f59 (diff) | |
| download | ECTester-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.java | 26 |
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); |
