001package org.apache.commons.ssl.org.bouncycastle.asn1.x9;
002
003import org.apache.commons.ssl.org.bouncycastle.asn1.ASN1ObjectIdentifier;
004
005/**
006 *
007 * X9.62
008 * <pre>
009 * ansi-X9-62 OBJECT IDENTIFIER ::= { iso(1) member-body(2)
010 *                                    us(840) ansi-x962(10045) }
011 * </pre>
012 */
013public interface X9ObjectIdentifiers
014{
015    /** Base OID: 1.2.840.10045 */
016    static final ASN1ObjectIdentifier ansi_X9_62 = new ASN1ObjectIdentifier("1.2.840.10045");
017
018    /** OID: 1.2.840.10045.1 */
019    static final ASN1ObjectIdentifier id_fieldType = ansi_X9_62.branch("1");
020
021    /** OID: 1.2.840.10045.1.1 */
022    static final ASN1ObjectIdentifier prime_field = id_fieldType.branch("1");
023
024    /** OID: 1.2.840.10045.1.2 */
025    static final ASN1ObjectIdentifier characteristic_two_field = id_fieldType.branch("2");
026
027    /** OID: 1.2.840.10045.1.2.3.1 */
028    static final ASN1ObjectIdentifier gnBasis = characteristic_two_field.branch("3.1");
029
030    /** OID: 1.2.840.10045.1.2.3.2 */
031    static final ASN1ObjectIdentifier tpBasis = characteristic_two_field.branch("3.2");
032
033    /** OID: 1.2.840.10045.1.2.3.3 */
034    static final ASN1ObjectIdentifier ppBasis = characteristic_two_field.branch("3.3");
035
036    /** OID: 1.2.840.10045.4 */
037    static final ASN1ObjectIdentifier id_ecSigType = ansi_X9_62.branch("4");
038
039    /** OID: 1.2.840.10045.4.1 */
040    static final ASN1ObjectIdentifier ecdsa_with_SHA1 = id_ecSigType.branch("1");
041
042    /** OID: 1.2.840.10045.2 */
043    static final ASN1ObjectIdentifier id_publicKeyType = ansi_X9_62.branch("2");
044
045    /** OID: 1.2.840.10045.2.1 */
046    static final ASN1ObjectIdentifier id_ecPublicKey = id_publicKeyType.branch("1");
047
048    /** OID: 1.2.840.10045.4.3 */
049    static final ASN1ObjectIdentifier ecdsa_with_SHA2 = id_ecSigType.branch("3");
050
051    /** OID: 1.2.840.10045.4.3.1 */
052    static final ASN1ObjectIdentifier ecdsa_with_SHA224 = ecdsa_with_SHA2.branch("1");
053
054    /** OID: 1.2.840.10045.4.3.2 */
055    static final ASN1ObjectIdentifier ecdsa_with_SHA256 = ecdsa_with_SHA2.branch("2");
056
057    /** OID: 1.2.840.10045.4.3.3 */
058    static final ASN1ObjectIdentifier ecdsa_with_SHA384 = ecdsa_with_SHA2.branch("3");
059
060    /** OID: 1.2.840.10045.4.3.4 */
061    static final ASN1ObjectIdentifier ecdsa_with_SHA512 = ecdsa_with_SHA2.branch("4");
062
063    /**
064     * Named curves base
065     * <p>
066     * OID: 1.2.840.10045.3
067     */
068    static final ASN1ObjectIdentifier ellipticCurve = ansi_X9_62.branch("3");
069
070    /**
071     * Two Curves
072     * <p>
073     * OID: 1.2.840.10045.3.0
074     */
075    static final ASN1ObjectIdentifier  cTwoCurve = ellipticCurve.branch("0");
076
077    /** Two Curve c2pnb163v1, OID: 1.2.840.10045.3.0.1 */
078    static final ASN1ObjectIdentifier c2pnb163v1 = cTwoCurve.branch("1");
079    /** Two Curve c2pnb163v2, OID: 1.2.840.10045.3.0.2 */
080    static final ASN1ObjectIdentifier c2pnb163v2 = cTwoCurve.branch("2");
081    /** Two Curve c2pnb163v3, OID: 1.2.840.10045.3.0.3 */
082    static final ASN1ObjectIdentifier c2pnb163v3 = cTwoCurve.branch("3");
083    /** Two Curve c2pnb176w1, OID: 1.2.840.10045.3.0.4 */
084    static final ASN1ObjectIdentifier c2pnb176w1 = cTwoCurve.branch("4");
085    /** Two Curve c2tnb191v1, OID: 1.2.840.10045.3.0.5 */
086    static final ASN1ObjectIdentifier c2tnb191v1 = cTwoCurve.branch("5");
087    /** Two Curve c2tnb191v2, OID: 1.2.840.10045.3.0.6 */
088    static final ASN1ObjectIdentifier c2tnb191v2 = cTwoCurve.branch("6");
089    /** Two Curve c2tnb191v3, OID: 1.2.840.10045.3.0.7 */
090    static final ASN1ObjectIdentifier c2tnb191v3 = cTwoCurve.branch("7");
091    /** Two Curve c2onb191v4, OID: 1.2.840.10045.3.0.8 */
092    static final ASN1ObjectIdentifier c2onb191v4 = cTwoCurve.branch("8");
093    /** Two Curve c2onb191v5, OID: 1.2.840.10045.3.0.9 */
094    static final ASN1ObjectIdentifier c2onb191v5 = cTwoCurve.branch("9");
095    /** Two Curve c2pnb208w1, OID: 1.2.840.10045.3.0.10 */
096    static final ASN1ObjectIdentifier c2pnb208w1 = cTwoCurve.branch("10");
097    /** Two Curve c2tnb239v1, OID: 1.2.840.10045.3.0.11 */
098    static final ASN1ObjectIdentifier c2tnb239v1 = cTwoCurve.branch("11");
099    /** Two Curve c2tnb239v2, OID: 1.2.840.10045.3.0.12 */
100    static final ASN1ObjectIdentifier c2tnb239v2 = cTwoCurve.branch("12");
101    /** Two Curve c2tnb239v3, OID: 1.2.840.10045.3.0.13 */
102    static final ASN1ObjectIdentifier c2tnb239v3 = cTwoCurve.branch("13");
103    /** Two Curve c2onb239v4, OID: 1.2.840.10045.3.0.14 */
104    static final ASN1ObjectIdentifier c2onb239v4 = cTwoCurve.branch("14");
105    /** Two Curve c2onb239v5, OID: 1.2.840.10045.3.0.15 */
106    static final ASN1ObjectIdentifier c2onb239v5 = cTwoCurve.branch("15");
107    /** Two Curve c2pnb272w1, OID: 1.2.840.10045.3.0.16 */
108    static final ASN1ObjectIdentifier c2pnb272w1 = cTwoCurve.branch("16");
109    /** Two Curve c2pnb304w1, OID: 1.2.840.10045.3.0.17 */
110    static final ASN1ObjectIdentifier c2pnb304w1 = cTwoCurve.branch("17");
111    /** Two Curve c2tnb359v1, OID: 1.2.840.10045.3.0.18 */
112    static final ASN1ObjectIdentifier c2tnb359v1 = cTwoCurve.branch("18");
113    /** Two Curve c2pnb368w1, OID: 1.2.840.10045.3.0.19 */
114    static final ASN1ObjectIdentifier c2pnb368w1 = cTwoCurve.branch("19");
115    /** Two Curve c2tnb431r1, OID: 1.2.840.10045.3.0.20 */
116    static final ASN1ObjectIdentifier c2tnb431r1 = cTwoCurve.branch("20");
117
118    /**
119     * Prime Curves
120     * <p>
121     * OID: 1.2.840.10045.3.1
122     */
123    static final ASN1ObjectIdentifier primeCurve = ellipticCurve.branch("1");
124
125    /** Prime Curve prime192v1, OID: 1.2.840.10045.3.1.1 */
126    static final ASN1ObjectIdentifier prime192v1 = primeCurve.branch("1");
127    /** Prime Curve prime192v2, OID: 1.2.840.10045.3.1.2 */
128    static final ASN1ObjectIdentifier prime192v2 = primeCurve.branch("2");
129    /** Prime Curve prime192v3, OID: 1.2.840.10045.3.1.3 */
130    static final ASN1ObjectIdentifier prime192v3 = primeCurve.branch("3");
131    /** Prime Curve prime239v1, OID: 1.2.840.10045.3.1.4 */
132    static final ASN1ObjectIdentifier prime239v1 = primeCurve.branch("4");
133    /** Prime Curve prime239v2, OID: 1.2.840.10045.3.1.5 */
134    static final ASN1ObjectIdentifier prime239v2 = primeCurve.branch("5");
135    /** Prime Curve prime239v3, OID: 1.2.840.10045.3.1.6 */
136    static final ASN1ObjectIdentifier prime239v3 = primeCurve.branch("6");
137    /** Prime Curve prime256v1, OID: 1.2.840.10045.3.1.7 */
138    static final ASN1ObjectIdentifier prime256v1 = primeCurve.branch("7");
139
140    /**
141     * DSA
142     * <pre>
143     * dsapublicnumber OBJECT IDENTIFIER ::= { iso(1) member-body(2)
144     *                                         us(840) ansi-x957(10040) number-type(4) 1 }
145     * </pre>
146     * Base OID: 1.2.840.10040.4.1
147     */
148    static final ASN1ObjectIdentifier id_dsa = new ASN1ObjectIdentifier("1.2.840.10040.4.1");
149
150    /**
151     * <pre>
152     * id-dsa-with-sha1 OBJECT IDENTIFIER ::= {
153     *     iso(1) member-body(2) us(840) x9-57(10040) x9cm(4) 3 }
154     * </pre>
155     * OID: 1.2.840.10040.4.3
156     */
157    static final ASN1ObjectIdentifier id_dsa_with_sha1 = new ASN1ObjectIdentifier("1.2.840.10040.4.3");
158
159    /**
160     * X9.63 - Signature Specification
161     * <p>
162     * Base OID: 1.3.133.16.840.63.0
163     */
164    static final ASN1ObjectIdentifier x9_63_scheme = new ASN1ObjectIdentifier("1.3.133.16.840.63.0");
165    /** OID: 1.3.133.16.840.63.0.2 */
166    static final ASN1ObjectIdentifier dhSinglePass_stdDH_sha1kdf_scheme      = x9_63_scheme.branch("2");
167    /** OID: 1.3.133.16.840.63.0.3 */
168    static final ASN1ObjectIdentifier dhSinglePass_cofactorDH_sha1kdf_scheme = x9_63_scheme.branch("3");
169    /** OID: 1.3.133.16.840.63.0.16 */
170    static final ASN1ObjectIdentifier mqvSinglePass_sha1kdf_scheme           = x9_63_scheme.branch("16");
171
172    /**
173     * X9.42
174     */
175
176    static final ASN1ObjectIdentifier ansi_X9_42 = new ASN1ObjectIdentifier("1.2.840.10046");
177
178    /**
179     * Diffie-Hellman
180     * <pre>
181     * dhpublicnumber OBJECT IDENTIFIER ::= {
182     *    iso(1) member-body(2)  us(840) ansi-x942(10046) number-type(2) 1
183     * }
184     * </pre>
185     * OID: 1.2.840.10046.2.1
186     */
187    static final ASN1ObjectIdentifier dhpublicnumber = ansi_X9_42.branch("2.1");
188
189    /** X9.42 schemas base OID: 1.2.840.10046.3 */
190    static final ASN1ObjectIdentifier x9_42_schemes = ansi_X9_42.branch("3");
191    /** X9.42 dhStatic OID: 1.2.840.10046.3.1 */
192    static final ASN1ObjectIdentifier dhStatic        = x9_42_schemes.branch("1");
193    /** X9.42 dhEphem OID: 1.2.840.10046.3.2 */
194    static final ASN1ObjectIdentifier dhEphem         = x9_42_schemes.branch("2");
195    /** X9.42 dhOneFlow OID: 1.2.840.10046.3.3 */
196    static final ASN1ObjectIdentifier dhOneFlow       = x9_42_schemes.branch("3");
197    /** X9.42 dhHybrid1 OID: 1.2.840.10046.3.4 */
198    static final ASN1ObjectIdentifier dhHybrid1       = x9_42_schemes.branch("4");
199    /** X9.42 dhHybrid2 OID: 1.2.840.10046.3.5 */
200    static final ASN1ObjectIdentifier dhHybrid2       = x9_42_schemes.branch("5");
201    /** X9.42 dhHybridOneFlow OID: 1.2.840.10046.3.6 */
202    static final ASN1ObjectIdentifier dhHybridOneFlow = x9_42_schemes.branch("6");
203    /** X9.42 MQV2 OID: 1.2.840.10046.3.7 */
204    static final ASN1ObjectIdentifier mqv2            = x9_42_schemes.branch("7");
205    /** X9.42 MQV1 OID: 1.2.840.10046.3.8 */
206    static final ASN1ObjectIdentifier mqv1            = x9_42_schemes.branch("8");
207}