1b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallampackage org.bouncycastle.asn1.pkcs;
2b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
36e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstromimport org.bouncycastle.asn1.ASN1ObjectIdentifier;
4b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
5b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallampublic interface PKCSObjectIdentifiers
6b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam{
7b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
8b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // pkcs-1 OBJECT IDENTIFIER ::= {
9b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 1 }
10b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
116e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_1                    = new ASN1ObjectIdentifier("1.2.840.113549.1.1");
126e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    rsaEncryption             = pkcs_1.branch("1");
13b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // BEGIN android-removed
146e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // static final ASN1ObjectIdentifier    md2WithRSAEncryption      = pkcs_1.branch("2");
156e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // static final ASN1ObjectIdentifier    md4WithRSAEncryption      = pkcs_1.branch("3");
166e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // END android-removed
176e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    md5WithRSAEncryption      = pkcs_1.branch("4");
186e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    sha1WithRSAEncryption     = pkcs_1.branch("5");
196e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    srsaOAEPEncryptionSET     = pkcs_1.branch("6");
206e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_RSAES_OAEP             = pkcs_1.branch("7");
216e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_mgf1                   = pkcs_1.branch("8");
226e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_pSpecified             = pkcs_1.branch("9");
236e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_RSASSA_PSS             = pkcs_1.branch("10");
246e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    sha256WithRSAEncryption   = pkcs_1.branch("11");
256e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    sha384WithRSAEncryption   = pkcs_1.branch("12");
266e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    sha512WithRSAEncryption   = pkcs_1.branch("13");
276e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // BEGIN android-removed
286e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // static final ASN1ObjectIdentifier    sha224WithRSAEncryption   = pkcs_1.branch("14");
29b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // END android-removed
30b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
31b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
32b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // pkcs-3 OBJECT IDENTIFIER ::= {
33b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 3 }
34b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
356e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_3                  = new ASN1ObjectIdentifier("1.2.840.113549.1.3");
366e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    dhKeyAgreement          = pkcs_3.branch("1");
37b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
38b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
39b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // pkcs-5 OBJECT IDENTIFIER ::= {
40b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 5 }
41b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
426e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_5                  = new ASN1ObjectIdentifier("1.2.840.113549.1.5");
43b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
446e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithMD2AndDES_CBC    = pkcs_5.branch("1");
456e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithMD2AndRC2_CBC    = pkcs_5.branch("4");
466e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithMD5AndDES_CBC    = pkcs_5.branch("3");
476e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithMD5AndRC2_CBC    = pkcs_5.branch("6");
486e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithSHA1AndDES_CBC   = pkcs_5.branch("10");
496e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithSHA1AndRC2_CBC   = pkcs_5.branch("11");
50b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
516e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_PBES2                = pkcs_5.branch("13");
52b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
536e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_PBKDF2               = pkcs_5.branch("12");
54b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
55b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
56b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // encryptionAlgorithm OBJECT IDENTIFIER ::= {
57b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //       iso(1) member-body(2) us(840) rsadsi(113549) 3 }
58b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
596e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    encryptionAlgorithm     = new ASN1ObjectIdentifier("1.2.840.113549.3");
60b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
616e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    des_EDE3_CBC            = encryptionAlgorithm.branch("7");
626e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    RC2_CBC                 = encryptionAlgorithm.branch("2");
63b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
64b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
65b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // object identifiers for digests
66b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
676e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    digestAlgorithm        = new ASN1ObjectIdentifier("1.2.840.113549.2");
68b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
69b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // md2 OBJECT IDENTIFIER ::=
70b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //      {iso(1) member-body(2) US(840) rsadsi(113549) digestAlgorithm(2) 2}
71b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
72b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // BEGIN android-removed
736e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // static final ASN1ObjectIdentifier    md2                    = digestAlgorithm.branch("2");
74b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // END android-removed
75b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
76b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
77b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // md4 OBJECT IDENTIFIER ::=
78b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //      {iso(1) member-body(2) US(840) rsadsi(113549) digestAlgorithm(2) 4}
79b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
806e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // BEGIN android-removed
816e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // static final ASN1ObjectIdentifier    md4 = digestAlgorithm.branch("4");
826e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // END android-removed
83b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
84b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
85b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // md5 OBJECT IDENTIFIER ::=
86b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //      {iso(1) member-body(2) US(840) rsadsi(113549) digestAlgorithm(2) 5}
87b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
886e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    md5                     = digestAlgorithm.branch("5");
89b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
906e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_hmacWithSHA1         = digestAlgorithm.branch("7");
916e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // BEGIN android-removed
926e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // static final ASN1ObjectIdentifier    id_hmacWithSHA224       = digestAlgorithm.branch("8");
936e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    // END android-removed
946e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_hmacWithSHA256       = digestAlgorithm.branch("9");
956e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_hmacWithSHA384       = digestAlgorithm.branch("10");
966e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_hmacWithSHA512       = digestAlgorithm.branch("11");
97b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
98b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
99b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // pkcs-7 OBJECT IDENTIFIER ::= {
100b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 7 }
101b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
102b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    static final String                 pkcs_7                  = "1.2.840.113549.1.7";
1036e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    data                    = new ASN1ObjectIdentifier(pkcs_7 + ".1");
1046e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    signedData              = new ASN1ObjectIdentifier(pkcs_7 + ".2");
1056e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    envelopedData           = new ASN1ObjectIdentifier(pkcs_7 + ".3");
1066e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    signedAndEnvelopedData  = new ASN1ObjectIdentifier(pkcs_7 + ".4");
1076e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    digestedData            = new ASN1ObjectIdentifier(pkcs_7 + ".5");
1086e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    encryptedData           = new ASN1ObjectIdentifier(pkcs_7 + ".6");
109b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
110b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
111b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // pkcs-9 OBJECT IDENTIFIER ::= {
112b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 9 }
113b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
1146e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9                  = new ASN1ObjectIdentifier("1.2.840.113549.1.9");
115b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
1166e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_emailAddress  = pkcs_9.branch("1");
1176e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_unstructuredName = pkcs_9.branch("2");
1186e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_contentType = pkcs_9.branch("3");
1196e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_messageDigest = pkcs_9.branch("4");
1206e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_signingTime = pkcs_9.branch("5");
1216e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_counterSignature = pkcs_9.branch("6");
1226e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_challengePassword = pkcs_9.branch("7");
1236e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_unstructuredAddress = pkcs_9.branch("8");
1246e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_extendedCertificateAttributes = pkcs_9.branch("9");
125b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
1266e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_signingDescription = pkcs_9.branch("13");
1276e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_extensionRequest = pkcs_9.branch("14");
1286e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_smimeCapabilities = pkcs_9.branch("15");
129b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
1306e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_friendlyName  = pkcs_9.branch("20");
1316e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_9_at_localKeyId    = pkcs_9.branch("21");
132b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
133c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    /** @deprecated use x509Certificate instead */
1346e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    x509certType            = pkcs_9.branch("22.1");
135b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
1366e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    certTypes               = pkcs_9.branch("22");
1376e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    x509Certificate         = certTypes.branch("1");
1386e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    sdsiCertificate         = certTypes.branch("2");
139c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
1406e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    crlTypes                = pkcs_9.branch("23");
1416e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    x509Crl                 = crlTypes.branch("1");
142c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
1436e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_alg_PWRI_KEK    = pkcs_9.branch("16.3.9");
144b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
145b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
146b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // SMIME capability sub oids.
147b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
1486e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    preferSignedData        = pkcs_9.branch("15.1");
1496e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    canNotDecryptAny        = pkcs_9.branch("15.2");
1506e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    sMIMECapabilitiesVersions = pkcs_9.branch("15.3");
151b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
152b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
153b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // id-ct OBJECT IDENTIFIER ::= {iso(1) member-body(2) usa(840)
154b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) ct(1)}
155b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
1566e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_ct = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.1");
157c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
1586e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_ct_authData          = id_ct.branch("2");
1596e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_ct_TSTInfo           = id_ct.branch("4");
1606e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_ct_compressedData    = id_ct.branch("9");
1616e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_ct_authEnvelopedData = id_ct.branch("23");
1626e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_ct_timestampedData   = id_ct.branch("31");
163c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
164b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
165b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // id-cti OBJECT IDENTIFIER ::= {iso(1) member-body(2) usa(840)
166b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) cti(6)}
167b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
1686e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_cti = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.6");
169b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
1706e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_cti_ets_proofOfOrigin  = id_cti.branch("1");
1716e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_cti_ets_proofOfReceipt = id_cti.branch("2");
1726e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_cti_ets_proofOfDelivery = id_cti.branch("3");
1736e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_cti_ets_proofOfSender = id_cti.branch("4");
1746e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_cti_ets_proofOfApproval = id_cti.branch("5");
1756e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_cti_ets_proofOfCreation = id_cti.branch("6");
176b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
177b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
178b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // id-aa OBJECT IDENTIFIER ::= {iso(1) member-body(2) usa(840)
179b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) attributes(2)}
180b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
1816e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_aa = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.2");
1826e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom
183c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
1846e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_receiptRequest = id_aa.branch("1");
185b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
1866e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_contentHint = id_aa.branch("4"); // See RFC 2634
1876e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_msgSigDigest = id_aa.branch("5");
1886e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_contentReference = id_aa.branch("10");
189b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    /*
190b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     * id-aa-encrypKeyPref OBJECT IDENTIFIER ::= {id-aa 11}
191b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     *
192b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam     */
1936e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_encrypKeyPref = id_aa.branch("11");
1946e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_signingCertificate = id_aa.branch("12");
1956e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_signingCertificateV2 = id_aa.branch("47");
196b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
1976e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_contentIdentifier = id_aa.branch("7"); // See RFC 2634
198c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
199c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    /*
200c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom     * RFC 3126
201c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom     */
2026e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_signatureTimeStampToken = id_aa.branch("14");
203c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
2046e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_sigPolicyId = id_aa.branch("15");
2056e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_commitmentType = id_aa.branch("16");
2066e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_signerLocation = id_aa.branch("17");
2076e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_signerAttr = id_aa.branch("18");
2086e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_otherSigCert = id_aa.branch("19");
2096e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_contentTimestamp = id_aa.branch("20");
2106e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_certificateRefs = id_aa.branch("21");
2116e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_revocationRefs = id_aa.branch("22");
2126e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_certValues = id_aa.branch("23");
2136e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_revocationValues = id_aa.branch("24");
2146e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_escTimeStamp = id_aa.branch("25");
2156e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_certCRLTimestamp = id_aa.branch("26");
2166e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_ets_archiveTimestamp = id_aa.branch("27");
217c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
218c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    /** @deprecated use id_aa_ets_sigPolicyId instead */
2196e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_sigPolicyId = id_aa_ets_sigPolicyId;
220c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    /** @deprecated use id_aa_ets_commitmentType instead */
2216e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_commitmentType = id_aa_ets_commitmentType;
222c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    /** @deprecated use id_aa_ets_signerLocation instead */
2236e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_signerLocation = id_aa_ets_signerLocation;
224c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    /** @deprecated use id_aa_ets_otherSigCert instead */
2256e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_aa_otherSigCert = id_aa_ets_otherSigCert;
226c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
227c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    //
228c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    // id-spq OBJECT IDENTIFIER ::= {iso(1) member-body(2) usa(840)
229c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    // rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) id-spq(5)}
230c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    //
231c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom    final String id_spq = "1.2.840.113549.1.9.16.5";
232c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
2336e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_spq_ets_uri = new ASN1ObjectIdentifier(id_spq + ".1");
2346e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier id_spq_ets_unotice = new ASN1ObjectIdentifier(id_spq + ".2");
235c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
236b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
237b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    // pkcs-12 OBJECT IDENTIFIER ::= {
238b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //       iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 12 }
239b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam    //
2406e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier   pkcs_12                  = new ASN1ObjectIdentifier("1.2.840.113549.1.12");
2416e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier   bagtypes                 = pkcs_12.branch("10.1");
242b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
2436e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    keyBag                  = bagtypes.branch("1");
2446e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs8ShroudedKeyBag     = bagtypes.branch("2");
2456e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    certBag                 = bagtypes.branch("3");
2466e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    crlBag                  = bagtypes.branch("4");
2476e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    secretBag               = bagtypes.branch("5");
2486e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    safeContentsBag         = bagtypes.branch("6");
249b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
2506e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pkcs_12PbeIds  = pkcs_12.branch("1");
251b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
2526e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithSHAAnd128BitRC4 = pkcs_12PbeIds.branch("1");
2536e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithSHAAnd40BitRC4  = pkcs_12PbeIds.branch("2");
2546e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithSHAAnd3_KeyTripleDES_CBC = pkcs_12PbeIds.branch("3");
2556e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithSHAAnd2_KeyTripleDES_CBC = pkcs_12PbeIds.branch("4");
2566e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbeWithSHAAnd128BitRC2_CBC = pkcs_12PbeIds.branch("5");
2576e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    pbewithSHAAnd40BitRC2_CBC = pkcs_12PbeIds.branch("6");
258b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
2596e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_alg_CMS3DESwrap = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.3.6");
2606e736056d64d0e33b26cf9f7c4e351b496241fdeBrian Carlstrom    static final ASN1ObjectIdentifier    id_alg_CMSRC2wrap = new ASN1ObjectIdentifier("1.2.840.113549.1.9.16.3.7");
261b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam}
262b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam
263