aboutsummaryrefslogtreecommitdiff
path: root/src/cz/crcs/ectester/data
diff options
context:
space:
mode:
Diffstat (limited to 'src/cz/crcs/ectester/data')
-rw-r--r--src/cz/crcs/ectester/data/EC_Store.java67
-rw-r--r--src/cz/crcs/ectester/data/categories.xml2
-rw-r--r--src/cz/crcs/ectester/data/cofactor/curves.xml8
-rw-r--r--src/cz/crcs/ectester/data/cofactor/keys.xml4
-rw-r--r--src/cz/crcs/ectester/data/composite/curves.xml295
-rw-r--r--src/cz/crcs/ectester/data/composite/keys.xml4
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/10.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/10.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/112.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/112.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/12.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/12.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/128.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/128.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/135.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/135.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/14.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/14.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/140.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/140.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/144.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/144.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/146.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/146.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/148.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/148.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/150.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/150.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/152.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/152.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/152_cofactor.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/152_cofactor.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/16.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/16.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/20.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/20.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/25.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/25.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/2a.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/2a.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/2b.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/2b.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/3.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/3.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/32.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/32.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/4.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/4.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/48.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/48.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/5.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/5.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/6.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/6.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/64.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/64.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/7.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/7.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/70.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/70.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/8.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/8.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/80.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/80.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/90.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/90.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/first/96.csv (renamed from src/cz/crcs/ectester/data/composite/varying/160/96.csv)0
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/140.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/141.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/142.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/143.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/144.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/145.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/146.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/147.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/148.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/149.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/150.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/151.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/152.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/153.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/154.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/155.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/156.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/157.csv1
-rw-r--r--src/cz/crcs/ectester/data/composite/varying/160/second/158.csv1
-rw-r--r--src/cz/crcs/ectester/data/degenerate/keys.xml4
-rw-r--r--src/cz/crcs/ectester/data/degenerate/secg.xml12
-rw-r--r--src/cz/crcs/ectester/data/invalid/keys.xml4
-rw-r--r--src/cz/crcs/ectester/data/invalid/secg/secp112r1.xml2
-rw-r--r--src/cz/crcs/ectester/data/invalid/secg/secp112r2.xml2
-rw-r--r--src/cz/crcs/ectester/data/invalid/secg/secp128r1.xml4
-rw-r--r--src/cz/crcs/ectester/data/invalid/secg/secp160r1.xml2
-rw-r--r--src/cz/crcs/ectester/data/invalid/secg/secp160r2.xml2
-rw-r--r--src/cz/crcs/ectester/data/invalid/secg/secp192r1.xml2
-rw-r--r--src/cz/crcs/ectester/data/invalid/secg/secp224r1.xml2
-rw-r--r--src/cz/crcs/ectester/data/invalid/secg/secp256r1.xml2
-rw-r--r--src/cz/crcs/ectester/data/other/keys.xml14
-rw-r--r--src/cz/crcs/ectester/data/other/results.xml14
-rw-r--r--src/cz/crcs/ectester/data/schema.xsd30
-rw-r--r--src/cz/crcs/ectester/data/test/keys.xml4
-rw-r--r--src/cz/crcs/ectester/data/test/results.xml84
-rw-r--r--src/cz/crcs/ectester/data/twist/keys.xml4
-rw-r--r--src/cz/crcs/ectester/data/wrong/keys.xml28
-rw-r--r--src/cz/crcs/ectester/data/wrong/results.xml177
-rw-r--r--src/cz/crcs/ectester/data/wycheproof/keys.xml4
-rw-r--r--src/cz/crcs/ectester/data/wycheproof/results.xml272
77 files changed, 756 insertions, 312 deletions
diff --git a/src/cz/crcs/ectester/data/EC_Store.java b/src/cz/crcs/ectester/data/EC_Store.java
index cb65402..f1d4260 100644
--- a/src/cz/crcs/ectester/data/EC_Store.java
+++ b/src/cz/crcs/ectester/data/EC_Store.java
@@ -203,27 +203,15 @@ public class EC_Store {
if (direct instanceof Element) {
Element elem = (Element) direct;
- Node id = elem.getElementsByTagName("id").item(0);
- Node ka = elem.getElementsByTagName("ka").item(0);
- Node curve = elem.getElementsByTagName("curve").item(0);
- Node onekey = elem.getElementsByTagName("onekey").item(0);
- Node otherkey = elem.getElementsByTagName("otherkey").item(0);
-
- NodeList descc = elem.getElementsByTagName("desc");
- String descs = null;
- if (descc.getLength() != 0) {
- descs = descc.item(0).getTextContent();
+ NodeList ids = elem.getElementsByTagName("id");
+ if (ids.getLength() != 1) {
+ throw new SAXException("result no id?");
}
+ String id = ids.item(0).getTextContent();
- EC_KAResult kaResult = new EC_KAResult(id.getTextContent(), ka.getTextContent(), curve.getTextContent(), onekey.getTextContent(), otherkey.getTextContent(), descs);
+ EC_Data result = parseResultlike(dir, elem);
- InputStream csv = parseDataElement(dir, elem);
- if (!kaResult.readCSV(csv)) {
- throw new IOException("Invalid csv data. " + id.getTextContent());
- }
- csv.close();
-
- objMap.put(id.getTextContent(), kaResult);
+ objMap.put(id, result);
} else {
throw new SAXException("?");
}
@@ -234,6 +222,49 @@ public class EC_Store {
return new EC_Category(name, dir, desc, objMap);
}
+ private EC_Data parseResultlike(String dir, Element elem) throws SAXException, IOException {
+ String tag = elem.getTagName();
+ Node id = elem.getElementsByTagName("id").item(0);
+
+ NodeList descc = elem.getElementsByTagName("desc");
+ String descs = null;
+ if (descc.getLength() != 0) {
+ descs = descc.item(0).getTextContent();
+ }
+
+ Node curve = elem.getElementsByTagName("curve").item(0);
+
+ EC_Data result;
+ if (tag.equals("kaResult")) {
+ Node ka = elem.getElementsByTagName("ka").item(0);
+ Node onekey = elem.getElementsByTagName("onekey").item(0);
+ Node otherkey = elem.getElementsByTagName("otherkey").item(0);
+
+ result = new EC_KAResult(id.getTextContent(), ka.getTextContent(), curve.getTextContent(), onekey.getTextContent(), otherkey.getTextContent(), descs);
+ } else if (tag.equals("sigResult")) {
+ Node sig = elem.getElementsByTagName("sig").item(0);
+ Node signkey = elem.getElementsByTagName("signkey").item(0);
+ Node verifykey = elem.getElementsByTagName("verifykey").item(0);
+ NodeList datas = elem.getElementsByTagName("raw");
+ String data = null;
+ if (datas.getLength() != 0) {
+ data = datas.item(0).getTextContent();
+ }
+
+ result = new EC_SigResult(id.getTextContent(), sig.getTextContent(), curve.getTextContent(), signkey.getTextContent(), verifykey.getTextContent(), data, descs);
+ } else {
+ throw new SAXException("?");
+ }
+
+ InputStream csv = parseDataElement(dir, elem);
+ if (!result.readCSV(csv)) {
+ throw new IOException("Invalid csv data. " + id.getTextContent());
+ }
+ csv.close();
+
+ return result;
+ }
+
private EC_Params parseKeylike(String dir, Element elem) throws SAXException, IOException {
Node id = elem.getElementsByTagName("id").item(0);
Node curve = elem.getElementsByTagName("curve").item(0);
diff --git a/src/cz/crcs/ectester/data/categories.xml b/src/cz/crcs/ectester/data/categories.xml
index 38ce683..082f92c 100644
--- a/src/cz/crcs/ectester/data/categories.xml
+++ b/src/cz/crcs/ectester/data/categories.xml
@@ -77,7 +77,7 @@
<category>
<name>wrong</name>
<directory>wrong</directory>
- <desc>Wrong field curves. These should definitely give an error when used. Since the "prime" used for the field is not prime, and the field polynomials are also not irreducible. Simply put these parameters don't specify a valid elliptic curve.</desc>
+ <desc>Wrong field curves and other wrong parameters. These should definitely give an error when used. Since the "prime" used for the field is not prime, and the field polynomials are also not irreducible. Simply put these parameters don't specify a valid elliptic curve.</desc>
</category>
<category>
<name>test</name>
diff --git a/src/cz/crcs/ectester/data/cofactor/curves.xml b/src/cz/crcs/ectester/data/cofactor/curves.xml
index bb8a905..7cf2a9a 100644
--- a/src/cz/crcs/ectester/data/cofactor/curves.xml
+++ b/src/cz/crcs/ectester/data/cofactor/curves.xml
@@ -81,7 +81,13 @@
<field>prime</field>
<file>cofactor160p64.csv</file>
</curve>
-
+
+ <curve>
+ <id>cofactor192p2</id>
+ <bits>192</bits>
+ <field>prime</field>
+ <file>cofactor192p2.csv</file>
+ </curve>
<curve>
<id>cofactor163t2</id>
diff --git a/src/cz/crcs/ectester/data/cofactor/keys.xml b/src/cz/crcs/ectester/data/cofactor/keys.xml
index 8cf19a1..b4c0c90 100644
--- a/src/cz/crcs/ectester/data/cofactor/keys.xml
+++ b/src/cz/crcs/ectester/data/cofactor/keys.xml
@@ -3,9 +3,7 @@
<!ENTITY secg SYSTEM "cofactor/secg_keys.xml">
]>
<keys xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="../schema.xsd"
- category="cofactor"
- desc="">
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
<pubkey>
<id>cofactor128p2/0</id>
diff --git a/src/cz/crcs/ectester/data/composite/curves.xml b/src/cz/crcs/ectester/data/composite/curves.xml
index f77159c..d4ef2ce 100644
--- a/src/cz/crcs/ectester/data/composite/curves.xml
+++ b/src/cz/crcs/ectester/data/composite/curves.xml
@@ -41,14 +41,18 @@
<bits>384</bits>
<field>prime</field>
<file>composite384.csv</file>
- <desc>r = order = 0x05 * 0x0b * 0x3d * 0xb16aa7dc50145337cf1b2f38018ccb5cf44c22a2f7d7c22bbe5c572d2cb9a04cb1081357c6a1c97cc39ab62596867</desc>
+ <desc>r = order = 0x05 * 0x0b * 0x3d *
+ 0xb16aa7dc50145337cf1b2f38018ccb5cf44c22a2f7d7c22bbe5c572d2cb9a04cb1081357c6a1c97cc39ab62596867
+ </desc>
</curve>
<curve>
<id>whole/composite521</id>
<bits>521</bits>
<field>prime</field>
<file>composite521.csv</file>
- <desc>r = order = 0x02 * 0x05 * 0x1f * 0x4a5aac4fac3ea253b66c3e650f5173b30467f28b8e841d37ce69bb0831a5939ad3dd082b750577ec4592d4d58916c87a9b732d8ddae435c26f8f779d2467f50f</desc>
+ <desc>r = order = 0x02 * 0x05 * 0x1f *
+ 0x4a5aac4fac3ea253b66c3e650f5173b30467f28b8e841d37ce69bb0831a5939ad3dd082b750577ec4592d4d58916c87a9b732d8ddae435c26f8f779d2467f50f
+ </desc>
</curve>
<curve>
@@ -190,7 +194,7 @@
<file>composite192_rg0.csv</file>
<desc>|G| divides r(so [r]G = infinity), but r != |G| = 0x302b72431ff070e7e06799</desc>
</curve>
-
+
<curve>
<id>pq/composite224</id>
<bits>224</bits>
@@ -252,11 +256,11 @@
</curve>
<curve>
- <id>pp/carmichael128</id>
- <bits>128</bits>
- <field>prime</field>
- <file>carmichael_128.csv</file>
- <desc>r = Carmichael pseudoprime = 0x2ddbfe0f1f7 * 0x5bb7fc1e3ed * 0x8993fa2d5e3</desc>
+ <id>pp/carmichael128</id>
+ <bits>128</bits>
+ <field>prime</field>
+ <file>carmichael_128.csv</file>
+ <desc>r = Carmichael pseudoprime = 0x2ddbfe0f1f7 * 0x5bb7fc1e3ed * 0x8993fa2d5e3</desc>
</curve>
<curve>
<id>pp/carmichael192</id>
@@ -277,245 +281,388 @@
<bits>256</bits>
<field>prime</field>
<file>carmichael_256.csv</file>
- <desc>r = Carmichael pseudoprime = 0x129e94800bf86bd2d04ce1 * 0x253d290017f0d7a5a099c1 * 0x37dbbd8023e9437870e6a1</desc>
+ <desc>r = Carmichael pseudoprime = 0x129e94800bf86bd2d04ce1 * 0x253d290017f0d7a5a099c1 *
+ 0x37dbbd8023e9437870e6a1
+ </desc>
</curve>
<curve>
<id>pp/carmichael384</id>
<bits>384</bits>
<field>prime</field>
<file>carmichael_384.csv</file>
- <desc>r = Carmichael pseudoprime = 0x78b4fa97e97300a5c46b32fb522cf76f * 0xf169f52fd2e6014b88d665f6a459eedd * 0x16a1eefc7bc5901f14d4198f1f686e64b</desc>
+ <desc>r = Carmichael pseudoprime = 0x78b4fa97e97300a5c46b32fb522cf76f * 0xf169f52fd2e6014b88d665f6a459eedd *
+ 0x16a1eefc7bc5901f14d4198f1f686e64b
+ </desc>
</curve>
<curve>
<id>pp/carmichael512</id>
<bits>512</bits>
<field>prime</field>
<file>carmichael_512.csv</file>
- <desc>r = Carmichael pseudoprime = 0x2f6e41969c169b4e97b0a1c46ca4fb3a8f294afaefb * 0x5edc832d382d369d2f614388d949f6751e5295f5df5 * 0x8e4ac4c3d443d1ebc711e54d45eef1afad7be0f0cef</desc>
+ <desc>r = Carmichael pseudoprime = 0x2f6e41969c169b4e97b0a1c46ca4fb3a8f294afaefb *
+ 0x5edc832d382d369d2f614388d949f6751e5295f5df5 * 0x8e4ac4c3d443d1ebc711e54d45eef1afad7be0f0cef
+ </desc>
</curve>
<curve>
<id>pp/carmichael521</id>
<bits>521</bits>
<field>prime</field>
<file>carmichael_521.csv</file>
- <desc>r = Carmichael pseudoprime = 0x170ac4fd154250e674f9ac6e0c29a214c6d6553e4f11 * 0x2e1589fa2a84a1cce9f358dc185344298dacaa7c9e21 * 0x45204ef73fc6f2b35eed054a247ce63e5482ffbaed31</desc>
+ <desc>r = Carmichael pseudoprime = 0x170ac4fd154250e674f9ac6e0c29a214c6d6553e4f11 *
+ 0x2e1589fa2a84a1cce9f358dc185344298dacaa7c9e21 * 0x45204ef73fc6f2b35eed054a247ce63e5482ffbaed31
+ </desc>
</curve>
<curve>
- <id>varying/160/1</id>
+ <id>varying/160/first/1</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/2a.csv</file>
+ <file>varying/160/first/2a.csv</file>
<desc>r = 2 bit prime = 2</desc>
</curve>
<curve>
- <id>varying/160/2</id>
+ <id>varying/160/first/2</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/2b.csv</file>
+ <file>varying/160/first/2b.csv</file>
<desc>r = 2 bit prime = 3</desc>
</curve>
<curve>
- <id>varying/160/3</id>
+ <id>varying/160/first/3</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/3.csv</file>
+ <file>varying/160/first/3.csv</file>
<desc>r = 3 bit prime</desc>
</curve>
<curve>
- <id>varying/160/4</id>
+ <id>varying/160/first/4</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/4.csv</file>
+ <file>varying/160/first/4.csv</file>
<desc>r = 4 bit prime</desc>
</curve>
<curve>
- <id>varying/160/5</id>
+ <id>varying/160/first/5</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/5.csv</file>
+ <file>varying/160/first/5.csv</file>
<desc>r = 5 bit prime</desc>
</curve>
<curve>
- <id>varying/160/6</id>
+ <id>varying/160/first/6</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/6.csv</file>
+ <file>varying/160/first/6.csv</file>
<desc>r = 6 bit prime</desc>
</curve>
<curve>
- <id>varying/160/7</id>
+ <id>varying/160/first/7</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/7.csv</file>
+ <file>varying/160/first/7.csv</file>
<desc>r = 7 bit prime</desc>
</curve>
<curve>
- <id>varying/160/8</id>
+ <id>varying/160/first/8</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/8.csv</file>
+ <file>varying/160/first/8.csv</file>
<desc>r = 8 bit prime</desc>
</curve>
<curve>
- <id>varying/160/10</id>
+ <id>varying/160/first/10</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/10.csv</file>
+ <file>varying/160/first/10.csv</file>
<desc>r = 10 bit prime</desc>
</curve>
<curve>
- <id>varying/160/12</id>
+ <id>varying/160/first/12</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/12.csv</file>
+ <file>varying/160/first/12.csv</file>
<desc>r = 12 bit prime</desc>
</curve>
<curve>
- <id>varying/160/14</id>
+ <id>varying/160/first/14</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/14.csv</file>
+ <file>varying/160/first/14.csv</file>
<desc>r = 14 bit prime</desc>
</curve>
<curve>
- <id>varying/160/16</id>
+ <id>varying/160/first/16</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/16.csv</file>
+ <file>varying/160/first/16.csv</file>
<desc>r = 16 bit prime</desc>
</curve>
<curve>
- <id>varying/160/20</id>
+ <id>varying/160/first/20</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/20.csv</file>
+ <file>varying/160/first/20.csv</file>
<desc>r = 20 bit prime</desc>
</curve>
<curve>
- <id>varying/160/25</id>
+ <id>varying/160/first/25</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/25.csv</file>
+ <file>varying/160/first/25.csv</file>
<desc>r = 25 bit prime</desc>
</curve>
<curve>
- <id>varying/160/32</id>
+ <id>varying/160/first/32</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/32.csv</file>
+ <file>varying/160/first/32.csv</file>
<desc>r = 32 bit prime</desc>
</curve>
<curve>
- <id>varying/160/48</id>
+ <id>varying/160/first/48</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/48.csv</file>
+ <file>varying/160/first/48.csv</file>
<desc>r = 48 bit prime</desc>
</curve>
<curve>
- <id>varying/160/64</id>
+ <id>varying/160/first/64</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/64.csv</file>
+ <file>varying/160/first/64.csv</file>
<desc>r = 64 bit prime</desc>
</curve>
<curve>
- <id>varying/160/70</id>
+ <id>varying/160/first/70</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/70.csv</file>
+ <file>varying/160/first/70.csv</file>
<desc>r = 70 bit prime</desc>
</curve>
<curve>
- <id>varying/160/80</id>
+ <id>varying/160/first/80</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/80.csv</file>
+ <file>varying/160/first/80.csv</file>
<desc>r = 80 bit prime</desc>
</curve>
<curve>
- <id>varying/160/90</id>
+ <id>varying/160/first/90</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/90.csv</file>
+ <file>varying/160/first/90.csv</file>
<desc>r = 90 bit prime</desc>
</curve>
<curve>
- <id>varying/160/96</id>
+ <id>varying/160/first/96</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/96.csv</file>
+ <file>varying/160/first/96.csv</file>
<desc>r = 96 bit prime</desc>
</curve>
<curve>
- <id>varying/160/112</id>
+ <id>varying/160/first/112</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/112.csv</file>
+ <file>varying/160/first/112.csv</file>
<desc>r = 112 bit prime</desc>
</curve>
<curve>
- <id>varying/160/128</id>
+ <id>varying/160/first/128</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/128.csv</file>
+ <file>varying/160/first/128.csv</file>
<desc>r = 128 bit prime</desc>
</curve>
<curve>
- <id>varying/160/135</id>
+ <id>varying/160/first/135</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/135.csv</file>
+ <file>varying/160/first/135.csv</file>
<desc>r = 135 bit prime</desc>
</curve>
<curve>
- <id>varying/160/140</id>
+ <id>varying/160/first/140</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/140.csv</file>
+ <file>varying/160/first/140.csv</file>
<desc>r = 140 bit prime</desc>
</curve>
<curve>
- <id>varying/160/144</id>
+ <id>varying/160/first/144</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/144.csv</file>
+ <file>varying/160/first/144.csv</file>
<desc>r = 144 bit prime</desc>
</curve>
<curve>
- <id>varying/160/146</id>
+ <id>varying/160/first/146</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/146.csv</file>
+ <file>varying/160/first/146.csv</file>
<desc>r = 146 bit prime</desc>
</curve>
<curve>
- <id>varying/160/148</id>
+ <id>varying/160/first/148</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/148.csv</file>
+ <file>varying/160/first/148.csv</file>
<desc>r = 148 bit prime</desc>
</curve>
<curve>
- <id>varying/160/150</id>
+ <id>varying/160/first/150</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/150.csv</file>
+ <file>varying/160/first/150.csv</file>
<desc>r = 150 bit prime</desc>
</curve>
<curve>
- <id>varying/160/152</id>
+ <id>varying/160/first/152</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/152.csv</file>
+ <file>varying/160/first/152.csv</file>
<desc>r = 152 bit prime</desc>
</curve>
<curve>
- <id>varying/160/152cofactor</id>
+ <id>varying/160/first/152cofactor</id>
<bits>160</bits>
<field>prime</field>
- <file>varying/160/152_cofactor.csv</file>
+ <file>varying/160/first/152_cofactor.csv</file>
<desc>r = 152 bit prime, with correct cofactor</desc>
</curve>
+
+ <curve>
+ <id>varying/160/second/140</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/140.csv</file>
+ <desc>r = 140 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/141</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/141.csv</file>
+ <desc>r = 141 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/142</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/142.csv</file>
+ <desc>r = 142 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/143</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/143.csv</file>
+ <desc>r = 143 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/144</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/144.csv</file>
+ <desc>r = 144 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/145</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/145.csv</file>
+ <desc>r = 145 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/146</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/146.csv</file>
+ <desc>r = 146 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/147</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/147.csv</file>
+ <desc>r = 147 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/148</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/148.csv</file>
+ <desc>r = 148 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/149</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/149.csv</file>
+ <desc>r = 149 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/150</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/150.csv</file>
+ <desc>r = 150 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/151</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/151.csv</file>
+ <desc>r = 151 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/152</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/152.csv</file>
+ <desc>r = 152 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/153</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/153.csv</file>
+ <desc>r = 153 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/154</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/154.csv</file>
+ <desc>r = 154 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/155</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/155.csv</file>
+ <desc>r = 155 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/156</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/156.csv</file>
+ <desc>r = 156 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/157</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/157.csv</file>
+ <desc>r = 157 bit prime.</desc>
+ </curve>
+ <curve>
+ <id>varying/160/second/158</id>
+ <bits>160</bits>
+ <field>prime</field>
+ <file>varying/160/second/158.csv</file>
+ <desc>r = 158 bit prime.</desc>
+ </curve>
+
</curves> \ No newline at end of file
diff --git a/src/cz/crcs/ectester/data/composite/keys.xml b/src/cz/crcs/ectester/data/composite/keys.xml
index 8a98135..da770d8 100644
--- a/src/cz/crcs/ectester/data/composite/keys.xml
+++ b/src/cz/crcs/ectester/data/composite/keys.xml
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<keys xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="../schema.xsd"
- category="composite"
- desc="Points on the composite curves, very small point orders(3-5).">
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
<pubkey>
<id>composite128/1</id>
<inline>0x746fa441b3a54d3c531bd59d119f400d,0x73aff68dbd96e1485cd2de0f6389cc70</inline>
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/10.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/10.csv
index 5fa842a..5fa842a 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/10.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/10.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/112.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/112.csv
index 633ccd5..633ccd5 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/112.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/112.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/12.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/12.csv
index 62bb1a0..62bb1a0 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/12.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/12.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/128.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/128.csv
index 5f8c532..5f8c532 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/128.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/128.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/135.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/135.csv
index 232abff..232abff 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/135.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/135.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/14.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/14.csv
index c8df53e..c8df53e 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/14.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/14.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/140.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/140.csv
index 4d59858..4d59858 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/140.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/140.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/144.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/144.csv
index e8c6492..e8c6492 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/144.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/144.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/146.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/146.csv
index f656c72..f656c72 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/146.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/146.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/148.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/148.csv
index b292889..b292889 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/148.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/148.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/150.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/150.csv
index c1bf12e..c1bf12e 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/150.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/150.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/152.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/152.csv
index 24a03ba..24a03ba 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/152.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/152.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/152_cofactor.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/152_cofactor.csv
index 7861bbd..7861bbd 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/152_cofactor.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/152_cofactor.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/16.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/16.csv
index fd76ff7..fd76ff7 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/16.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/16.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/20.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/20.csv
index 940d10c..940d10c 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/20.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/20.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/25.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/25.csv
index 318099b..318099b 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/25.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/25.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/2a.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/2a.csv
index 670f4bc..670f4bc 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/2a.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/2a.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/2b.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/2b.csv
index 216827b..216827b 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/2b.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/2b.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/3.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/3.csv
index 18ec491..18ec491 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/3.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/3.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/32.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/32.csv
index fddfeee..fddfeee 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/32.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/32.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/4.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/4.csv
index a5b9e09..a5b9e09 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/4.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/4.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/48.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/48.csv
index 202a15b..202a15b 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/48.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/48.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/5.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/5.csv
index 5f0597c..5f0597c 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/5.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/5.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/6.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/6.csv
index 9c1528f..9c1528f 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/6.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/6.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/64.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/64.csv
index 94a2709..94a2709 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/64.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/64.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/7.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/7.csv
index 170b180..170b180 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/7.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/7.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/70.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/70.csv
index 1dbf9c0..1dbf9c0 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/70.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/70.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/8.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/8.csv
index 232df05..232df05 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/8.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/8.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/80.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/80.csv
index da082ef..da082ef 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/80.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/80.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/90.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/90.csv
index d67e673..d67e673 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/90.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/90.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/96.csv b/src/cz/crcs/ectester/data/composite/varying/160/first/96.csv
index 5dd2d5c..5dd2d5c 100644
--- a/src/cz/crcs/ectester/data/composite/varying/160/96.csv
+++ b/src/cz/crcs/ectester/data/composite/varying/160/first/96.csv
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/140.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/140.csv
new file mode 100644
index 0000000..08f5ba1
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/140.csv
@@ -0,0 +1 @@
+0xcb0fbd7d31f129c9445949ac2a53313dc664dcf5,0xbac859aab1168154552b678c5710381db579e093,0xa6bba8fe9ce31053ef6df534c0f51abf7f2b84f6,0x89ddb9394b1e7aa83435762bd9fb10b382112c9d,0x0195f79a927f4933fc96fd11d22f645fd2a6165e,0x00000d27f195fd2b5a2ce76e0a0883493af40f29,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/141.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/141.csv
new file mode 100644
index 0000000..896493f
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/141.csv
@@ -0,0 +1 @@
+0xad848c5b6dd0a0a4069abc227c1067e0181b2737,0x19ee65c4d27dbb11e6209ca476e192d09b2d1c63,0x764d165a2dade5d7a08a76111d7fbbc2d11ef0e0,0x5bcd89823c97b60ad38738fe720f185f3b40b45e,0x09a715128167a9c88c740460bd69458fa9d4fe46,0x00001998e626a1aed4c95d9d4b4c2b7a7f7a9db7,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/142.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/142.csv
new file mode 100644
index 0000000..cc5fd67
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/142.csv
@@ -0,0 +1 @@
+0xb5d6a607a39940bc0048f4aa5ccdc4d5a5ce610d,0x2a1ae87f817fa325f32f2e0105f282027b2ba43f,0x659ed881b0d7116353d5f7a915d2f19e893d69aa,0x1b334db8e98df484ad04272df15f3e86d39ef22e,0x4cd77e9caad63bd4607eb0ed55e6beb23ff450ac,0x00003a204ba60e40fa9b658d3a1a8b2a9bc3cf59,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/143.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/143.csv
new file mode 100644
index 0000000..9c4861e
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/143.csv
@@ -0,0 +1 @@
+0xd4b9159c7fc2792372543d143613b52f59998f97,0x2d42a2dfc137411a8c70ade2bdf0592b40943710,0x05e4b77414fb3c55c130f2bcaef25f3d151bd099,0x5a756a4341b6a3e22dead483df6f181e8b9a2a11,0xcd4da9413d50e4d5215e6bbcf6d5a7b0e3a3daad,0x000072ff5242224738c7ce5b71bc1f89fd2b4b37,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/144.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/144.csv
new file mode 100644
index 0000000..db68fad
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/144.csv
@@ -0,0 +1 @@
+0xb1782dbf5f2c4021d8b9b5b363c82e0ca3b6777d,0x6076e1773b2c55518400dc32e80be429edcb965a,0x42ea1ee077a97b47a0e1e768e6926639b66ce893,0x9c662a05f65b34ddc7f87b6b7684a07b898a1c34,0x2845b2b399e0159f6096acb982ef4db0914088c9,0x0000c87bb99f30317e9dac369288e804184aa599,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/145.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/145.csv
new file mode 100644
index 0000000..08c8c4f
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/145.csv
@@ -0,0 +1 @@
+0xb527a5bd64b0565b27ff7cf9602983f1614fffa3,0x19d78ae1d883b88aa6f0f7858d4e1be5a8f7e3fb,0x209c90f1e463fe85994da3a49bf1573b51174a1a,0x19d11cc60298336167b838b1980f7220c4a38ae4,0x370c05e2d1b3f2da9f0c7613a156c079ede829a7,0x0001dbc7f60ad202d5d0beea6a46ba5e0cfdb415,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/146.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/146.csv
new file mode 100644
index 0000000..3afd1a0
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/146.csv
@@ -0,0 +1 @@
+0xee5432006a4e6cbe37b806adb8caa4ea3db20871,0x8840485629c0217fe0c06136960a8ee0ff052cf6,0x4c2d28b41bf1195979928396a38349fba3f8790c,0x7d220bdba9cccd7ac1eff4c0faa15943df8c5661,0xafac34dd20bc52fc5d591ba7b3ba61804573cea7,0x0003e4f1ab7695bf568e94399144ba99087b8b43,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/147.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/147.csv
new file mode 100644
index 0000000..895acfe
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/147.csv
@@ -0,0 +1 @@
+0xd4af3495a36eaecf01f5333d4ed9c0557e7d290f,0x8009417988238ec78161b22a5193683dd3a30db1,0x78194aed072799ea84118a326f19db81c96cc133,0x43c7510009f2a50acf960aee86f8e5f4680bb399,0x63e3c2609b3cb63a0bfabe048d4910b98806f986,0x000768a687b40a678e8b32a197c56a5e8e73c2e9,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/148.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/148.csv
new file mode 100644
index 0000000..0e2221f
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/148.csv
@@ -0,0 +1 @@
+0xb4b26d3a176014e5e78384429e7cfb7fc54e5977,0x3314626f01d24d21beda9d48df49e3ecbc7cb71e,0x3756db6c83ddaa8e67c67e58359cc9a9cf0fd855,0x8622b6abfae956ec4340565a8441e3829553dc9d,0x548d45e6ed7673b271076e14c3d6e56b58edbc95,0x000c1b3ad6efad76b6c3bc52edecbe9558da19c5,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/149.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/149.csv
new file mode 100644
index 0000000..2fb41e3
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/149.csv
@@ -0,0 +1 @@
+0xceceeaa7a8152749b1ecf9bc92f6fdc6e9b6090d,0x8ae42228a534ba5893260370f28090fb64e9946e,0x638476b65f061b9519065ca3dee37d03ee253b6f,0xca0c26fa582635625744d77e72134099aacc7d51,0x22342b88baf41bb6d4b8d61f9e7e2d767838ae49,0x001aa507af8faa15cf84906cef78d950265b459d,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/150.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/150.csv
new file mode 100644
index 0000000..e38fe99
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/150.csv
@@ -0,0 +1 @@
+0xb7adb7da47532691380d279b714329a18c73bf5b,0x62b5535930b3b6291724d2931c6d6e77b9e7603e,0xa6e5735c172868621e282c8606f0f7bf69196b98,0x936da9db53a9cdf04603e3e74dfd597e17159c47,0x0e57b546f6b8fce730f9eb62a15047533b0866e5,0x0038dbb1f277473e654a9df7571e61d3d954144d,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/151.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/151.csv
new file mode 100644
index 0000000..9b665bc
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/151.csv
@@ -0,0 +1 @@
+0xb43604e48b105f7a9a3b48c7bfd6d3e0ac093e29,0x444d3467678862170058dd92531a9e2bbe28ca79,0x89c6c1006cf8d019db1813b81549d7ddeff6bfd0,0x48faa03d1bd1142749c886ff0ed8cf990cfae57e,0x7188beb85a7c04ca83328b66f74d284b8d4ab1c5,0x006b0a1bda4f09218bf0b0c4db0eda6a4452e5e5,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/152.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/152.csv
new file mode 100644
index 0000000..854a93f
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/152.csv
@@ -0,0 +1 @@
+0xd998f399cb387874de3a6a56d1babc55720e5abf,0x9c8f7ea6edb66b2570d884fd8eb6b7bfa832fe5a,0xa2a58c9670ac7a17713263ccf56187f4b3a9538c,0x37a374fcc33795ab48f2c5cefb55059e4047a5bd,0x688bb2276ffbdb652f5a9adb8f6861fa58f0a348,0x00ddee9ca918b3fc62cc35c868f2841bce9f9587,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/153.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/153.csv
new file mode 100644
index 0000000..90ff712
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/153.csv
@@ -0,0 +1 @@
+0xcb5e3c67cebdcab6da9abee717934147f573e455,0x8528cb57477cb9daf1b39f210ec4305e38d59af9,0x625bc0553d8acf552224e9ef4a0d680bd097af1a,0x7cd27cf687a0f4cb8b192d2a301dc155e382a51a,0x79b81b30498366d71e34a6e73d7fc1acb70d887e,0x0199f05982a2c1179cef17249652a9866f31ffe5,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/154.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/154.csv
new file mode 100644
index 0000000..1c45df7
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/154.csv
@@ -0,0 +1 @@
+0xc790ce0bbeb04fc50f56ffa90ac697664b33a0c5,0x3c27b2c2fef3181c1b7b342f5d0b141e9b1fa083,0x643c56c57d4dd643ce041ea26bf84ad607b768cf,0x03ac9106b43aefc2474993dc00ca435526e62dbd,0x218216a290e95e1d06ce4a633604067084226b3e,0x03458579e5bfbe29004061a83bdcbf9f03b740df,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/155.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/155.csv
new file mode 100644
index 0000000..a3dcc8c
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/155.csv
@@ -0,0 +1 @@
+0xb291f1d68a548cb930da845e4dddde4a459fca55,0x3ff55740d89a34a571572edfd9603ac231420227,0x17109ebf052464e986afe2008ae70355b585b07d,0x27d235656b6608a9df667f7ee99f76e9c6001d8d,0x1cf7d6d12b86ef2fd9b9fb032ab38a902d28fcb2,0x062857c99ad6c70f36a668b6cb0b39ca3859ee3d,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/156.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/156.csv
new file mode 100644
index 0000000..7614b13
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/156.csv
@@ -0,0 +1 @@
+0xb5753cb547a5fe317e9e85a7b0ecf7bcc8358b89,0x39c31f1f78b01c7ab7010de50026f25884ecfac1,0x5acf7eaab9c2bbb84dfdcf6253983c75e3f892a9,0x8c109fac40ecf79c874b1347c89bdd0b1e32bd58,0x198bc391b21d8be4e9b47250a86f03d3bfb4cd61,0x0df5537067f9138da74724f682ce1971c0319dff,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/157.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/157.csv
new file mode 100644
index 0000000..06cd933
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/157.csv
@@ -0,0 +1 @@
+0xd7e7392c25ed14a0c4f61532461ebb36e8aac95d,0xbfa946439770d5832c224072c35a523550c63470,0x6cc6a5296eae2706bd6acfff1c6ca1e20be17f15,0x30fafbc8479b28fe86fe336f67035094e74deaaa,0x3621025307234ee276a45b78f101f88353d1ddf9,0x1ed7e39897b42784ae6c29501574867ebf7c3d5b,0x01
diff --git a/src/cz/crcs/ectester/data/composite/varying/160/second/158.csv b/src/cz/crcs/ectester/data/composite/varying/160/second/158.csv
new file mode 100644
index 0000000..c35a628
--- /dev/null
+++ b/src/cz/crcs/ectester/data/composite/varying/160/second/158.csv
@@ -0,0 +1 @@
+0xa686fb6e6f34c9e85dc6ae22a1d84a17b547b82d,0xa5c25d0cf5bd6443f3342843108b9b4b795be6ca,0x59c73b85c6591dd41f185e6cb009a3068717197b,0x4dc987eec93319f036dea2ec3d2ae58639c44574,0x6799aaad16a911c57f9643c38fe3cabf2e41644b,0x378253cf7a66edf81f41bedf086cec98847ad68b,0x01
diff --git a/src/cz/crcs/ectester/data/degenerate/keys.xml b/src/cz/crcs/ectester/data/degenerate/keys.xml
index cbeecce..b999ca0 100644
--- a/src/cz/crcs/ectester/data/degenerate/keys.xml
+++ b/src/cz/crcs/ectester/data/degenerate/keys.xml
@@ -4,9 +4,7 @@
<!ENTITY brainpool SYSTEM "degenerate/brainpool.xml">
]>
<keys xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="../schema.xsd"
- category="degenerate"
- desc="">
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
<!--
This is messy and what not, but Java XML api doesn't support
the XInclude selector necessary to make this work nicely, so XInclude is out...
diff --git a/src/cz/crcs/ectester/data/degenerate/secg.xml b/src/cz/crcs/ectester/data/degenerate/secg.xml
index 7d6bce8..2cf81e7 100644
--- a/src/cz/crcs/ectester/data/degenerate/secg.xml
+++ b/src/cz/crcs/ectester/data/degenerate/secg.xml
@@ -380,37 +380,37 @@
<pubkey>
<id>secp256k1/0</id>
- <inline>0x00000000000000000000000000000000000000000000000000000000000000000000,0x0000fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2e</inline>
+ <inline>0x0000000000000000000000000000000000000000000000000000000000000000,0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2e</inline>
<curve>secg/secp256k1</curve>
<desc>degenerate order = 2</desc>
</pubkey>
<pubkey>
<id>secp256k1/1</id>
- <inline>0x00000000000000000000000000000000000000000000000000000000000000000000,0x0000851695d49a83f8ef919bb86153cbcb16630fb68aed0a766a3ec693d68e6afa40</inline>
+ <inline>0x0000000000000000000000000000000000000000000000000000000000000000,0x851695d49a83f8ef919bb86153cbcb16630fb68aed0a766a3ec693d68e6afa40</inline>
<curve>secg/secp256k1</curve>
<desc>degenerate order = 3</desc>
</pubkey>
<pubkey>
<id>secp256k1/2</id>
- <inline>0x00000000000000000000000000000000000000000000000000000000000000000000,0x0000a2ab335e7a5b9784e9425431411a8f02a1e39029745c0d2567e7b217154fe2cb</inline>
+ <inline>0x0000000000000000000000000000000000000000000000000000000000000000,0xa2ab335e7a5b9784e9425431411a8f02a1e39029745c0d2567e7b217154fe2cb</inline>
<curve>secg/secp256k1</curve>
<desc>degenerate order = 7</desc>
</pubkey>
<pubkey>
<id>secp256k1/3</id>
- <inline>0x00000000000000000000000000000000000000000000000000000000000000000000,0x000068105a205ec4e9ceb2b1dd5285ab623cf09e207bad567e15482d24e582ff833f</inline>
+ <inline>0x0000000000000000000000000000000000000000000000000000000000000000,0x68105a205ec4e9ceb2b1dd5285ab623cf09e207bad567e15482d24e582ff833f</inline>
<curve>secg/secp256k1</curve>
<desc>degenerate order = 13441</desc>
</pubkey>
<pubkey>
<id>secp256k1/4</id>
- <inline>0x00000000000000000000000000000000000000000000000000000000000000000000,0x0000212e9abc82e8709493c087cd14e2ebd253ecf3cd0abd68a2b7b766fcc2aa4ca6</inline>
+ <inline>0x0000000000000000000000000000000000000000000000000000000000000000,0x212e9abc82e8709493c087cd14e2ebd253ecf3cd0abd68a2b7b766fcc2aa4ca6</inline>
<curve>secg/secp256k1</curve>
<desc>degenerate order = 205115282021455665897114700593932402728804164701536103180137503955397371</desc>
</pubkey>
<pubkey>
<id>secp256k1/gen</id>
- <inline>0x00000000000000000000000000000000000000000000000000000000000000000000,0x00000000000000000000000000000000000000000000000000000000000000000003</inline>
+ <inline>0x0000000000000000000000000000000000000000000000000000000000000000,0x0000000000000000000000000000000000000000000000000000000000000003</inline>
<curve>secg/secp256k1</curve>
<desc>generator of Fp^*</desc>
</pubkey>
diff --git a/src/cz/crcs/ectester/data/invalid/keys.xml b/src/cz/crcs/ectester/data/invalid/keys.xml
index 9aea479..d630129 100644
--- a/src/cz/crcs/ectester/data/invalid/keys.xml
+++ b/src/cz/crcs/ectester/data/invalid/keys.xml
@@ -27,9 +27,7 @@
<!ENTITY secp256r1 SYSTEM "invalid/secg/secp256r1.xml">
]>
<keys xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="../schema.xsd"
- category="invalid"
- desc="">
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
<!--
This is messy and what not, but Java XML api doesn't support
the XInclude selector necessary to make this work nicely, so XInclude is out...
diff --git a/src/cz/crcs/ectester/data/invalid/secg/secp112r1.xml b/src/cz/crcs/ectester/data/invalid/secg/secp112r1.xml
index 316f0f6..b326bc5 100644
--- a/src/cz/crcs/ectester/data/invalid/secg/secp112r1.xml
+++ b/src/cz/crcs/ectester/data/invalid/secg/secp112r1.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<pubkey>
<id>secp112r1/0</id>
- <inline>0xa58bdc3b9dab98a634ca647d4645,0x0</inline>
+ <inline>0xa58bdc3b9dab98a634ca647d4645,0x0000000000000000000000000000</inline>
<curve>secg/secp112r1</curve>
<desc>invalid order = 2</desc>
</pubkey>
diff --git a/src/cz/crcs/ectester/data/invalid/secg/secp112r2.xml b/src/cz/crcs/ectester/data/invalid/secg/secp112r2.xml
index 536cb56..78e84b2 100644
--- a/src/cz/crcs/ectester/data/invalid/secg/secp112r2.xml
+++ b/src/cz/crcs/ectester/data/invalid/secg/secp112r2.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<pubkey>
<id>secp112r2/0</id>
- <inline>0xa991c6f86f5bdabfe4d430b3a5dc,0x0</inline>
+ <inline>0xa991c6f86f5bdabfe4d430b3a5dc,0x0000000000000000000000000000</inline>
<curve>secg/secp112r2</curve>
<desc>invalid order = 2</desc>
</pubkey>
diff --git a/src/cz/crcs/ectester/data/invalid/secg/secp128r1.xml b/src/cz/crcs/ectester/data/invalid/secg/secp128r1.xml
index 76f0aff..8903688 100644
--- a/src/cz/crcs/ectester/data/invalid/secg/secp128r1.xml
+++ b/src/cz/crcs/ectester/data/invalid/secg/secp128r1.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<pubkey>
<id>secp128r1/0</id>
- <inline>0xad532d7437555507e85fee6591b8565,0x000000000000000000000000000000000</inline>
+ <inline>0x0ad532d7437555507e85fee6591b8565,0x00000000000000000000000000000000</inline>
<curve>secg/secp128r1</curve>
<desc>invalid order = 2</desc>
</pubkey>
@@ -19,7 +19,7 @@
</pubkey>
<pubkey>
<id>secp128r1/3</id>
- <inline>0xcd1deefa8374505908cb6959fb919cc7,0x29013f0415d73458e13fbc11655001b</inline>
+ <inline>0xcd1deefa8374505908cb6959fb919cc7,0x029013f0415d73458e13fbc11655001b</inline>
<curve>secg/secp128r1</curve>
<desc>invalid order = 7</desc>
</pubkey>
diff --git a/src/cz/crcs/ectester/data/invalid/secg/secp160r1.xml b/src/cz/crcs/ectester/data/invalid/secg/secp160r1.xml
index c9ae8da..83271f0 100644
--- a/src/cz/crcs/ectester/data/invalid/secg/secp160r1.xml
+++ b/src/cz/crcs/ectester/data/invalid/secg/secp160r1.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<pubkey>
<id>secp160r1/0</id>
- <inline>0xc0cfe6c13bc5460e2fbd931342998c35e62658bb,0x0</inline>
+ <inline>0xc0cfe6c13bc5460e2fbd931342998c35e62658bb,0x0000000000000000000000000000000000000000</inline>
<curve>secg/secp160r1</curve>
<desc>invalid order = 2</desc>
</pubkey>
diff --git a/src/cz/crcs/ectester/data/invalid/secg/secp160r2.xml b/src/cz/crcs/ectester/data/invalid/secg/secp160r2.xml
index b1658c5..21fa51b 100644
--- a/src/cz/crcs/ectester/data/invalid/secg/secp160r2.xml
+++ b/src/cz/crcs/ectester/data/invalid/secg/secp160r2.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<pubkey>
<id>secp160r2/0</id>
- <inline>0xc6e84ac83f87603a1d57367f565e1af3b0cdcbc4,0x0</inline>
+ <inline>0xc6e84ac83f87603a1d57367f565e1af3b0cdcbc4,0x0000000000000000000000000000000000000000</inline>
<curve>secg/secp160r2</curve>
<desc>invalid order = 2</desc>
</pubkey>
diff --git a/src/cz/crcs/ectester/data/invalid/secg/secp192r1.xml b/src/cz/crcs/ectester/data/invalid/secg/secp192r1.xml
index e823fed..feff091 100644
--- a/src/cz/crcs/ectester/data/invalid/secg/secp192r1.xml
+++ b/src/cz/crcs/ectester/data/invalid/secg/secp192r1.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<pubkey>
<id>secp192r1/0</id>
- <inline>0x5dbd30be3f1e5b0fff852abbb3db1a0c6a41e5af386acc2e,0x0</inline>
+ <inline>0x5dbd30be3f1e5b0fff852abbb3db1a0c6a41e5af386acc2e,0x000000000000000000000000000000000000000000000000</inline>
<curve>secg/secp192r1</curve>
<desc>invalid order = 2</desc>
</pubkey>
diff --git a/src/cz/crcs/ectester/data/invalid/secg/secp224r1.xml b/src/cz/crcs/ectester/data/invalid/secg/secp224r1.xml
index 3f8c8fc..c25d79b 100644
--- a/src/cz/crcs/ectester/data/invalid/secg/secp224r1.xml
+++ b/src/cz/crcs/ectester/data/invalid/secg/secp224r1.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<pubkey>
<id>secp224r1/0</id>
- <inline>0x15813b67113a4bdbd68031077a43009cce8ac33fbb0f94d1307cbd91,0x0</inline>
+ <inline>0x15813b67113a4bdbd68031077a43009cce8ac33fbb0f94d1307cbd91,0x00000000000000000000000000000000000000000000000000000000</inline>
<curve>secg/secp224r1</curve>
<desc>invalid order = 2</desc>
</pubkey>
diff --git a/src/cz/crcs/ectester/data/invalid/secg/secp256r1.xml b/src/cz/crcs/ectester/data/invalid/secg/secp256r1.xml
index 2c23ea7..8e137f2 100644
--- a/src/cz/crcs/ectester/data/invalid/secg/secp256r1.xml
+++ b/src/cz/crcs/ectester/data/invalid/secg/secp256r1.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<pubkey>
<id>secp256r1/0</id>
- <inline>0x8f12f2d85ee6c6fb911b0b6c636785e347256edd7add0da5091fe43844f3ad0e,0x0</inline>
+ <inline>0x8f12f2d85ee6c6fb911b0b6c636785e347256edd7add0da5091fe43844f3ad0e,0x0000000000000000000000000000000000000000000000000000000000000000</inline>
<curve>secg/secp256r1</curve>
<desc>invalid order = 2</desc>
</pubkey>
diff --git a/src/cz/crcs/ectester/data/other/keys.xml b/src/cz/crcs/ectester/data/other/keys.xml
new file mode 100644
index 0000000..d06de81
--- /dev/null
+++ b/src/cz/crcs/ectester/data/other/keys.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<keys xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
+ <privkey>
+ <id>openssl-bug/skey</id>
+ <inline>0x4543A4D2C9DDD5516FD16D5498034C76D4EAB340276B6BAD8FF57756F4ECA8E6</inline>
+ <curve>secg/secp256r1</curve>
+ </privkey>
+ <pubkey>
+ <id>openssl-bug/pkey</id>
+ <inline>0x296D416994A4801B9A48E8C67C98E0C05DE1C0E85D4DC676F32FEACDC4998F0E,0xA91F9BE06C1D50EEB0295A35CA0F130F17EA647147626318E28AEC97F0653749</inline>
+ <curve>secg/secp256r1</curve>
+ </pubkey>
+</keys> \ No newline at end of file
diff --git a/src/cz/crcs/ectester/data/other/results.xml b/src/cz/crcs/ectester/data/other/results.xml
new file mode 100644
index 0000000..ba8c83c
--- /dev/null
+++ b/src/cz/crcs/ectester/data/other/results.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<results xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
+ <kaResult>
+ <id>openssl-bug</id>
+ <ka>DH</ka>
+ <inline>0xdb6f7cd6a06846bf9da9b4928caa5e4b7c8f58d9</inline>
+ <!-- == SHA1(0x1D0F27241C177385B0D5025029FABD5D5D8475DA4E267DCD177B49C63605C25A) -->
+ <curve>secg/secp256r1</curve>
+ <onekey>other/openssl-bug/pkey</onekey>
+ <otherkey>other/openssl-bug/skey</otherkey>
+ <desc>https://eprint.iacr.org/2011/633</desc>
+ </kaResult>
+</results> \ No newline at end of file
diff --git a/src/cz/crcs/ectester/data/schema.xsd b/src/cz/crcs/ectester/data/schema.xsd
index 85e8107..99c9b76 100644
--- a/src/cz/crcs/ectester/data/schema.xsd
+++ b/src/cz/crcs/ectester/data/schema.xsd
@@ -51,8 +51,6 @@
<xs:element name="privkey" type="keyType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="pubkey" type="keyType" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
- <xs:attribute name="category" type="xs:string"/>
- <xs:attribute name="desc" type="xs:string"/>
</xs:complexType>
</xs:element>
@@ -70,7 +68,7 @@
</xs:restriction>
</xs:simpleType>
- <xs:complexType name="resultType">
+ <xs:complexType name="kaResultType">
<xs:all>
<xs:element name="id" type="xs:string"/>
<xs:element name="ka" type="kaType"/>
@@ -82,10 +80,34 @@
</xs:all>
</xs:complexType>
+ <xs:simpleType name="sigType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="SHA1"/>
+ <xs:enumeration value="SHA224"/>
+ <xs:enumeration value="SHA256"/>
+ <xs:enumeration value="SHA384"/>
+ <xs:enumeration value="SHA512"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:complexType name="sigResultType">
+ <xs:all>
+ <xs:element name="id" type="xs:string"/>
+ <xs:element name="sig" type="sigType"/>
+ <xs:element ref="data"/>
+ <xs:element name="raw" type="xs:string" minOccurs="0"/>
+ <xs:element name="curve" type="xs:string"/>
+ <xs:element name="signkey" type="xs:string"/>
+ <xs:element name="verifykey" type="xs:string"/>
+ <xs:element name="desc" type="xs:string" minOccurs="0"/>
+ </xs:all>
+ </xs:complexType>
+
<xs:element name="results">
<xs:complexType>
<xs:sequence>
- <xs:element name="result" type="resultType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="kaResult" type="kaResultType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="sigResult" type="sigResultType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
diff --git a/src/cz/crcs/ectester/data/test/keys.xml b/src/cz/crcs/ectester/data/test/keys.xml
index 5f86b5b..380aef1 100644
--- a/src/cz/crcs/ectester/data/test/keys.xml
+++ b/src/cz/crcs/ectester/data/test/keys.xml
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<keys xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="../schema.xsd"
- category="test"
- desc="Test vectors">
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
<keypair>
<id>secp160r1-U</id>
<file>secg/secp160r1-keyU.csv</file>
diff --git a/src/cz/crcs/ectester/data/test/results.xml b/src/cz/crcs/ectester/data/test/results.xml
index 1146500..64fa86a 100644
--- a/src/cz/crcs/ectester/data/test/results.xml
+++ b/src/cz/crcs/ectester/data/test/results.xml
@@ -1,174 +1,174 @@
<?xml version="1.0" encoding="utf-8" ?>
<results xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../schema.xsd">
- <result>
+ <kaResult>
<id>secp160r1-dh</id>
<ka>DH</ka>
<file>secg/secp160r1-dh-sha1.csv</file>
<curve>secg/secp160r1</curve>
<onekey>test/secp160r1-U</onekey>
<otherkey>test/secp160r1-V</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>sect163k1-dh</id>
<ka>DH</ka>
<file>secg/sect163k1-dh-sha1.csv</file>
<curve>secg/sect163k1</curve>
<onekey>test/sect163k1-U</onekey>
<otherkey>test/sect163k1-V</otherkey>
- </result>
+ </kaResult>
- <result>
+ <kaResult>
<id>brainpoolP224r1-dh</id>
<ka>DH</ka>
<file>brainpool/brainpoolP224r1-dh-sha1.csv</file>
<curve>brainpool/brainpoolP224r1</curve>
<onekey>test/brainpoolP224r1-A</onekey>
<otherkey>test/brainpoolP224r1-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>brainpoolP256r1-dh</id>
<ka>DH</ka>
<file>brainpool/brainpoolP256r1-dh-sha1.csv</file>
<curve>brainpool/brainpoolP256r1</curve>
<onekey>test/brainpoolP256r1-A</onekey>
<otherkey>test/brainpoolP256r1-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>brainpoolP384r1-dh</id>
<ka>DH</ka>
<file>brainpool/brainpoolP384r1-dh-sha1.csv</file>
<curve>brainpool/brainpoolP384r1</curve>
<onekey>test/brainpoolP384r1-A</onekey>
<otherkey>test/brainpoolP384r1-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>brainpoolP512r1-dh</id>
<ka>DH</ka>
<file>brainpool/brainpoolP512r1-dh-sha1.csv</file>
<curve>brainpool/brainpoolP512r1</curve>
<onekey>test/brainpoolP512r1-A</onekey>
<otherkey>test/brainpoolP512r1-B</otherkey>
- </result>
+ </kaResult>
- <result>
+ <kaResult>
<id>b163-dhc</id>
<ka>DHC</ka>
<file>nist/b163-dhc-sha1.csv</file>
<curve>nist/B-163</curve>
<onekey>test/b163-A</onekey>
<otherkey>test/b163-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>b233-dhc</id>
<ka>DHC</ka>
<file>nist/b233-dhc-sha1.csv</file>
<curve>nist/B-233</curve>
<onekey>test/b233-A</onekey>
<otherkey>test/b233-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>b283-dhc</id>
<ka>DHC</ka>
<file>nist/b283-dhc-sha1.csv</file>
<curve>nist/B-283</curve>
<onekey>test/b283-A</onekey>
<otherkey>test/b283-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>b409-dhc</id>
<ka>DHC</ka>
<file>nist/b409-dhc-sha1.csv</file>
<curve>nist/B-409</curve>
<onekey>test/b409-A</onekey>
<otherkey>test/b409-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>b571-dhc</id>
<ka>DHC</ka>
<file>nist/b571-dhc-sha1.csv</file>
<curve>nist/B-571</curve>
<onekey>test/b571-A</onekey>
<otherkey>test/b571-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>k163-dhc</id>
<ka>DHC</ka>
<file>nist/k163-dhc-sha1.csv</file>
<curve>nist/B-163</curve>
<onekey>test/k163-A</onekey>
<otherkey>test/k163-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>k233-dhc</id>
<ka>DHC</ka>
<file>nist/k233-dhc-sha1.csv</file>
<curve>nist/B-233</curve>
<onekey>test/k233-A</onekey>
<otherkey>test/k233-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>k283-dhc</id>
<ka>DHC</ka>
<file>nist/k283-dhc-sha1.csv</file>
<curve>nist/B-283</curve>
<onekey>test/k283-A</onekey>
<otherkey>test/k283-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>k409-dhc</id>
<ka>DHC</ka>
<file>nist/k409-dhc-sha1.csv</file>
<curve>nist/B-409</curve>
<onekey>test/k409-A</onekey>
<otherkey>test/k409-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>k571-dhc</id>
<ka>DHC</ka>
<file>nist/k571-dhc-sha1.csv</file>
<curve>nist/B-571</curve>
<onekey>test/k571-A</onekey>
<otherkey>test/k571-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>p192-dhc</id>
<ka>ANY</ka>
<file>nist/p192-dhc-sha1.csv</file>
<curve>nist/P-192</curve>
<onekey>test/p192-A</onekey>
<otherkey>test/p192-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>p224-dhc</id>
<ka>ANY</ka>
<file>nist/p224-dhc-sha1.csv</file>
<curve>nist/P-224</curve>
<onekey>test/p224-A</onekey>
<otherkey>test/p224-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>p256-dhc</id>
<ka>ANY</ka>
<file>nist/p256-dhc-sha1.csv</file>
<curve>nist/P-256</curve>
<onekey>test/p256-A</onekey>
<otherkey>test/p256-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>p384-dhc</id>
<ka>ANY</ka>
<file>nist/p384-dhc-sha1.csv</file>
<curve>nist/P-384</curve>
<onekey>test/p384-A</onekey>
<otherkey>test/p384-B</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>p521-dhc</id>
<ka>ANY</ka>
<file>nist/p521-dhc-sha1.csv</file>
<curve>nist/P-521</curve>
<onekey>test/p521-A</onekey>
<otherkey>test/p521-B</otherkey>
- </result>
+ </kaResult>
</results> \ No newline at end of file
diff --git a/src/cz/crcs/ectester/data/twist/keys.xml b/src/cz/crcs/ectester/data/twist/keys.xml
index 1acbc31..df208bf 100644
--- a/src/cz/crcs/ectester/data/twist/keys.xml
+++ b/src/cz/crcs/ectester/data/twist/keys.xml
@@ -23,9 +23,7 @@
<!ENTITY secp521r1 SYSTEM "twist/secg/secp521r1.xml">
]>
<keys xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="../schema.xsd"
- category="twist"
- desc="">
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
&k163;
&k233;
&k283;
diff --git a/src/cz/crcs/ectester/data/wrong/keys.xml b/src/cz/crcs/ectester/data/wrong/keys.xml
new file mode 100644
index 0000000..4be8b4d
--- /dev/null
+++ b/src/cz/crcs/ectester/data/wrong/keys.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<keys xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
+ <pubkey>
+ <id>default_pub</id>
+ <inline>0x116d77bea845d4bd0204cb8b954c957431c23a7111a0eda94d41a3c774260e37,0x9589952dcc2034be9cb36411c59e8978fc40a7ebce5dc296d8c693a25b637969</inline>
+ <curve>secg/secp256r1</curve>
+ <desc>A random public key for default_priv.</desc>
+ </pubkey>
+ <privkey>
+ <id>default_priv</id>
+ <inline>0x92d375aebbc233bc9b60124ff7adf963917ab77bfc254418900f7ba51c85cc09</inline>
+ <curve>secg/secp256r1</curve>
+ <desc>A random private key for default_pub.</desc>
+ </privkey>
+ <pubkey>
+ <id>negated_pub</id>
+ <inline>0x116d77bea845d4bd0204cb8b954c957431c23a7111a0eda94d41a3c774260e37,0x6a766ad133dfcb42634c9bee3a61768703bf581531a23d6927396c5da49c8696</inline>
+ <curve>secg/secp256r1</curve>
+ <desc>A negation of default_pub(public key for negated_priv).</desc>
+ </pubkey>
+ <privkey>
+ <id>negated_priv</id>
+ <inline>0x6d2c8a50443dcc44649fedb00852069c2b6c4331aaf25a6c63aa4f1ddfdd5948</inline>
+ <curve>secg/secp256r1</curve>
+ <desc>A negation of default_priv(private key for negated_pub).</desc>
+ </privkey>
+</keys> \ No newline at end of file
diff --git a/src/cz/crcs/ectester/data/wrong/results.xml b/src/cz/crcs/ectester/data/wrong/results.xml
new file mode 100644
index 0000000..92f43df
--- /dev/null
+++ b/src/cz/crcs/ectester/data/wrong/results.xml
@@ -0,0 +1,177 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<results xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
+ <sigResult>
+ <id>ok/random</id>
+ <sig>SHA1</sig>
+ <inline>0x304402203988322ab9f52c7f11d5d1aa92a2ac0b00275bcad8e934682257323fda672482022052231597382268e8f3b82b99e386ebb7c7db1a8b4a8bdacd496190314e4c5bad</inline>
+ <raw>0xABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB</raw>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>A correct signature by the default key.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/negated</id>
+ <sig>SHA1</sig>
+ <inline>0x304402203988322ab9f52c7f11d5d1aa92a2ac0b00275bcad8e934682257323fda672482022052231597382268e8f3b82b99e386ebb7c7db1a8b4a8bdacd496190314e4c5bad</inline>
+ <raw>0xABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB</raw>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/negated_priv</signkey>
+ <verifykey>wrong/negated_pub</verifykey>
+ <desc>A signature made by the default key, to be verified by the negated one.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/random</id>
+ <sig>SHA1</sig>
+ <inline>0x30440220e641671e6415629dc8398e35ae1362cb647f293a92553b1594d57fff58df302c02206baafface035e3758eea0dd9ef734976c70b6dd06f4d81d33f5e28bfb8730624</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>A random, well-formed but invalid signature.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/r0</id>
+ <sig>SHA1</sig>
+ <inline>0x3044022000000000000000000000000000000000000000000000000000000000000000000220d0837b07fe63d225733391e6808a081fd8aeb1359511feba7ca4f266727f968e</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Well-formed invalid signature with r = 0.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/s0</id>
+ <sig>SHA1</sig>
+ <inline>0x304402206bea66d439da6b0b4a0e45b51e76d53336f27f7aa8e35f2008b77a8e021eff0a02200000000000000000000000000000000000000000000000000000000000000000</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Well-formed invalid signature with s = 0.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/r1</id>
+ <sig>SHA1</sig>
+ <inline>0x3044022000000000000000000000000000000000000000000000000000000000000000010220e660f19ddc20a30adda6ca175577b492e238ef8734b904a31045d453825974d4</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Well-formed invalid signature with r = 1.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/s1</id>
+ <sig>SHA1</sig>
+ <inline>0x30440220d30ab3301d7132edbead77c0d622bbb7be8626c9ac5ee6c536281e6c18e79ab002200000000000000000000000000000000000000000000000000000000000000001</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Well-formed invalid signature with s = 1.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/r0s0</id>
+ <sig>SHA1</sig>
+ <inline>0x30440220000000000000000000000000000000000000000000000000000000000000000002200000000000000000000000000000000000000000000000000000000000000000</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Well-formed invalid signature with r = 0 and s = 0.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/r0s1</id>
+ <sig>SHA1</sig>
+ <inline>0x30440220000000000000000000000000000000000000000000000000000000000000000002200000000000000000000000000000000000000000000000000000000000000001</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Well-formed invalid signature with r = 0 and s = 1.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/r1s0</id>
+ <sig>SHA1</sig>
+ <inline>0x30440220000000000000000000000000000000000000000000000000000000000000000102200000000000000000000000000000000000000000000000000000000000000000</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Well-formed invalid signature with r = 1 and s = 0.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/r1s1</id>
+ <sig>SHA1</sig>
+ <inline>0x30440220000000000000000000000000000000000000000000000000000000000000000102200000000000000000000000000000000000000000000000000000000000000001</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Well-formed invalid signature with r = 1 and s = 1.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/sp</id>
+ <sig>SHA1</sig>
+ <inline>0x30440220fc48281b60b73752f3e20c25e8a06b335122d5890db28d2969d3145fcd384e7b0220ffffffff00000001000000000000000000000000ffffffffffffffffffffffff</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Well-formed invalid signature s = p.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/s2p</id>
+ <sig>SHA1</sig>
+ <inline>0x30450220feba982489753a51a69fd582673d2e62b6b07cc6374237c1424f1e469cb00a98022101fffffffe00000002000000000000000000000001fffffffffffffffffffffffe</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Well-formed invalid signature with s = 2 * p.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/long</id>
+ <sig>SHA1</sig>
+ <inline>0x30420220e641671e6415629dc8398e35ae1362cb647f293a92553b1594d57fff58df302c02206baafface035e3758eea0dd9ef734976c70b6dd06f4d81d33f5e28bfb8730624</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Invalid signature, that is longer than specified in its ASN.1 SEQUENCE length header.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/short</id>
+ <sig>SHA1</sig>
+ <inline>0x30460220e641671e6415629dc8398e35ae1362cb647f293a92553b1594d57fff58df302c02206baafface035e3758eea0dd9ef734976c70b6dd06f4d81d33f5e28bfb8730624</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Invalid signature, that is shorter than specified in its ASN.1 SEQUENCE length header.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/long_r</id>
+ <sig>SHA1</sig>
+ <inline>0x3044021ee641671e6415629dc8398e35ae1362cb647f293a92553b1594d57fff58df302c02206baafface035e3758eea0dd9ef734976c70b6dd06f4d81d33f5e28bfb8730624</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Invalid signature, where r is longer than specified in its ASN.1 length header.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/long_s</id>
+ <sig>SHA1</sig>
+ <inline>0x30440220e641671e6415629dc8398e35ae1362cb647f293a92553b1594d57fff58df302c021e6baafface035e3758eea0dd9ef734976c70b6dd06f4d81d33f5e28bfb8730624</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Invalid signature, where s is longer than specified in its ASN.1 length header.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/short_r</id>
+ <sig>SHA1</sig>
+ <inline>0x30440222e641671e6415629dc8398e35ae1362cb647f293a92553b1594d57fff58df302c02206baafface035e3758eea0dd9ef734976c70b6dd06f4d81d33f5e28bfb8730624</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Invalid signature, where r is shorter than specified in its ASN.1 length header.</desc>
+ </sigResult>
+ <sigResult>
+ <id>nok/short_s</id>
+ <sig>SHA1</sig>
+ <inline>0x30440220e641671e6415629dc8398e35ae1362cb647f293a92553b1594d57fff58df302c02226baafface035e3758eea0dd9ef734976c70b6dd06f4d81d33f5e28bfb8730624</inline>
+ <curve>secg/secp256r1</curve>
+ <signkey>wrong/default_priv</signkey>
+ <verifykey>wrong/default_pub</verifykey>
+ <desc>Invalid signature, where s is shorter than specified in its ASN.1 length header.</desc>
+ </sigResult>
+</results> \ No newline at end of file
diff --git a/src/cz/crcs/ectester/data/wycheproof/keys.xml b/src/cz/crcs/ectester/data/wycheproof/keys.xml
index 46cd697..46359df 100644
--- a/src/cz/crcs/ectester/data/wycheproof/keys.xml
+++ b/src/cz/crcs/ectester/data/wycheproof/keys.xml
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<keys xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="../schema.xsd"
- category="wycheproof"
- desc="">
+ xsi:noNamespaceSchemaLocation="../schema.xsd">
<privkey>
<id>addsub/secp224r1/1s</id>
<inline>0x0ffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c29b7</inline>
diff --git a/src/cz/crcs/ectester/data/wycheproof/results.xml b/src/cz/crcs/ectester/data/wycheproof/results.xml
index 5508f4c..094043c 100644
--- a/src/cz/crcs/ectester/data/wycheproof/results.xml
+++ b/src/cz/crcs/ectester/data/wycheproof/results.xml
@@ -1,71 +1,71 @@
<?xml version="1.0" encoding="utf-8" ?>
<results xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../schema.xsd">
- <result>
+ <kaResult>
<id>addsub/secp224r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x475fd96e0eb8cb8f100a5d7fe043a7a6851d1d611da2643a3c6ae708</inline>
<curve>secg/secp224r1</curve>
<onekey>wycheproof/addsub/secp224r1/1s</onekey>
<otherkey>wycheproof/addsub/secp224r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp224r1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x41ef931d669d1f57d8bb95a01a92321da74be8c6cbc3bbe0b2e73ebd</inline>
<curve>secg/secp224r1</curve>
<onekey>wycheproof/addsub/secp224r1/2s</onekey>
<otherkey>wycheproof/addsub/secp224r1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp224r1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0x11ff15126411299cbd49e2b7542e69e91ef132e2551a16ecfebb23a3</inline>
<curve>secg/secp224r1</curve>
<onekey>wycheproof/addsub/secp224r1/3s</onekey>
<otherkey>wycheproof/addsub/secp224r1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0xf7407d61fdf581be4f564621d590ca9b7ba37f31396150f9922f1501da8c83ef</inline>
<curve>secg/secp256r1</curve>
<onekey>wycheproof/addsub/secp256r1/1s</onekey>
<otherkey>wycheproof/addsub/secp256r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256r1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x82236fd272208693e0574555ca465c6cc512163486084fa57f5e1bd2e2ccc0b3</inline>
<curve>secg/secp256r1</curve>
<onekey>wycheproof/addsub/secp256r1/2s</onekey>
<otherkey>wycheproof/addsub/secp256r1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256r1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0x06537149664dba1a9924654cb7f787ed224851b0df25ef53fcf54f8f26cd5f3f</inline>
<curve>secg/secp256r1</curve>
<onekey>wycheproof/addsub/secp256r1/3s</onekey>
<otherkey>wycheproof/addsub/secp256r1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256r1/4test</id>
<ka>DH_PLAIN</ka>
<inline>0xf2b38539bce995d443c7bfeeefadc9e42cc2c89c60bf4e86eac95d51987bd112</inline>
<curve>secg/secp256r1</curve>
<onekey>wycheproof/addsub/secp256r1/4s</onekey>
<otherkey>wycheproof/addsub/secp256r1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256r1/5test</id>
<ka>DH_PLAIN</ka>
<inline>0x027b013a6f166db655d69d643c127ef8ace175311e667dff2520f5b5c75b7659</inline>
<curve>secg/secp256r1</curve>
<onekey>wycheproof/addsub/secp256r1/5s</onekey>
<otherkey>wycheproof/addsub/secp256r1/5w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp384r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x2ecf9dc47e8b07ae61ddbd1680ead02698e9e8469f78d5a28328e48d0c9d7a2ac787e50cba58cc44a32fb1235d2d7027
@@ -73,8 +73,8 @@
<curve>secg/secp384r1</curve>
<onekey>wycheproof/addsub/secp384r1/1s</onekey>
<otherkey>wycheproof/addsub/secp384r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp384r1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x06ee9f55079d3d3c18c683ba33e0d2521be97c4fbf7917bf3b6287d58ffcde2df88842e3f5530b39549ac20974b1b60e
@@ -82,8 +82,8 @@
<curve>secg/secp384r1</curve>
<onekey>wycheproof/addsub/secp384r1/2s</onekey>
<otherkey>wycheproof/addsub/secp384r1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp384r1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0x024c5281487216058270cd1cfe259e948310e4adc263a9edaa4da0bc3f5f8ce8ffc88ae41b2c050bf6dd9c8c66857237
@@ -91,8 +91,8 @@
<curve>secg/secp384r1</curve>
<onekey>wycheproof/addsub/secp384r1/3s</onekey>
<otherkey>wycheproof/addsub/secp384r1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp521r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -101,8 +101,8 @@
<curve>secg/secp521r1</curve>
<onekey>wycheproof/addsub/secp521r1/1s</onekey>
<otherkey>wycheproof/addsub/secp521r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp521r1/2test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -111,8 +111,8 @@
<curve>secg/secp521r1</curve>
<onekey>wycheproof/addsub/secp521r1/2s</onekey>
<otherkey>wycheproof/addsub/secp521r1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp521r1/3test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -121,8 +121,8 @@
<curve>secg/secp521r1</curve>
<onekey>wycheproof/addsub/secp521r1/3s</onekey>
<otherkey>wycheproof/addsub/secp521r1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp521r1/4test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -131,8 +131,8 @@
<curve>secg/secp521r1</curve>
<onekey>wycheproof/addsub/secp521r1/4s</onekey>
<otherkey>wycheproof/addsub/secp521r1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp521r1/5test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -141,8 +141,8 @@
<curve>secg/secp521r1</curve>
<onekey>wycheproof/addsub/secp521r1/5s</onekey>
<otherkey>wycheproof/addsub/secp521r1/5w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp521r1/6test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -151,160 +151,160 @@
<curve>secg/secp521r1</curve>
<onekey>wycheproof/addsub/secp521r1/6s</onekey>
<otherkey>wycheproof/addsub/secp521r1/6w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256k1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x09c7337df6c2b35edf3a21382511cc5add1a71a84cbf8d3396a5be548d92fa67</inline>
<curve>secg/secp256k1</curve>
<onekey>wycheproof/addsub/secp256k1/1s</onekey>
<otherkey>wycheproof/addsub/secp256k1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256k1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0xd16caedd25793666f9e26f5331382106f54095b3d20d40c745b68ca76c0e6983</inline>
<curve>secg/secp256k1</curve>
<onekey>wycheproof/addsub/secp256k1/2s</onekey>
<otherkey>wycheproof/addsub/secp256k1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256k1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0xb8ae1e21d8b34ce4caffed7167a26868ec80a7d4a6a98b639d4d05cd226504de</inline>
<curve>secg/secp256k1</curve>
<onekey>wycheproof/addsub/secp256k1/3s</onekey>
<otherkey>wycheproof/addsub/secp256k1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256k1/4test</id>
<ka>DH_PLAIN</ka>
<inline>0x02776315fe147a36a4b0987492b6503acdea60f926450e5eddb9f88fc82178d3</inline>
<curve>secg/secp256k1</curve>
<onekey>wycheproof/addsub/secp256k1/4s</onekey>
<otherkey>wycheproof/addsub/secp256k1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256k1/5test</id>
<ka>DH_PLAIN</ka>
<inline>0x3988c9c7050a28794934e5bd67629b556d97a4858d22812835f4a37dca351943</inline>
<curve>secg/secp256k1</curve>
<onekey>wycheproof/addsub/secp256k1/5s</onekey>
<otherkey>wycheproof/addsub/secp256k1/5w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/secp256k1/6test</id>
<ka>DH_PLAIN</ka>
<inline>0x4b52257d8b3ba387797fdf7a752f195ddc4f7d76263de61d0d52a5ec14a36cbf</inline>
<curve>secg/secp256k1</curve>
<onekey>wycheproof/addsub/secp256k1/6s</onekey>
<otherkey>wycheproof/addsub/secp256k1/6w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP224r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x1be0d59d1f0f3a743ae19c5246099391098f71444223831e16cfa0c5</inline>
<curve>brainpool/brainpoolP224r1</curve>
<onekey>wycheproof/addsub/brainpoolP224r1/1s</onekey>
<otherkey>wycheproof/addsub/brainpoolP224r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP224r1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x7e00a9267243cea4ba7617860b6fcf404e0357d1202d8c85dc5e07d3</inline>
<curve>brainpool/brainpoolP224r1</curve>
<onekey>wycheproof/addsub/brainpoolP224r1/2s</onekey>
<otherkey>wycheproof/addsub/brainpoolP224r1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP224r1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0xaac6a805f4ce1b6dcc13ec4ed16a889dc4d708f7f6f1e23471338324</inline>
<curve>brainpool/brainpoolP224r1</curve>
<onekey>wycheproof/addsub/brainpoolP224r1/3s</onekey>
<otherkey>wycheproof/addsub/brainpoolP224r1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP256r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x1950b7ce510d4d8648e80c6385a42d005433fc5ca61e2022a1405fe18142c246</inline>
<curve>brainpool/brainpoolP256r1</curve>
<onekey>wycheproof/addsub/brainpoolP256r1/1s</onekey>
<otherkey>wycheproof/addsub/brainpoolP256r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP256r1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x5c05c4d877a0e2af5ffa004c122630bb87157cf346dbeb8ae13017162da208f4</inline>
<curve>brainpool/brainpoolP256r1</curve>
<onekey>wycheproof/addsub/brainpoolP256r1/2s</onekey>
<otherkey>wycheproof/addsub/brainpoolP256r1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP256r1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0x9639bbd4e22194ce3892a814c82eddbd21dde05cfac20e99396e3d6ef0841f7c</inline>
<curve>brainpool/brainpoolP256r1</curve>
<onekey>wycheproof/addsub/brainpoolP256r1/3s</onekey>
<otherkey>wycheproof/addsub/brainpoolP256r1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP256r1/4test</id>
<ka>DH_PLAIN</ka>
<inline>0x341cbdf61f9dd620ba6873a74804afe30a06b0a113a6916a4104d2d4cc196aec</inline>
<curve>brainpool/brainpoolP256r1</curve>
<onekey>wycheproof/addsub/brainpoolP256r1/4s</onekey>
<otherkey>wycheproof/addsub/brainpoolP256r1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0xc0038da858441f559a864dcd6c4558437f9ad091a67c3fda69a9e0cb6f446a8b47ae95edc2f4eade</inline>
<curve>brainpool/brainpoolP320r1</curve>
<onekey>wycheproof/addsub/brainpoolP320r1/1s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320r1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x8258131a80bc9f2b8ba532ef1253ef39dce25e6deb85227c670273521c311dbb9bf1a56dd29107b3</inline>
<curve>brainpool/brainpoolP320r1</curve>
<onekey>wycheproof/addsub/brainpoolP320r1/2s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320r1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320r1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0xae752e75684a9adfc6198e6c1ce9249d26743104e8b0bd0417998c62982622ea2fdf6917413d547c</inline>
<curve>brainpool/brainpoolP320r1</curve>
<onekey>wycheproof/addsub/brainpoolP320r1/3s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320r1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320r1/4test</id>
<ka>DH_PLAIN</ka>
<inline>0x37bfbb637fce27ee80b3af326546303e0bd8af01b72f591830a548609055bda489d9a4e6b5e3f43e</inline>
<curve>brainpool/brainpoolP320r1</curve>
<onekey>wycheproof/addsub/brainpoolP320r1/4s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320r1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320r1/5test</id>
<ka>DH_PLAIN</ka>
<inline>0x854ce9516e73c6cc8d0d6ce3cdf933541a719578712440f02a86829af1398fcab2bb0949c1d63106</inline>
<curve>brainpool/brainpoolP320r1</curve>
<onekey>wycheproof/addsub/brainpoolP320r1/5s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320r1/5w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320r1/6test</id>
<ka>DH_PLAIN</ka>
<inline>0x7dfd07c1cfe70db4772cf9f6bb6b58a10bbc9509e5ce86651d5c395f3544f62d6d8f8109edba441a</inline>
<curve>brainpool/brainpoolP320r1</curve>
<onekey>wycheproof/addsub/brainpoolP320r1/6s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320r1/6w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP384r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x3729bcd215b41c658b832686c81362b3485d75b09478c6dde3b5e278564ef4162bdd6ff65afc6e8213bba9b6c54ba1eb
@@ -312,8 +312,8 @@
<curve>brainpool/brainpoolP384r1</curve>
<onekey>wycheproof/addsub/brainpoolP384r1/1s</onekey>
<otherkey>wycheproof/addsub/brainpoolP384r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP384r1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x12ba4622daf1f2f950aad6d54aaab821885a47a98573afea49bc1896041ee9501acef82810f3755ff284e16665bd0f62
@@ -321,8 +321,8 @@
<curve>brainpool/brainpoolP384r1</curve>
<onekey>wycheproof/addsub/brainpoolP384r1/2s</onekey>
<otherkey>wycheproof/addsub/brainpoolP384r1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP384r1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0x7fb5398519857f2c17cddd0a9d2c1660ac35b4723e4a049ba5c58c458b742dfa813a5c7175e1c0974b514bfaeb0039f8
@@ -330,8 +330,8 @@
<curve>brainpool/brainpoolP384r1</curve>
<onekey>wycheproof/addsub/brainpoolP384r1/3s</onekey>
<otherkey>wycheproof/addsub/brainpoolP384r1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP384r1/4test</id>
<ka>DH_PLAIN</ka>
<inline>0x0f0a1d20ba6a7b2c48154b43870be4890979d9261950736de96c29f371233b1ef94a79c2ab698868f00cea7e912deb94
@@ -339,8 +339,8 @@
<curve>brainpool/brainpoolP384r1</curve>
<onekey>wycheproof/addsub/brainpoolP384r1/4s</onekey>
<otherkey>wycheproof/addsub/brainpoolP384r1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP512r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -349,8 +349,8 @@
<curve>brainpool/brainpoolP512r1</curve>
<onekey>wycheproof/addsub/brainpoolP512r1/1s</onekey>
<otherkey>wycheproof/addsub/brainpoolP512r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP512r1/2test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -359,8 +359,8 @@
<curve>brainpool/brainpoolP512r1</curve>
<onekey>wycheproof/addsub/brainpoolP512r1/2s</onekey>
<otherkey>wycheproof/addsub/brainpoolP512r1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP512r1/3test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -369,8 +369,8 @@
<curve>brainpool/brainpoolP512r1</curve>
<onekey>wycheproof/addsub/brainpoolP512r1/3s</onekey>
<otherkey>wycheproof/addsub/brainpoolP512r1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP512r1/4test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -379,112 +379,112 @@
<curve>brainpool/brainpoolP512r1</curve>
<onekey>wycheproof/addsub/brainpoolP512r1/4s</onekey>
<otherkey>wycheproof/addsub/brainpoolP512r1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP224t1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x97ded4c2e06b5a13c9109be3fa42dc2ca93a306fdf9e85ac4bb02e22</inline>
<curve>brainpool/brainpoolP224t1</curve>
<onekey>wycheproof/addsub/brainpoolP224t1/1s</onekey>
<otherkey>wycheproof/addsub/brainpoolP224t1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP224t1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x686798270c7e188e6ab3e28a10754f965d5d02f33d30d8faf38155f4</inline>
<curve>brainpool/brainpoolP224t1</curve>
<onekey>wycheproof/addsub/brainpoolP224t1/2s</onekey>
<otherkey>wycheproof/addsub/brainpoolP224t1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP224t1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0xd64f68debaf751d63da1883668822031c69e913cc53b969e5fbae845</inline>
<curve>brainpool/brainpoolP224t1</curve>
<onekey>wycheproof/addsub/brainpoolP224t1/3s</onekey>
<otherkey>wycheproof/addsub/brainpoolP224t1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP256t1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x4875ed4b2bc7e7a0cb89d93b359fa72ddaf0377ddeddd33f62ec2450cd80e7cd</inline>
<curve>brainpool/brainpoolP256t1</curve>
<onekey>wycheproof/addsub/brainpoolP256t1/1s</onekey>
<otherkey>wycheproof/addsub/brainpoolP256t1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP256t1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x315637f94d6776cc3928c1ffbe3c7004aa70b787cc0687faee1da5f9324a36c4</inline>
<curve>brainpool/brainpoolP256t1</curve>
<onekey>wycheproof/addsub/brainpoolP256t1/2s</onekey>
<otherkey>wycheproof/addsub/brainpoolP256t1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP256t1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0x54d1009ab7d3cb9d4314ea7512f7bc4d916ecd47bc9e491ad4a6d65a40672554</inline>
<curve>brainpool/brainpoolP256t1</curve>
<onekey>wycheproof/addsub/brainpoolP256t1/3s</onekey>
<otherkey>wycheproof/addsub/brainpoolP256t1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP256t1/4test</id>
<ka>DH_PLAIN</ka>
<inline>0x892923527eb529de963e902641c01701a66cd999d1b665717d7b11cbb5a96f7c</inline>
<curve>brainpool/brainpoolP256t1</curve>
<onekey>wycheproof/addsub/brainpoolP256t1/4s</onekey>
<otherkey>wycheproof/addsub/brainpoolP256t1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320t1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x147c9b3b4880f7f6d4eb96f891672cb0d09a6bef15574ab2a43f09ae7f8090cdfa81517e098dac1e</inline>
<curve>brainpool/brainpoolP320t1</curve>
<onekey>wycheproof/addsub/brainpoolP320t1/1s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320t1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320t1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x47f4412278edc51ba0635853a82e033b164a68194d4c3e2492017432daaa8c35684c343f701f6b02</inline>
<curve>brainpool/brainpoolP320t1</curve>
<onekey>wycheproof/addsub/brainpoolP320t1/2s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320t1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320t1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0xa64c2b075abf446a9ba43f6ffcefda795835ab2e1c4d19bd9c9ede59cd9eaf9c831a520b1e0ce269</inline>
<curve>brainpool/brainpoolP320t1</curve>
<onekey>wycheproof/addsub/brainpoolP320t1/3s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320t1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320t1/4test</id>
<ka>DH_PLAIN</ka>
<inline>0xb3b25821ac9b07c614f6fce7f9a1c2325d3cbd51cac82dadeb79037a23bce03b0352407ccd447af8</inline>
<curve>brainpool/brainpoolP320t1</curve>
<onekey>wycheproof/addsub/brainpoolP320t1/4s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320t1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320t1/5test</id>
<ka>DH_PLAIN</ka>
<inline>0x594aebd8010757d15f79631af0e481310359e0086e4e988ab5525a9303aaf800cd4ef123ceb68875</inline>
<curve>brainpool/brainpoolP320t1</curve>
<onekey>wycheproof/addsub/brainpoolP320t1/5s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320t1/5w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP320t1/6test</id>
<ka>DH_PLAIN</ka>
<inline>0xc7e67dc2f64d0e66841777a6f014340b8a63f42024c6cd5ac5e10cec3b02a2d050c2fd8f078a754f</inline>
<curve>brainpool/brainpoolP320t1</curve>
<onekey>wycheproof/addsub/brainpoolP320t1/6s</onekey>
<otherkey>wycheproof/addsub/brainpoolP320t1/6w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP384t1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x22d772bd2104c3d24b8505b3e7d1f3f00ca2dacb493ca729170854ef2158407a0ffab006153d5cb7781e9cb57cda505f
@@ -492,8 +492,8 @@
<curve>brainpool/brainpoolP384t1</curve>
<onekey>wycheproof/addsub/brainpoolP384t1/1s</onekey>
<otherkey>wycheproof/addsub/brainpoolP384t1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP384t1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x2b2c617f8c84713f8440e5e273341d69edf9e6ea2056af38ccfc6ee733a9c11e1f9aa63cb3615d2b3cebe69d8360a2bd
@@ -501,8 +501,8 @@
<curve>brainpool/brainpoolP384t1</curve>
<onekey>wycheproof/addsub/brainpoolP384t1/2s</onekey>
<otherkey>wycheproof/addsub/brainpoolP384t1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP384t1/3test</id>
<ka>DH_PLAIN</ka>
<inline>0x28518f75e020e00095d47166f7825f1767b6425172decde390c9266764c8b631608dc323b8415c39c9d0b8a24cd337ac
@@ -510,8 +510,8 @@
<curve>brainpool/brainpoolP384t1</curve>
<onekey>wycheproof/addsub/brainpoolP384t1/3s</onekey>
<otherkey>wycheproof/addsub/brainpoolP384t1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP384t1/4test</id>
<ka>DH_PLAIN</ka>
<inline>0x4424a1b48eba0524e4aa82455e282b35cf0d13d8536fe6c410cd5050f3d4d1739254945a8f580d43ee0245b1df67de56
@@ -519,8 +519,8 @@
<curve>brainpool/brainpoolP384t1</curve>
<onekey>wycheproof/addsub/brainpoolP384t1/4s</onekey>
<otherkey>wycheproof/addsub/brainpoolP384t1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP512t1/1test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -529,8 +529,8 @@
<curve>brainpool/brainpoolP512t1</curve>
<onekey>wycheproof/addsub/brainpoolP512t1/1s</onekey>
<otherkey>wycheproof/addsub/brainpoolP512t1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP512t1/2test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -539,8 +539,8 @@
<curve>brainpool/brainpoolP512t1</curve>
<onekey>wycheproof/addsub/brainpoolP512t1/2s</onekey>
<otherkey>wycheproof/addsub/brainpoolP512t1/2w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP512t1/3test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -549,8 +549,8 @@
<curve>brainpool/brainpoolP512t1</curve>
<onekey>wycheproof/addsub/brainpoolP512t1/3s</onekey>
<otherkey>wycheproof/addsub/brainpoolP512t1/3w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>addsub/brainpoolP512t1/4test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -559,8 +559,8 @@
<curve>brainpool/brainpoolP512t1</curve>
<onekey>wycheproof/addsub/brainpoolP512t1/4s</onekey>
<otherkey>wycheproof/addsub/brainpoolP512t1/4w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>cve_2017_10176/secp521r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>
@@ -569,21 +569,21 @@
<curve>secg/secp521r1</curve>
<onekey>wycheproof/cve_2017_10176/secp521r1/1s</onekey>
<otherkey>wycheproof/cve_2017_10176/secp521r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>cve_2017_8932/secp256r1/1test</id>
<ka>DH_PLAIN</ka>
<inline>0x4d4de80f1534850d261075997e3049321a0864082d24a917863366c0724f5ae3</inline>
<curve>secg/secp256r1</curve>
<onekey>wycheproof/cve_2017_8932/secp256r1/1s</onekey>
<otherkey>wycheproof/cve_2017_8932/secp256r1/1w</otherkey>
- </result>
- <result>
+ </kaResult>
+ <kaResult>
<id>cve_2017_8932/secp256r1/2test</id>
<ka>DH_PLAIN</ka>
<inline>0x831c3f6b5f762d2f461901577af41354ac5f228c2591f84f8a6e51e2e3f17991</inline>
<curve>secg/secp256r1</curve>
<onekey>wycheproof/cve_2017_8932/secp256r1/2s</onekey>
<otherkey>wycheproof/cve_2017_8932/secp256r1/2w</otherkey>
- </result>
+ </kaResult>
</results> \ No newline at end of file