diff options
| author | J08nY | 2017-12-12 12:32:25 +0100 |
|---|---|---|
| committer | J08nY | 2017-12-12 12:32:25 +0100 |
| commit | 4dbc748a207bcee2c8fbe22566646b27a9f61dc0 (patch) | |
| tree | fdf069ac9a25ff82f9509826425bd4796c514da0 /src/cz/crcs/ectester/reader/command/Command.java | |
| parent | e329190e496ecf847cfd7afa886ac08cacb2fc92 (diff) | |
| parent | 9e8fbbc907f4157988ac425af4dce541f7e42328 (diff) | |
| download | ECTester-4dbc748a207bcee2c8fbe22566646b27a9f61dc0.tar.gz ECTester-4dbc748a207bcee2c8fbe22566646b27a9f61dc0.tar.zst ECTester-4dbc748a207bcee2c8fbe22566646b27a9f61dc0.zip | |
Merge branch 'feature/standalone-lib-testing' into devel
Diffstat (limited to 'src/cz/crcs/ectester/reader/command/Command.java')
| -rw-r--r-- | src/cz/crcs/ectester/reader/command/Command.java | 85 |
1 files changed, 73 insertions, 12 deletions
diff --git a/src/cz/crcs/ectester/reader/command/Command.java b/src/cz/crcs/ectester/reader/command/Command.java index 9d23322..922a33a 100644 --- a/src/cz/crcs/ectester/reader/command/Command.java +++ b/src/cz/crcs/ectester/reader/command/Command.java @@ -2,11 +2,11 @@ package cz.crcs.ectester.reader.command; import cz.crcs.ectester.applet.ECTesterApplet; import cz.crcs.ectester.applet.EC_Consts; +import cz.crcs.ectester.common.util.ByteUtil; import cz.crcs.ectester.data.EC_Store; import cz.crcs.ectester.reader.CardMngr; import cz.crcs.ectester.reader.ECTesterReader; import cz.crcs.ectester.reader.response.Response; -import cz.crcs.ectester.common.Util; import cz.crcs.ectester.common.ec.EC_Curve; import cz.crcs.ectester.common.ec.EC_Key; import cz.crcs.ectester.common.ec.EC_Keypair; @@ -174,7 +174,7 @@ public abstract class Command { if (privkey == null) { throw new IOException("Couldn't read the private key file correctly."); } - data = Util.concatenate(data, privkey); + data = ByteUtil.concatenate(data, privkey); } return new Command.Set(cardManager, keyPair, EC_Consts.CURVE_external, params, data); } @@ -203,7 +203,7 @@ public abstract class Command { this.keyClass = keyClass; byte[] data = new byte[]{0, 0, keyClass}; - Util.setShort(data, 0, keyLength); + ByteUtil.setShort(data, 0, keyLength); this.cmd = new CommandAPDU(ECTesterApplet.CLA_ECTESTERAPPLET, ECTesterApplet.INS_ALLOCATE, keyPair, 0x00, data); } @@ -214,13 +214,19 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.Allocate(response, elapsed, keyPair, keyLength, keyClass); } + + @Override + public String toString() { + return "Allocate"; + } } - - public static class AllocateKeyAgreement extends Command { + /** + * + */ + public static class AllocateKeyAgreement extends Command { private byte kaType; - /** * Creates the INS_ALLOCATE_KA instruction. * @@ -241,6 +247,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.AllocateKeyAgreement(response, elapsed, kaType); } + + @Override + public String toString() { + return "AllocateKeyAgreement"; + } } /** @@ -267,6 +278,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.Clear(response, elapsed, keyPair); } + + @Override + public String toString() { + return "Clear"; + } } /** @@ -296,7 +312,7 @@ public abstract class Command { int len = external != null ? 2 + external.length : 2; byte[] data = new byte[len]; - Util.setShort(data, 0, params); + ByteUtil.setShort(data, 0, params); if (external != null) { System.arraycopy(external, 0, data, 2, external.length); } @@ -311,6 +327,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.Set(response, elapsed, keyPair, curve, params); } + + @Override + public String toString() { + return "Set"; + } } /** @@ -337,7 +358,7 @@ public abstract class Command { this.corruption = corruption; byte[] data = new byte[3]; - Util.setShort(data, 0, params); + ByteUtil.setShort(data, 0, params); data[2] = corruption; this.cmd = new CommandAPDU(ECTesterApplet.CLA_ECTESTERAPPLET, ECTesterApplet.INS_CORRUPT, keyPair, key, data); @@ -350,6 +371,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.Corrupt(response, elapsed, keyPair, key, params, corruption); } + + @Override + public String toString() { + return "Corrupt"; + } } /** @@ -378,6 +404,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.Generate(response, elapsed, keyPair); } + + @Override + public String toString() { + return "Generate"; + } } /** @@ -403,7 +434,7 @@ public abstract class Command { this.params = params; byte[] data = new byte[2]; - Util.setShort(data, 0, params); + ByteUtil.setShort(data, 0, params); this.cmd = new CommandAPDU(ECTesterApplet.CLA_ECTESTERAPPLET, ECTesterApplet.INS_EXPORT, keyPair, key, data); } @@ -415,6 +446,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.Export(response, elapsed, keyPair, key, params); } + + @Override + public String toString() { + return "Export"; + } } /** @@ -446,7 +482,7 @@ public abstract class Command { this.type = type; byte[] data = new byte[]{export, 0,0, type}; - Util.setShort(data, 1, corruption); + ByteUtil.setShort(data, 1, corruption); this.cmd = new CommandAPDU(ECTesterApplet.CLA_ECTESTERAPPLET, ECTesterApplet.INS_ECDH, pubkey, privkey, data); } @@ -458,6 +494,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.ECDH(response, elapsed, pubkey, privkey, export, corruption, type); } + + @Override + public String toString() { + return "ECDH"; + } } /** @@ -489,7 +530,7 @@ public abstract class Command { this.pubkey = pubkey; byte[] data = new byte[3 + pubkey.length]; - Util.setShort(data, 0, corruption); + ByteUtil.setShort(data, 0, corruption); data[2] = type; System.arraycopy(pubkey, 0, data, 3, pubkey.length); @@ -503,6 +544,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.ECDH(response, elapsed, ECTesterApplet.KEYPAIR_REMOTE, privkey, export, corruption, type); } + + @Override + public String toString() { + return "ECDH_direct"; + } } public static class ECDSA extends Command { @@ -526,7 +572,7 @@ public abstract class Command { int len = raw != null ? raw.length : 0; byte[] data = new byte[2 + len]; - Util.setShort(data, 0, (short) len); + ByteUtil.setShort(data, 0, (short) len); if (raw != null) { System.arraycopy(raw, 0, data, 2, len); } @@ -541,6 +587,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.ECDSA(response, elapsed, keyPair, export, raw); } + + @Override + public String toString() { + return "ECDSA"; + } } /** @@ -564,6 +615,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.Cleanup(response, elapsed); } + + @Override + public String toString() { + return "Cleanup"; + } } /** @@ -587,6 +643,11 @@ public abstract class Command { elapsed += System.nanoTime(); return new Response.Support(response, elapsed); } + + @Override + public String toString() { + return "Support"; + } } } |
