• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package org.bouncycastle.asn1.pkcs;
2 
3 import org.bouncycastle.asn1.ASN1ObjectIdentifier;
4 
5 /**
6  * pkcs-1 OBJECT IDENTIFIER ::=<p>
7  *   { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 1 }
8  *
9  */
10 public interface PKCSObjectIdentifiers
11 {
12     /** PKCS#1: 1.2.840.113549.1.1 */
13     static final ASN1ObjectIdentifier    pkcs_1                    = new ASN1ObjectIdentifier("1.2.840.113549.1.1");
14     /** PKCS#1: 1.2.840.113549.1.1.1 */
15     static final ASN1ObjectIdentifier    rsaEncryption             = pkcs_1.branch("1");
16     // BEGIN android-removed
17     // /** PKCS#1: 1.2.840.113549.1.1.2 */
18     // static final ASN1ObjectIdentifier    md2WithRSAEncryption      = pkcs_1.branch("2");
19     // /** PKCS#1: 1.2.840.113549.1.1.3 */
20     // static final ASN1ObjectIdentifier    md4WithRSAEncryption      = pkcs_1.branch("3");
21     // END android-removed
22     /** PKCS#1: 1.2.840.113549.1.1.4 */
23     static final ASN1ObjectIdentifier    md5WithRSAEncryption      = pkcs_1.branch("4");
24     /** PKCS#1: 1.2.840.113549.1.1.5 */
25     static final ASN1ObjectIdentifier    sha1WithRSAEncryption     = pkcs_1.branch("5");
26     /** PKCS#1: 1.2.840.113549.1.1.6 */
27     static final ASN1ObjectIdentifier    srsaOAEPEncryptionSET     = pkcs_1.branch("6");
28     /** PKCS#1: 1.2.840.113549.1.1.7 */
29     static final ASN1ObjectIdentifier    id_RSAES_OAEP             = pkcs_1.branch("7");
30     /** PKCS#1: 1.2.840.113549.1.1.8 */
31     static final ASN1ObjectIdentifier    id_mgf1                   = pkcs_1.branch("8");
32     /** PKCS#1: 1.2.840.113549.1.1.9 */
33     static final ASN1ObjectIdentifier    id_pSpecified             = pkcs_1.branch("9");
34     /** PKCS#1: 1.2.840.113549.1.1.10 */
35     static final ASN1ObjectIdentifier    id_RSASSA_PSS             = pkcs_1.branch("10");
36     /** PKCS#1: 1.2.840.113549.1.1.11 */
37     static final ASN1ObjectIdentifier    sha256WithRSAEncryption   = pkcs_1.branch("11");
38     /** PKCS#1: 1.2.840.113549.1.1.12 */
39     static final ASN1ObjectIdentifier    sha384WithRSAEncryption   = pkcs_1.branch("12");
40     /** PKCS#1: 1.2.840.113549.1.1.13 */
41     static final ASN1ObjectIdentifier    sha512WithRSAEncryption   = pkcs_1.branch("13");
42     /** PKCS#1: 1.2.840.113549.1.1.14 */
43     static final ASN1ObjectIdentifier    sha224WithRSAEncryption   = pkcs_1.branch("14");
44     /** PKCS#1: 1.2.840.113549.1.1.15 */
45     ASN1ObjectIdentifier    sha512_224WithRSAEncryption   = pkcs_1.branch("15");
46     /** PKCS#1: 1.2.840.113549.1.1.16 */
47     ASN1ObjectIdentifier    sha512_256WithRSAEncryption   = pkcs_1.branch("16");
48 
49     //
50     // pkcs-3 OBJECT IDENTIFIER ::= {
51     //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 3 }
52     //
53     /** PKCS#3: 1.2.840.113549.1.3 */
54     static final ASN1ObjectIdentifier    pkcs_3                  = new ASN1ObjectIdentifier("1.2.840.113549.1.3");
55     /** PKCS#3: 1.2.840.113549.1.3.1 */
56     static final ASN1ObjectIdentifier    dhKeyAgreement          = pkcs_3.branch("1");
57 
58     //
59     // pkcs-5 OBJECT IDENTIFIER ::= {
60     //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 5 }
61     //
62     /** PKCS#5: 1.2.840.113549.1.5 */
63     static final ASN1ObjectIdentifier    pkcs_5                  = new ASN1ObjectIdentifier("1.2.840.113549.1.5");
64 
65     /** PKCS#5: 1.2.840.113549.1.5.1 */
66     static final ASN1ObjectIdentifier    pbeWithMD2AndDES_CBC    = pkcs_5.branch("1");
67     /** PKCS#5: 1.2.840.113549.1.5.4 */
68     static final ASN1ObjectIdentifier    pbeWithMD2AndRC2_CBC    = pkcs_5.branch("4");
69     /** PKCS#5: 1.2.840.113549.1.5.3 */
70     static final ASN1ObjectIdentifier    pbeWithMD5AndDES_CBC    = pkcs_5.branch("3");
71     /** PKCS#5: 1.2.840.113549.1.5.6 */
72     static final ASN1ObjectIdentifier    pbeWithMD5AndRC2_CBC    = pkcs_5.branch("6");
73     /** PKCS#5: 1.2.840.113549.1.5.10 */
74     static final ASN1ObjectIdentifier    pbeWithSHA1AndDES_CBC   = pkcs_5.branch("10");
75     /** PKCS#5: 1.2.840.113549.1.5.11 */
76     static final ASN1ObjectIdentifier    pbeWithSHA1AndRC2_CBC   = pkcs_5.branch("11");
77     /** PKCS#5: 1.2.840.113549.1.5.13 */
78     static final ASN1ObjectIdentifier    id_PBES2                = pkcs_5.branch("13");
79     /** PKCS#5: 1.2.840.113549.1.5.12 */
80     static final ASN1ObjectIdentifier    id_PBKDF2               = pkcs_5.branch("12");
81 
82     //
83     // encryptionAlgorithm OBJECT IDENTIFIER ::= {
84     //       iso(1) member-body(2) us(840) rsadsi(113549) 3 }
85     //
86     /**  1.2.840.113549.3 */
87     static final ASN1ObjectIdentifier    encryptionAlgorithm     = new ASN1ObjectIdentifier("1.2.840.113549.3");
88 
89     /**  1.2.840.113549.3.7 */
90     static final ASN1ObjectIdentifier    des_EDE3_CBC            = encryptionAlgorithm.branch("7");
91     /**  1.2.840.113549.3.2 */
92     static final ASN1ObjectIdentifier    RC2_CBC                 = encryptionAlgorithm.branch("2");
93     /**  1.2.840.113549.3.4 */
94     static final ASN1ObjectIdentifier    rc4                     = encryptionAlgorithm.branch("4");
95 
96     //
97     // object identifiers for digests
98     //
99     /**  1.2.840.113549.2 */
100     static final ASN1ObjectIdentifier    digestAlgorithm        = new ASN1ObjectIdentifier("1.2.840.113549.2");
101     //
102     // md2 OBJECT IDENTIFIER ::=
103     //      {iso(1) member-body(2) US(840) rsadsi(113549) digestAlgorithm(2) 2}
104     //
105     // BEGIN android-removed
106     // /**  1.2.840.113549.2.2 */
107     // static final ASN1ObjectIdentifier    md2                    = digestAlgorithm.branch("2");
108     // END android-removed
109 
110     //
111     // md4 OBJECT IDENTIFIER ::=
112     //      {iso(1) member-body(2) US(840) rsadsi(113549) digestAlgorithm(2) 4}
113     //
114     // BEGIN android-removed
115     // /**  1.2.840.113549.2.4 */
116     // static final ASN1ObjectIdentifier    md4                    = digestAlgorithm.branch("4");
117     // END android-removed
118 
119     //
120     // md5 OBJECT IDENTIFIER ::=
121     //      {iso(1) member-body(2) US(840) rsadsi(113549) digestAlgorithm(2) 5}
122     //
123     /**  1.2.840.113549.2.5 */
124     static final ASN1ObjectIdentifier    md5                    = digestAlgorithm.branch("5");
125 
126     /**  1.2.840.113549.2.7 */
127     static final ASN1ObjectIdentifier    id_hmacWithSHA1        = digestAlgorithm.branch("7").intern();
128     /**  1.2.840.113549.2.8 */
129     static final ASN1ObjectIdentifier    id_hmacWithSHA224      = digestAlgorithm.branch("8").intern();
130     /**  1.2.840.113549.2.9 */
131     static final ASN1ObjectIdentifier    id_hmacWithSHA256      = digestAlgorithm.branch("9").intern();
132     /**  1.2.840.113549.2.10 */
133     static final ASN1ObjectIdentifier    id_hmacWithSHA384      = digestAlgorithm.branch("10").intern();
134     /**  1.2.840.113549.2.11 */
135     static final ASN1ObjectIdentifier    id_hmacWithSHA512      = digestAlgorithm.branch("11").intern();
136 
137     //
138     // pkcs-7 OBJECT IDENTIFIER ::= {
139     //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 7 }
140     //
141     /** pkcs#7: 1.2.840.113549.1.7 */
142     static final ASN1ObjectIdentifier    pkcs_7                  = new ASN1ObjectIdentifier("1.2.840.113549.1.7").intern();
143     /** PKCS#7: 1.2.840.113549.1.7.1 */
144     static final ASN1ObjectIdentifier    data                    = new ASN1ObjectIdentifier("1.2.840.113549.1.7.1").intern();
145     /** PKCS#7: 1.2.840.113549.1.7.2 */
146     static final ASN1ObjectIdentifier    signedData              = new ASN1ObjectIdentifier("1.2.840.113549.1.7.2").intern();
147     /** PKCS#7: 1.2.840.113549.1.7.3 */
148     static final ASN1ObjectIdentifier    envelopedData           = new ASN1ObjectIdentifier("1.2.840.113549.1.7.3").intern();
149     /** PKCS#7: 1.2.840.113549.1.7.4 */
150     static final ASN1ObjectIdentifier    signedAndEnvelopedData  = new ASN1ObjectIdentifier("1.2.840.113549.1.7.4").intern();
151     /** PKCS#7: 1.2.840.113549.1.7.5 */
152     static final ASN1ObjectIdentifier    digestedData            = new ASN1ObjectIdentifier("1.2.840.113549.1.7.5").intern();
153     /** PKCS#7: 1.2.840.113549.1.7.76 */
154     static final ASN1ObjectIdentifier    encryptedData           = new ASN1ObjectIdentifier("1.2.840.113549.1.7.6").intern();
155 
156     //
157     // pkcs-9 OBJECT IDENTIFIER ::= {
158     //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 9 }
159     //
160     /** PKCS#9: 1.2.840.113549.1.9 */
161     static final ASN1ObjectIdentifier    pkcs_9                  = new ASN1ObjectIdentifier("1.2.840.113549.1.9");
162 
163     /** PKCS#9: 1.2.840.113549.1.9.1 */
164     static final ASN1ObjectIdentifier    pkcs_9_at_emailAddress        = pkcs_9.branch("1").intern();
165     /** PKCS#9: 1.2.840.113549.1.9.2 */
166     static final ASN1ObjectIdentifier    pkcs_9_at_unstructuredName    = pkcs_9.branch("2").intern();
167     /** PKCS#9: 1.2.840.113549.1.9.3 */
168     static final ASN1ObjectIdentifier    pkcs_9_at_contentType         = pkcs_9.branch("3").intern();
169     /** PKCS#9: 1.2.840.113549.1.9.4 */
170     static final ASN1ObjectIdentifier    pkcs_9_at_messageDigest       = pkcs_9.branch("4").intern();
171     /** PKCS#9: 1.2.840.113549.1.9.5 */
172     static final ASN1ObjectIdentifier    pkcs_9_at_signingTime         = pkcs_9.branch("5").intern();
173     /** PKCS#9: 1.2.840.113549.1.9.6 */
174     static final ASN1ObjectIdentifier    pkcs_9_at_counterSignature    = pkcs_9.branch("6").intern();
175     /** PKCS#9: 1.2.840.113549.1.9.7 */
176     static final ASN1ObjectIdentifier    pkcs_9_at_challengePassword   = pkcs_9.branch("7").intern();
177     /** PKCS#9: 1.2.840.113549.1.9.8 */
178     static final ASN1ObjectIdentifier    pkcs_9_at_unstructuredAddress = pkcs_9.branch("8").intern();
179     /** PKCS#9: 1.2.840.113549.1.9.9 */
180     static final ASN1ObjectIdentifier    pkcs_9_at_extendedCertificateAttributes = pkcs_9.branch("9").intern();
181 
182     /** PKCS#9: 1.2.840.113549.1.9.13 */
183     static final ASN1ObjectIdentifier    pkcs_9_at_signingDescription = pkcs_9.branch("13").intern();
184     /** PKCS#9: 1.2.840.113549.1.9.14 */
185     static final ASN1ObjectIdentifier    pkcs_9_at_extensionRequest   = pkcs_9.branch("14").intern();
186     /** PKCS#9: 1.2.840.113549.1.9.15 */
187     static final ASN1ObjectIdentifier    pkcs_9_at_smimeCapabilities  = pkcs_9.branch("15").intern();
188     /** PKCS#9: 1.2.840.113549.1.9.16 */
189     static final ASN1ObjectIdentifier    id_smime                     = pkcs_9.branch("16").intern();
190 
191     /** PKCS#9: 1.2.840.113549.1.9.20 */
192     static final ASN1ObjectIdentifier    pkcs_9_at_friendlyName  = pkcs_9.branch("20").intern();
193     /** PKCS#9: 1.2.840.113549.1.9.21 */
194     static final ASN1ObjectIdentifier    pkcs_9_at_localKeyId    = pkcs_9.branch("21").intern();
195 
196     /** PKCS#9: 1.2.840.113549.1.9.22.1
197      * @deprecated use x509Certificate instead */
198     static final ASN1ObjectIdentifier    x509certType            = pkcs_9.branch("22.1");
199 
200     /** PKCS#9: 1.2.840.113549.1.9.22 */
201     static final ASN1ObjectIdentifier    certTypes               = pkcs_9.branch("22");
202     /** PKCS#9: 1.2.840.113549.1.9.22.1 */
203     static final ASN1ObjectIdentifier    x509Certificate         = certTypes.branch("1").intern();
204     /** PKCS#9: 1.2.840.113549.1.9.22.2 */
205     static final ASN1ObjectIdentifier    sdsiCertificate         = certTypes.branch("2").intern();
206 
207     /** PKCS#9: 1.2.840.113549.1.9.23 */
208     static final ASN1ObjectIdentifier    crlTypes                = pkcs_9.branch("23");
209     /** PKCS#9: 1.2.840.113549.1.9.23.1 */
210     static final ASN1ObjectIdentifier    x509Crl                 = crlTypes.branch("1").intern();
211 
212     /** RFC 6211 -  id-aa-cmsAlgorithmProtect OBJECT IDENTIFIER ::= {
213             iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1)
214             pkcs9(9) 52 }  */
215     ASN1ObjectIdentifier   id_aa_cmsAlgorithmProtect = pkcs_9.branch("52").intern();
216 
217     //
218     // SMIME capability sub oids.
219     //
220     /** PKCS#9: 1.2.840.113549.1.9.15.1 -- smime capability */
221     static final ASN1ObjectIdentifier    preferSignedData        = pkcs_9.branch("15.1");
222     /** PKCS#9: 1.2.840.113549.1.9.15.2 -- smime capability  */
223     static final ASN1ObjectIdentifier    canNotDecryptAny        = pkcs_9.branch("15.2");
224     /** PKCS#9: 1.2.840.113549.1.9.15.3 -- smime capability  */
225     static final ASN1ObjectIdentifier    sMIMECapabilitiesVersions = pkcs_9.branch("15.3");
226 
227     //
228     // id-ct OBJECT IDENTIFIER ::= {iso(1) member-body(2) usa(840)
229     // rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) ct(1)}
230     //
231     /** PKCS#9: 1.2.840.113549.1.9.16.1 -- smime ct */
232     static final ASN1ObjectIdentifier    id_ct = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.1");
233 
234     /** PKCS#9: 1.2.840.113549.1.9.16.1.2 -- smime ct authData */
235     static final ASN1ObjectIdentifier    id_ct_authData          = id_ct.branch("2");
236     /** PKCS#9: 1.2.840.113549.1.9.16.1.4 -- smime ct TSTInfo*/
237     static final ASN1ObjectIdentifier    id_ct_TSTInfo           = id_ct.branch("4");
238     /** PKCS#9: 1.2.840.113549.1.9.16.1.9 -- smime ct compressedData */
239     static final ASN1ObjectIdentifier    id_ct_compressedData    = id_ct.branch("9");
240     /** PKCS#9: 1.2.840.113549.1.9.16.1.23 -- smime ct authEnvelopedData */
241     static final ASN1ObjectIdentifier    id_ct_authEnvelopedData = id_ct.branch("23");
242     /** PKCS#9: 1.2.840.113549.1.9.16.1.31 -- smime ct timestampedData*/
243     static final ASN1ObjectIdentifier    id_ct_timestampedData   = id_ct.branch("31");
244 
245 
246     /** S/MIME: Algorithm Identifiers ; 1.2.840.113549.1.9.16.3 */
247     static final ASN1ObjectIdentifier id_alg                  = id_smime.branch("3");
248     /** PKCS#9: 1.2.840.113549.1.9.16.3.9 */
249     static final ASN1ObjectIdentifier id_alg_PWRI_KEK         = id_alg.branch("9");
250     /**
251      * <pre>
252      * -- RSA-KEM Key Transport Algorithm
253      *
254      * id-rsa-kem OID ::= {
255      *      iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1)
256      *      pkcs-9(9) smime(16) alg(3) 14
257      *   }
258      * </pre>
259      */
260     static final ASN1ObjectIdentifier id_rsa_KEM              = id_alg.branch("14");
261 
262     //
263     // id-cti OBJECT IDENTIFIER ::= {iso(1) member-body(2) usa(840)
264     // rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) cti(6)}
265     //
266     /** PKCS#9: 1.2.840.113549.1.9.16.6 -- smime cti */
267     static final ASN1ObjectIdentifier    id_cti = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.6");
268 
269     /** PKCS#9: 1.2.840.113549.1.9.16.6.1 -- smime cti proofOfOrigin */
270     static final ASN1ObjectIdentifier    id_cti_ets_proofOfOrigin   = id_cti.branch("1");
271     /** PKCS#9: 1.2.840.113549.1.9.16.6.2 -- smime cti proofOfReceipt*/
272     static final ASN1ObjectIdentifier    id_cti_ets_proofOfReceipt  = id_cti.branch("2");
273     /** PKCS#9: 1.2.840.113549.1.9.16.6.3 -- smime cti proofOfDelivery */
274     static final ASN1ObjectIdentifier    id_cti_ets_proofOfDelivery = id_cti.branch("3");
275     /** PKCS#9: 1.2.840.113549.1.9.16.6.4 -- smime cti proofOfSender */
276     static final ASN1ObjectIdentifier    id_cti_ets_proofOfSender   = id_cti.branch("4");
277     /** PKCS#9: 1.2.840.113549.1.9.16.6.5 -- smime cti proofOfApproval */
278     static final ASN1ObjectIdentifier    id_cti_ets_proofOfApproval = id_cti.branch("5");
279     /** PKCS#9: 1.2.840.113549.1.9.16.6.6 -- smime cti proofOfCreation */
280     static final ASN1ObjectIdentifier    id_cti_ets_proofOfCreation = id_cti.branch("6");
281 
282     //
283     // id-aa OBJECT IDENTIFIER ::= {iso(1) member-body(2) usa(840)
284     // rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) attributes(2)}
285     //
286     /** PKCS#9: 1.2.840.113549.1.9.16.6.2 - smime attributes */
287     static final ASN1ObjectIdentifier    id_aa = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.2");
288 
289 
290     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.1 -- smime attribute receiptRequest */
291     static final ASN1ObjectIdentifier id_aa_receiptRequest = id_aa.branch("1");
292 
293     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.4 - See <a href="http://tools.ietf.org/html/rfc2634">RFC 2634</a> */
294     static final ASN1ObjectIdentifier id_aa_contentHint      = id_aa.branch("4"); // See RFC 2634
295     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.5 */
296     static final ASN1ObjectIdentifier id_aa_msgSigDigest     = id_aa.branch("5");
297     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.10 */
298     static final ASN1ObjectIdentifier id_aa_contentReference = id_aa.branch("10");
299     /*
300      * id-aa-encrypKeyPref OBJECT IDENTIFIER ::= {id-aa 11}
301      *
302      */
303     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.11 */
304     static final ASN1ObjectIdentifier id_aa_encrypKeyPref        = id_aa.branch("11");
305     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.12 */
306     static final ASN1ObjectIdentifier id_aa_signingCertificate   = id_aa.branch("12");
307     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.47 */
308     static final ASN1ObjectIdentifier id_aa_signingCertificateV2 = id_aa.branch("47");
309 
310     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.7 - See <a href="http://tools.ietf.org/html/rfc2634">RFC 2634</a> */
311     static final ASN1ObjectIdentifier id_aa_contentIdentifier = id_aa.branch("7"); // See RFC 2634
312 
313     /*
314      * RFC 3126
315      */
316     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.14 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
317     static final ASN1ObjectIdentifier id_aa_signatureTimeStampToken = id_aa.branch("14");
318 
319     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.15 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
320     static final ASN1ObjectIdentifier id_aa_ets_sigPolicyId = id_aa.branch("15");
321     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.16 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
322     static final ASN1ObjectIdentifier id_aa_ets_commitmentType = id_aa.branch("16");
323     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.17 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
324     static final ASN1ObjectIdentifier id_aa_ets_signerLocation = id_aa.branch("17");
325     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.18 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
326     static final ASN1ObjectIdentifier id_aa_ets_signerAttr = id_aa.branch("18");
327     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.19 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
328     static final ASN1ObjectIdentifier id_aa_ets_otherSigCert = id_aa.branch("19");
329     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.20 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
330     static final ASN1ObjectIdentifier id_aa_ets_contentTimestamp = id_aa.branch("20");
331     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.21 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
332     static final ASN1ObjectIdentifier id_aa_ets_certificateRefs = id_aa.branch("21");
333     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.22 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
334     static final ASN1ObjectIdentifier id_aa_ets_revocationRefs = id_aa.branch("22");
335     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.23 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
336     static final ASN1ObjectIdentifier id_aa_ets_certValues = id_aa.branch("23");
337     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.24 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
338     static final ASN1ObjectIdentifier id_aa_ets_revocationValues = id_aa.branch("24");
339     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.25 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
340     static final ASN1ObjectIdentifier id_aa_ets_escTimeStamp = id_aa.branch("25");
341     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.26 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
342     static final ASN1ObjectIdentifier id_aa_ets_certCRLTimestamp = id_aa.branch("26");
343     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.27 - <a href="http://tools.ietf.org/html/rfc3126">RFC 3126</a> */
344     static final ASN1ObjectIdentifier id_aa_ets_archiveTimestamp = id_aa.branch("27");
345 
346     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.37 - <a href="https://tools.ietf.org/html/rfc4108#section-2.2.5">RFC 4108</a> */
347     static final ASN1ObjectIdentifier id_aa_decryptKeyID = id_aa.branch("37");
348 
349     /** PKCS#9: 1.2.840.113549.1.9.16.6.2.38 - <a href="https://tools.ietf.org/html/rfc4108#section-2.2.6">RFC 4108</a> */
350     static final ASN1ObjectIdentifier id_aa_implCryptoAlgs = id_aa.branch("38");
351 
352     /** PKCS#9: 1.2.840.113549.1.9.16.2.54 <a href="https://tools.ietf.org/html/rfc7030">RFC7030</a>*/
353     static final ASN1ObjectIdentifier id_aa_asymmDecryptKeyID = id_aa.branch("54");
354 
355     /** PKCS#9: 1.2.840.113549.1.9.16.2.43   <a href="https://tools.ietf.org/html/rfc7030">RFC7030</a>*/
356     static final ASN1ObjectIdentifier id_aa_implCompressAlgs = id_aa.branch("43");
357     /** PKCS#9: 1.2.840.113549.1.9.16.2.40   <a href="https://tools.ietf.org/html/rfc7030">RFC7030</a>*/
358     static final ASN1ObjectIdentifier id_aa_communityIdentifiers = id_aa.branch("40");
359 
360     /** @deprecated use id_aa_ets_sigPolicyId instead */
361     static final ASN1ObjectIdentifier id_aa_sigPolicyId    = id_aa_ets_sigPolicyId;
362     /** @deprecated use id_aa_ets_commitmentType instead */
363     static final ASN1ObjectIdentifier id_aa_commitmentType = id_aa_ets_commitmentType;
364     /** @deprecated use id_aa_ets_signerLocation instead */
365     static final ASN1ObjectIdentifier id_aa_signerLocation = id_aa_ets_signerLocation;
366     /** @deprecated use id_aa_ets_otherSigCert instead */
367     static final ASN1ObjectIdentifier id_aa_otherSigCert   = id_aa_ets_otherSigCert;
368 
369     /**
370      * id-spq OBJECT IDENTIFIER ::= {iso(1) member-body(2) usa(840)
371      * rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) id-spq(5)}; <p>
372      * 1.2.840.113549.1.9.16.5
373      */
374     final String id_spq = "1.2.840.113549.1.9.16.5";
375 
376     /** SMIME SPQ URI:     1.2.840.113549.1.9.16.5.1 */
377     static final ASN1ObjectIdentifier id_spq_ets_uri     = new ASN1ObjectIdentifier(id_spq + ".1");
378     /** SMIME SPQ UNOTICE: 1.2.840.113549.1.9.16.5.2 */
379     static final ASN1ObjectIdentifier id_spq_ets_unotice = new ASN1ObjectIdentifier(id_spq + ".2");
380 
381     //
382     // pkcs-12 OBJECT IDENTIFIER ::= {
383     //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 12 }
384     //
385     /** PKCS#12: 1.2.840.113549.1.12 */
386     static final ASN1ObjectIdentifier   pkcs_12                  = new ASN1ObjectIdentifier("1.2.840.113549.1.12");
387     /** PKCS#12: 1.2.840.113549.1.12.10.1 */
388     static final ASN1ObjectIdentifier   bagtypes                 = pkcs_12.branch("10.1");
389 
390     /** PKCS#12: 1.2.840.113549.1.12.10.1.1 */
391     static final ASN1ObjectIdentifier    keyBag                  = bagtypes.branch("1");
392     /** PKCS#12: 1.2.840.113549.1.12.10.1.2 */
393     static final ASN1ObjectIdentifier    pkcs8ShroudedKeyBag     = bagtypes.branch("2");
394     /** PKCS#12: 1.2.840.113549.1.12.10.1.3 */
395     static final ASN1ObjectIdentifier    certBag                 = bagtypes.branch("3");
396     /** PKCS#12: 1.2.840.113549.1.12.10.1.4 */
397     static final ASN1ObjectIdentifier    crlBag                  = bagtypes.branch("4");
398     /** PKCS#12: 1.2.840.113549.1.12.10.1.5 */
399     static final ASN1ObjectIdentifier    secretBag               = bagtypes.branch("5");
400     /** PKCS#12: 1.2.840.113549.1.12.10.1.6 */
401     static final ASN1ObjectIdentifier    safeContentsBag         = bagtypes.branch("6");
402 
403     /** PKCS#12: 1.2.840.113549.1.12.1 */
404     static final ASN1ObjectIdentifier    pkcs_12PbeIds           = pkcs_12.branch("1");
405 
406     /** PKCS#12: 1.2.840.113549.1.12.1.1 */
407     static final ASN1ObjectIdentifier    pbeWithSHAAnd128BitRC4          = pkcs_12PbeIds.branch("1");
408     /** PKCS#12: 1.2.840.113549.1.12.1.2 */
409     static final ASN1ObjectIdentifier    pbeWithSHAAnd40BitRC4           = pkcs_12PbeIds.branch("2");
410     /** PKCS#12: 1.2.840.113549.1.12.1.3 */
411     static final ASN1ObjectIdentifier    pbeWithSHAAnd3_KeyTripleDES_CBC = pkcs_12PbeIds.branch("3");
412     /** PKCS#12: 1.2.840.113549.1.12.1.4 */
413     static final ASN1ObjectIdentifier    pbeWithSHAAnd2_KeyTripleDES_CBC = pkcs_12PbeIds.branch("4");
414     /** PKCS#12: 1.2.840.113549.1.12.1.5 */
415     static final ASN1ObjectIdentifier    pbeWithSHAAnd128BitRC2_CBC      = pkcs_12PbeIds.branch("5");
416     /** PKCS#12: 1.2.840.113549.1.12.1.6 */
417     static final ASN1ObjectIdentifier    pbeWithSHAAnd40BitRC2_CBC       = pkcs_12PbeIds.branch("6");
418 
419     /**
420      * PKCS#12: 1.2.840.113549.1.12.1.6
421      * @deprecated use pbeWithSHAAnd40BitRC2_CBC
422      */
423     static final ASN1ObjectIdentifier    pbewithSHAAnd40BitRC2_CBC = pkcs_12PbeIds.branch("6");
424 
425     /** PKCS#9: 1.2.840.113549.1.9.16.3.6 */
426     static final ASN1ObjectIdentifier    id_alg_CMS3DESwrap = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.3.6");
427     /** PKCS#9: 1.2.840.113549.1.9.16.3.7 */
428     static final ASN1ObjectIdentifier    id_alg_CMSRC2wrap  = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.3.7");
429     /** PKCS#9: 1.2.840.113549.1.9.16.3.5 */
430     static final ASN1ObjectIdentifier    id_alg_ESDH  = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.3.5");
431     /** PKCS#9: 1.2.840.113549.1.9.16.3.10 */
432     static final ASN1ObjectIdentifier    id_alg_SSDH  = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.3.10");
433 }
434 
435