1-- -------------------------------------------------------------------
2-- Taken from RFC 3279, 3  ASN.1 Module
3-- (https://www.rfc-editor.org/rfc/rfc3279.html#section-3)
4
5ansi-X9-62  OBJECT IDENTIFIER ::= {
6     iso(1) member-body(2) us(840) 10045 }
7
8-- Arc for ECDSA signature OIDS
9
10id-ecSigType OBJECT IDENTIFIER ::= { ansi-X9-62 signatures(4) }
11
12-- OID for ECDSA signatures with SHA-1
13
14ecdsa-with-SHA1 OBJECT IDENTIFIER ::= { id-ecSigType 1 }
15
16id-publicKeyType OBJECT IDENTIFIER  ::= { ansi-X9-62 keyType(2) }
17
18id-ecPublicKey OBJECT IDENTIFIER ::= { id-publicKeyType 1 }
19
20-- Named Elliptic Curves in ANSI X9.62.
21
22ellipticCurve OBJECT IDENTIFIER ::= { ansi-X9-62 curves(3) }
23
24c-TwoCurve OBJECT IDENTIFIER ::= {
25     ellipticCurve characteristicTwo(0) }
26
27c2pnb163v1  OBJECT IDENTIFIER  ::=  { c-TwoCurve  1 }
28c2pnb163v2  OBJECT IDENTIFIER  ::=  { c-TwoCurve  2 }
29c2pnb163v3  OBJECT IDENTIFIER  ::=  { c-TwoCurve  3 }
30c2pnb176w1  OBJECT IDENTIFIER  ::=  { c-TwoCurve  4 }
31c2tnb191v1  OBJECT IDENTIFIER  ::=  { c-TwoCurve  5 }
32c2tnb191v2  OBJECT IDENTIFIER  ::=  { c-TwoCurve  6 }
33c2tnb191v3  OBJECT IDENTIFIER  ::=  { c-TwoCurve  7 }
34c2onb191v4  OBJECT IDENTIFIER  ::=  { c-TwoCurve  8 }
35c2onb191v5  OBJECT IDENTIFIER  ::=  { c-TwoCurve  9 }
36c2pnb208w1  OBJECT IDENTIFIER  ::=  { c-TwoCurve 10 }
37c2tnb239v1  OBJECT IDENTIFIER  ::=  { c-TwoCurve 11 }
38c2tnb239v2  OBJECT IDENTIFIER  ::=  { c-TwoCurve 12 }
39c2tnb239v3  OBJECT IDENTIFIER  ::=  { c-TwoCurve 13 }
40c2onb239v4  OBJECT IDENTIFIER  ::=  { c-TwoCurve 14 }
41c2onb239v5  OBJECT IDENTIFIER  ::=  { c-TwoCurve 15 }
42c2pnb272w1  OBJECT IDENTIFIER  ::=  { c-TwoCurve 16 }
43c2pnb304w1  OBJECT IDENTIFIER  ::=  { c-TwoCurve 17 }
44c2tnb359v1  OBJECT IDENTIFIER  ::=  { c-TwoCurve 18 }
45c2pnb368w1  OBJECT IDENTIFIER  ::=  { c-TwoCurve 19 }
46c2tnb431r1  OBJECT IDENTIFIER  ::=  { c-TwoCurve 20 }
47
48primeCurve OBJECT IDENTIFIER ::= { ellipticCurve prime(1) }
49
50prime192v1  OBJECT IDENTIFIER  ::=  { primeCurve  1 }
51prime192v2  OBJECT IDENTIFIER  ::=  { primeCurve  2 }
52prime192v3  OBJECT IDENTIFIER  ::=  { primeCurve  3 }
53prime239v1  OBJECT IDENTIFIER  ::=  { primeCurve  4 }
54prime239v2  OBJECT IDENTIFIER  ::=  { primeCurve  5 }
55prime239v3  OBJECT IDENTIFIER  ::=  { primeCurve  6 }
56prime256v1  OBJECT IDENTIFIER  ::=  { primeCurve  7 }
57
58-- -------------------------------------------------------------------
59-- Taken from RFC 5758, 3.2.  ECDSA Signature Algorithm
60-- (https://www.rfc-editor.org/rfc/rfc5758.html#section-3.2)
61
62ecdsa-with-SHA224 OBJECT IDENTIFIER ::= { iso(1) member-body(2)
63     us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 1 }
64
65ecdsa-with-SHA256 OBJECT IDENTIFIER ::= { iso(1) member-body(2)
66     us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 2 }
67
68ecdsa-with-SHA384 OBJECT IDENTIFIER ::= { iso(1) member-body(2)
69     us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 3 }
70
71ecdsa-with-SHA512 OBJECT IDENTIFIER ::= { iso(1) member-body(2)
72     us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 4 }
73
74-- -------------------------------------------------------------------
75-- Taken from https://csrc.nist.gov/projects/computer-security-objects-register/algorithm-registration
76
77sigAlgs OBJECT IDENTIFIER ::= { 2 16 840 1 101 3 4 3 }
78
79id-ecdsa-with-sha3-224 OBJECT IDENTIFIER ::= { sigAlgs 9 }
80id-ecdsa-with-sha3-256 OBJECT IDENTIFIER ::= { sigAlgs 10 }
81id-ecdsa-with-sha3-384 OBJECT IDENTIFIER ::= { sigAlgs 11 }
82id-ecdsa-with-sha3-512 OBJECT IDENTIFIER ::= { sigAlgs 12 }
83
84