Skip to content

Commit 9a59f0b

Browse files
committed
convert sect* testvectors to v1 format
* reference the v1 format of the ecdh_test_schema * update the notes to match v1 format * "CompressedPoint" and "InvalidAsn" are matched to the pre-existing notes in other v1 ecdh vectors. * "AddSubChain" and "LowOrderPublic" are converted manually, calling the first a "KNOWN_BUG" and the second a "WEAK_PARAMS" instance.
1 parent 9a2d257 commit 9a59f0b

File tree

6 files changed

+120
-30
lines changed

6 files changed

+120
-30
lines changed

testvectors_v1/ecdh_sect283k1_test.json

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,27 @@
99
"Java providers."
1010
],
1111
"notes" : {
12-
"AddSubChain" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See CVE_2017_10176",
13-
"CompressedPoint" : "The point in the public key is compressed. Not every library supports points in compressed format.",
14-
"InvalidAsn" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value.",
15-
"LowOrderPublic" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
12+
"AddSubChain" : {
13+
"bugType" : "KNOWN_BUG",
14+
"description" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See ",
15+
"cves" : [
16+
"CVE-2017-10176"
17+
]
18+
},
19+
"CompressedPoint" : {
20+
"bugType" : "UNKNOWN",
21+
"description" : "The point in the public key is compressed. Not every library supports points in compressed format."
22+
},
23+
"InvalidAsn" : {
24+
"bugType" : "UNKNOWN",
25+
"description" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value."
26+
},
27+
"LowOrderPublic" : {
28+
"bugType" : "WEAK_PARAMS",
29+
"description" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
30+
}
1631
},
17-
"schema" : "ecdh_test_schema.json",
32+
"schema" : "ecdh_test_schema_v1.json",
1833
"testGroups" : [
1934
{
2035
"curve" : "sect283k1",

testvectors_v1/ecdh_sect283r1_test.json

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,27 @@
99
"Java providers."
1010
],
1111
"notes" : {
12-
"AddSubChain" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See CVE_2017_10176",
13-
"CompressedPoint" : "The point in the public key is compressed. Not every library supports points in compressed format.",
14-
"InvalidAsn" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value.",
15-
"LowOrderPublic" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
12+
"AddSubChain" : {
13+
"bugType" : "KNOWN_BUG",
14+
"description" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See ",
15+
"cves" : [
16+
"CVE-2017-10176"
17+
]
18+
},
19+
"CompressedPoint" : {
20+
"bugType" : "UNKNOWN",
21+
"description" : "The point in the public key is compressed. Not every library supports points in compressed format."
22+
},
23+
"InvalidAsn" : {
24+
"bugType" : "UNKNOWN",
25+
"description" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value."
26+
},
27+
"LowOrderPublic" : {
28+
"bugType" : "WEAK_PARAMS",
29+
"description" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
30+
}
1631
},
17-
"schema" : "ecdh_test_schema.json",
32+
"schema" : "ecdh_test_schema_v1.json",
1833
"testGroups" : [
1934
{
2035
"curve" : "sect283r1",

testvectors_v1/ecdh_sect409k1_test.json

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,27 @@
99
"Java providers."
1010
],
1111
"notes" : {
12-
"AddSubChain" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See CVE_2017_10176",
13-
"CompressedPoint" : "The point in the public key is compressed. Not every library supports points in compressed format.",
14-
"InvalidAsn" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value.",
15-
"LowOrderPublic" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
12+
"AddSubChain" : {
13+
"bugType" : "KNOWN_BUG",
14+
"description" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See ",
15+
"cves" : [
16+
"CVE-2017-10176"
17+
]
18+
},
19+
"CompressedPoint" : {
20+
"bugType" : "UNKNOWN",
21+
"description" : "The point in the public key is compressed. Not every library supports points in compressed format."
22+
},
23+
"InvalidAsn" : {
24+
"bugType" : "UNKNOWN",
25+
"description" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value."
26+
},
27+
"LowOrderPublic" : {
28+
"bugType" : "WEAK_PARAMS",
29+
"description" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
30+
}
1631
},
17-
"schema" : "ecdh_test_schema.json",
32+
"schema" : "ecdh_test_schema_v1.json",
1833
"testGroups" : [
1934
{
2035
"curve" : "sect409k1",

testvectors_v1/ecdh_sect409r1_test.json

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,27 @@
99
"Java providers."
1010
],
1111
"notes" : {
12-
"AddSubChain" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See CVE_2017_10176",
13-
"CompressedPoint" : "The point in the public key is compressed. Not every library supports points in compressed format.",
14-
"InvalidAsn" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value.",
15-
"LowOrderPublic" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
12+
"AddSubChain" : {
13+
"bugType" : "KNOWN_BUG",
14+
"description" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See ",
15+
"cves" : [
16+
"CVE-2017-10176"
17+
]
18+
},
19+
"CompressedPoint" : {
20+
"bugType" : "UNKNOWN",
21+
"description" : "The point in the public key is compressed. Not every library supports points in compressed format."
22+
},
23+
"InvalidAsn" : {
24+
"bugType" : "UNKNOWN",
25+
"description" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value."
26+
},
27+
"LowOrderPublic" : {
28+
"bugType" : "WEAK_PARAMS",
29+
"description" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
30+
}
1631
},
17-
"schema" : "ecdh_test_schema.json",
32+
"schema" : "ecdh_test_schema_v1.json",
1833
"testGroups" : [
1934
{
2035
"curve" : "sect409r1",

testvectors_v1/ecdh_sect571k1_test.json

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,27 @@
99
"Java providers."
1010
],
1111
"notes" : {
12-
"AddSubChain" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See CVE_2017_10176",
13-
"CompressedPoint" : "The point in the public key is compressed. Not every library supports points in compressed format.",
14-
"InvalidAsn" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value.",
15-
"LowOrderPublic" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
12+
"AddSubChain" : {
13+
"bugType" : "KNOWN_BUG",
14+
"description" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See ",
15+
"cves" : [
16+
"CVE-2017-10176"
17+
]
18+
},
19+
"CompressedPoint" : {
20+
"bugType" : "UNKNOWN",
21+
"description" : "The point in the public key is compressed. Not every library supports points in compressed format."
22+
},
23+
"InvalidAsn" : {
24+
"bugType" : "UNKNOWN",
25+
"description" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value."
26+
},
27+
"LowOrderPublic" : {
28+
"bugType" : "WEAK_PARAMS",
29+
"description" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
30+
}
1631
},
17-
"schema" : "ecdh_test_schema.json",
32+
"schema" : "ecdh_test_schema_v1.json",
1833
"testGroups" : [
1934
{
2035
"curve" : "sect571k1",

testvectors_v1/ecdh_sect571r1_test.json

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,27 @@
99
"Java providers."
1010
],
1111
"notes" : {
12-
"AddSubChain" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See CVE_2017_10176",
13-
"CompressedPoint" : "The point in the public key is compressed. Not every library supports points in compressed format.",
14-
"InvalidAsn" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value.",
15-
"LowOrderPublic" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
12+
"AddSubChain" : {
13+
"bugType" : "KNOWN_BUG",
14+
"description" : "The private key has a special value. Implementations using addition subtraction chains for the point multiplication may get the point at infinity as an intermediate result. See ",
15+
"cves" : [
16+
"CVE-2017-10176"
17+
]
18+
},
19+
"CompressedPoint" : {
20+
"bugType" : "UNKNOWN",
21+
"description" : "The point in the public key is compressed. Not every library supports points in compressed format."
22+
},
23+
"InvalidAsn" : {
24+
"bugType" : "UNKNOWN",
25+
"description" : "The public key in this test uses an invalid ASN encoding. Some cases where the ASN parser is not strictly checking the ASN format are benign as long as the ECDH computation still returns the correct shared value."
26+
},
27+
"LowOrderPublic" : {
28+
"bugType" : "WEAK_PARAMS",
29+
"description" : "The public key is a point with low order. Such public keys should be rejected if the ECDH primitive does a full public key validation. It may be accepted if only a partial key validation is performed."
30+
}
1631
},
17-
"schema" : "ecdh_test_schema.json",
32+
"schema" : "ecdh_test_schema_v1.json",
1833
"testGroups" : [
1934
{
2035
"curve" : "sect571r1",

0 commit comments

Comments
 (0)