aboutsummaryrefslogtreecommitdiff
path: root/src/cz/crcs/ectester/common/util
diff options
context:
space:
mode:
authorJ08nY2018-08-11 21:52:48 +0200
committerJ08nY2018-08-11 22:03:39 +0200
commitb6d6766fef9b73db70bda8b6b398128ba5a41ab2 (patch)
treea470e36aa69cb9e778070b175e9223432244f210 /src/cz/crcs/ectester/common/util
parent1284516b6630250a3fc4a2bf8d23e15fede5a77b (diff)
downloadECTester-b6d6766fef9b73db70bda8b6b398128ba5a41ab2.tar.gz
ECTester-b6d6766fef9b73db70bda8b6b398128ba5a41ab2.tar.zst
ECTester-b6d6766fef9b73db70bda8b6b398128ba5a41ab2.zip
Add various ECDSA tests.
Diffstat (limited to 'src/cz/crcs/ectester/common/util')
-rw-r--r--src/cz/crcs/ectester/common/util/CardUtil.java17
-rw-r--r--src/cz/crcs/ectester/common/util/ECUtil.java4
2 files changed, 21 insertions, 0 deletions
diff --git a/src/cz/crcs/ectester/common/util/CardUtil.java b/src/cz/crcs/ectester/common/util/CardUtil.java
index a628d5b..e7b370c 100644
--- a/src/cz/crcs/ectester/common/util/CardUtil.java
+++ b/src/cz/crcs/ectester/common/util/CardUtil.java
@@ -14,6 +14,23 @@ import java.util.List;
* @author Jan Jancar johny@neuromancer.sk
*/
public class CardUtil {
+ public static byte getSig(String name) {
+ switch (name) {
+ case "SHA1":
+ return EC_Consts.Signature_ALG_ECDSA_SHA;
+ case "SHA224":
+ return EC_Consts.Signature_ALG_ECDSA_SHA_224;
+ case "SHA256":
+ return EC_Consts.Signature_ALG_ECDSA_SHA_256;
+ case "SHA384":
+ return EC_Consts.Signature_ALG_ECDSA_SHA_384;
+ case "SHA512":
+ return EC_Consts.Signature_ALG_ECDSA_SHA_512;
+ default:
+ return EC_Consts.Signature_ALG_ECDSA_SHA;
+ }
+ }
+
public static byte getKA(String name) {
switch (name) {
case "DH":
diff --git a/src/cz/crcs/ectester/common/util/ECUtil.java b/src/cz/crcs/ectester/common/util/ECUtil.java
index 3c1f138..6c3ad58 100644
--- a/src/cz/crcs/ectester/common/util/ECUtil.java
+++ b/src/cz/crcs/ectester/common/util/ECUtil.java
@@ -210,4 +210,8 @@ public class ECUtil {
ECPrivateKey privkey = new RawECPrivateKey(toScalar(kp), curve.toSpec());
return new KeyPair(pubkey, privkey);
}
+
+ public static byte[] toDERSignature(byte[] r, byte[] s) {
+ return ByteUtil.concatenate(new byte[]{0x30, (byte) (r.length + s.length + 4), 0x02, (byte) r.length}, r, new byte[]{0x02, (byte) s.length}, s);
+ }
}