aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJ08nY2017-03-09 00:46:35 +0100
committerJ08nY2017-03-09 00:46:35 +0100
commitea77f29683c8721ae1581b76f3f6b83ee26720bc (patch)
tree8b8c432e6913e17329f09668349d796435914e05 /src
parentc6cb9f4cda4391713bd59cc1e1e7cae8d50cf331 (diff)
downloadECTester-ea77f29683c8721ae1581b76f3f6b83ee26720bc.tar.gz
ECTester-ea77f29683c8721ae1581b76f3f6b83ee26720bc.tar.zst
ECTester-ea77f29683c8721ae1581b76f3f6b83ee26720bc.zip
Diffstat (limited to 'src')
-rw-r--r--src/cz/crcs/ectester/data/EC_Data.java25
-rw-r--r--src/cz/crcs/ectester/reader/ECTester.java31
-rw-r--r--src/cz/crcs/ectester/reader/Response.java2
-rw-r--r--src/cz/crcs/ectester/reader/ec/EC_Curve.java2
4 files changed, 47 insertions, 13 deletions
diff --git a/src/cz/crcs/ectester/data/EC_Data.java b/src/cz/crcs/ectester/data/EC_Data.java
index a867fcf..0c4bda2 100644
--- a/src/cz/crcs/ectester/data/EC_Data.java
+++ b/src/cz/crcs/ectester/data/EC_Data.java
@@ -10,7 +10,9 @@ import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
+import org.xml.sax.ErrorHandler;
import org.xml.sax.SAXException;
+import org.xml.sax.SAXParseException;
import javax.xml.XMLConstants;
import javax.xml.parsers.DocumentBuilder;
@@ -29,12 +31,12 @@ import java.util.Map;
*/
public class EC_Data {
- private DocumentBuilderFactory dbf;
+ private DocumentBuilder db;
private Map<String, EC_Category> categories;
public EC_Data() {
- dbf = DocumentBuilderFactory.newInstance();
+ DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
try {
SchemaFactory scf = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
@@ -43,6 +45,23 @@ public class EC_Data {
dbf.setNamespaceAware(true);
dbf.setIgnoringComments(true);
dbf.setIgnoringElementContentWhitespace(true);
+ db = dbf.newDocumentBuilder();
+ db.setErrorHandler(new ErrorHandler() {
+ @Override
+ public void warning(SAXParseException exception) throws SAXException {
+ System.err.println("EC_Data | Warning : " + exception);
+ }
+
+ @Override
+ public void error(SAXParseException exception) throws SAXException {
+ System.err.println("EC_Data | Error : " + exception);
+ }
+
+ @Override
+ public void fatalError(SAXParseException exception) throws SAXException {
+ System.err.println("EC_Data | Fatal : " + exception);
+ }
+ });
parse();
} catch (ParserConfigurationException | IOException | SAXException e) {
@@ -51,7 +70,6 @@ public class EC_Data {
}
private void parse() throws SAXException, ParserConfigurationException, IOException {
- DocumentBuilder db = dbf.newDocumentBuilder();
Document categoriesDoc = db.parse(this.getClass().getResourceAsStream("/cz/crcs/ectester/data/categories.xml"));
categoriesDoc.normalize();
@@ -76,7 +94,6 @@ public class EC_Data {
}
private EC_Category parseCategory(String name, String dir, String desc) throws ParserConfigurationException, IOException, SAXException {
- DocumentBuilder db = dbf.newDocumentBuilder();
Map<String, EC_Params> objMap = new HashMap<>();
diff --git a/src/cz/crcs/ectester/reader/ECTester.java b/src/cz/crcs/ectester/reader/ECTester.java
index c4d29a5..86588df 100644
--- a/src/cz/crcs/ectester/reader/ECTester.java
+++ b/src/cz/crcs/ectester/reader/ECTester.java
@@ -602,6 +602,12 @@ public class ECTester {
generate.add(new Command.Generate(cardManager, ECTesterApplet.KEYPAIR_BOTH));
}
+ FileWriter out = null;
+ if (optOutput != null) {
+ out = new FileWriter(optOutput);
+ out.write("index;time;secret\n");
+ }
+
int retry = 0;
int done = 0;
while (done < optECDHCount) {
@@ -621,13 +627,15 @@ public class ECTester {
}
}
- if (optOutput != null) {
- FileWriter out = new FileWriter(optOutput);
- out.write(Util.bytesToHex(perform.getSecret(), false));
- out.close();
+ if (out != null) {
+ out.write(String.format("%d;%d;%s\n", done, perform.getDuration() / 1000000, Util.bytesToHex(perform.getSecret(), false)));
}
+
++done;
}
+
+ if (out != null)
+ out.close();
}
/**
@@ -662,6 +670,12 @@ public class ECTester {
systemOutLogger.println(Response.toString(prepare));
+ FileWriter out = null;
+ if (optOutput != null) {
+ out = new FileWriter(optOutput);
+ out.write("index;time;signature\n");
+ }
+
int retry = 0;
int done = 0;
while (done < optECDSACount) {
@@ -682,13 +696,14 @@ public class ECTester {
}
}
- if (optOutput != null) {
- FileWriter out = new FileWriter(optOutput);
- out.write(Util.bytesToHex(perform.getSignature(), false));
- out.close();
+ if (out != null) {
+ out.write(String.format("%d;%d;%s\n", done, perform.getDuration() / 1000000, Util.bytesToHex(perform.getSignature(), false)));
}
+
++done;
}
+ if (out != null)
+ out.close();
}
/**
diff --git a/src/cz/crcs/ectester/reader/Response.java b/src/cz/crcs/ectester/reader/Response.java
index 28b6c17..e76d35c 100644
--- a/src/cz/crcs/ectester/reader/Response.java
+++ b/src/cz/crcs/ectester/reader/Response.java
@@ -129,7 +129,7 @@ public abstract class Response {
} else {
suffix = String.format("%s %s", Util.getPrintError(r.getSW1()), Util.getPrintError(r.getSW2()));
}
- out.append(String.format("%-55s: %5d ms : %s", message, r.time/1000000, suffix));
+ out.append(String.format("%-55s:%5d ms : %s", message, r.time/1000000, suffix));
if (i < responses.size() - 1) {
out.append("\n");
}
diff --git a/src/cz/crcs/ectester/reader/ec/EC_Curve.java b/src/cz/crcs/ectester/reader/ec/EC_Curve.java
index 08a0b8a..273b1f4 100644
--- a/src/cz/crcs/ectester/reader/ec/EC_Curve.java
+++ b/src/cz/crcs/ectester/reader/ec/EC_Curve.java
@@ -20,6 +20,8 @@ public class EC_Curve extends EC_Params {
public EC_Curve(short bits, byte field) {
super(field == KeyPair.ALG_EC_FP ? EC_Consts.PARAMETERS_DOMAIN_FP : EC_Consts.PARAMETERS_DOMAIN_F2M);
this.bits = bits;
+
+ this.field = field;
}
public EC_Curve(short bits, byte field, String desc) {