summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/cz/crcs/ectester/reader/Command.java10
-rw-r--r--src/cz/crcs/ectester/reader/ec/EC_Category.java2
-rw-r--r--src/cz/crcs/ectester/reader/ec/EC_Curve.java2
-rw-r--r--src/cz/crcs/ectester/reader/ec/EC_Data.java4
-rw-r--r--src/cz/crcs/ectester/reader/ec/EC_KAResult.java2
-rw-r--r--src/cz/crcs/ectester/reader/ec/EC_Key.java8
-rw-r--r--src/cz/crcs/ectester/reader/ec/EC_Keypair.java2
-rw-r--r--src/cz/crcs/ectester/reader/ec/EC_Params.java5
8 files changed, 35 insertions, 0 deletions
diff --git a/src/cz/crcs/ectester/reader/Command.java b/src/cz/crcs/ectester/reader/Command.java
index 8cb3a30..cf05972 100644
--- a/src/cz/crcs/ectester/reader/Command.java
+++ b/src/cz/crcs/ectester/reader/Command.java
@@ -466,6 +466,16 @@ public abstract class Command {
private byte type;
private byte[] pubkey;
+ /**
+ * Creates the INS_ECDH_DIRECT instruction.
+ *
+ * @param cardManager cardManager to send APDU through
+ * @param privkey keyPair to use for private key, (KEYPAIR_LOCAL || KEYPAIR_REMOTE)
+ * @param export whether to export ECDH secret
+ * @param corruption whether to invalidate the pubkey before ECDH (EC_Consts.CORRUPTION_* | ...)
+ * @param type ECDH algorithm type (EC_Consts.KA_* | ...)
+ * @param pubkey pubkey data to do ECDH with.
+ */
protected ECDH_direct(CardMngr cardManager, byte privkey, byte export, short corruption, byte type, byte[] pubkey) {
super(cardManager);
this.privkey = privkey;
diff --git a/src/cz/crcs/ectester/reader/ec/EC_Category.java b/src/cz/crcs/ectester/reader/ec/EC_Category.java
index 97dd1b4..41cbad8 100644
--- a/src/cz/crcs/ectester/reader/ec/EC_Category.java
+++ b/src/cz/crcs/ectester/reader/ec/EC_Category.java
@@ -6,6 +6,8 @@ import java.util.Objects;
import java.util.TreeMap;
/**
+ * A category of EC_Data objects, has a name, description and represents a directory in
+ * the cz.crcs.ectester.data package.
* @author Jan Jancar johny@neuromancer.sk
*/
public class EC_Category {
diff --git a/src/cz/crcs/ectester/reader/ec/EC_Curve.java b/src/cz/crcs/ectester/reader/ec/EC_Curve.java
index 45080fb..cb4a2df 100644
--- a/src/cz/crcs/ectester/reader/ec/EC_Curve.java
+++ b/src/cz/crcs/ectester/reader/ec/EC_Curve.java
@@ -4,6 +4,8 @@ import cz.crcs.ectester.applet.EC_Consts;
import javacard.security.KeyPair;
/**
+ * An Elliptic curve, contains parameters Fp/F2M, A, B, G, R, (K)?.
+ *
* @author Jan Jancar johny@neuromancer.sk
*/
public class EC_Curve extends EC_Params {
diff --git a/src/cz/crcs/ectester/reader/ec/EC_Data.java b/src/cz/crcs/ectester/reader/ec/EC_Data.java
index 9dcbbe0..0ceddef 100644
--- a/src/cz/crcs/ectester/reader/ec/EC_Data.java
+++ b/src/cz/crcs/ectester/reader/ec/EC_Data.java
@@ -7,6 +7,10 @@ import java.util.*;
import java.util.regex.Pattern;
/**
+ * A list of byte arrays for holding EC data.
+ *
+ * The data can be read from a byte array via <code>readBytes()</code>, from a CSV via <code>readCSV()</code>.
+ * The data can be exported to a byte array via <code>flatten()</code> or to a string array via <code>expand()</code>.
* @author Jan Jancar johny@neuromancer.sk
*/
public abstract class EC_Data {
diff --git a/src/cz/crcs/ectester/reader/ec/EC_KAResult.java b/src/cz/crcs/ectester/reader/ec/EC_KAResult.java
index 28115f7..4a67bbe 100644
--- a/src/cz/crcs/ectester/reader/ec/EC_KAResult.java
+++ b/src/cz/crcs/ectester/reader/ec/EC_KAResult.java
@@ -3,6 +3,8 @@ package cz.crcs.ectester.reader.ec;
import cz.crcs.ectester.reader.Util;
/**
+ * A result of EC based Key agreement operation.
+ *
* @author Jan Jancar johny@neuromancer.sk
*/
public class EC_KAResult extends EC_Data {
diff --git a/src/cz/crcs/ectester/reader/ec/EC_Key.java b/src/cz/crcs/ectester/reader/ec/EC_Key.java
index cecd228..e1adcf1 100644
--- a/src/cz/crcs/ectester/reader/ec/EC_Key.java
+++ b/src/cz/crcs/ectester/reader/ec/EC_Key.java
@@ -3,6 +3,8 @@ package cz.crcs.ectester.reader.ec;
import cz.crcs.ectester.applet.EC_Consts;
/**
+ * An abstract-like EC key. Concrete implementations create a public and private keys.
+ *
* @author Jan Jancar johny@neuromancer.sk
*/
public class EC_Key extends EC_Params {
@@ -38,6 +40,9 @@ public class EC_Key extends EC_Params {
return desc;
}
+ /**
+ * An EC public key, contains the W parameter.
+ */
public static class Public extends EC_Key {
public Public(String curve) {
@@ -54,6 +59,9 @@ public class EC_Key extends EC_Params {
}
}
+ /**
+ * An EC private key, contains the S parameter.
+ */
public static class Private extends EC_Key {
public Private(String curve) {
diff --git a/src/cz/crcs/ectester/reader/ec/EC_Keypair.java b/src/cz/crcs/ectester/reader/ec/EC_Keypair.java
index 924906e..e7da027 100644
--- a/src/cz/crcs/ectester/reader/ec/EC_Keypair.java
+++ b/src/cz/crcs/ectester/reader/ec/EC_Keypair.java
@@ -3,6 +3,8 @@ package cz.crcs.ectester.reader.ec;
import cz.crcs.ectester.applet.EC_Consts;
/**
+ * An EC keypair, contains both the W and S parameters.
+ *
* @author Jan Jancar johny@neuromancer.sk
*/
public class EC_Keypair extends EC_Params {
diff --git a/src/cz/crcs/ectester/reader/ec/EC_Params.java b/src/cz/crcs/ectester/reader/ec/EC_Params.java
index ea2e633..6fb164b 100644
--- a/src/cz/crcs/ectester/reader/ec/EC_Params.java
+++ b/src/cz/crcs/ectester/reader/ec/EC_Params.java
@@ -8,6 +8,11 @@ import java.util.ArrayList;
import java.util.List;
/**
+ * A list of EC parameters, can contain a subset of the Fp/F2M, A, B, G, R, K, W, S parameters.
+ *
+ * The set of parameters is uniquely identified by a short bit string.
+ * The parameters can be exported to a byte array via <code>flatten()</code> or to a comma delimited
+ * string via <code>expand()</code>.
* @author Jan Jancar johny@neuromancer.sk
*/
public class EC_Params extends EC_Data {