1 package org.bouncycastle.asn1.nist;
2 
3 import org.bouncycastle.asn1.ASN1ObjectIdentifier;
4 
5 /**
6  *
7  * NIST:
8  *     iso/itu(2) joint-assign(16) us(840) organization(1) gov(101) csor(3)
9  */
10 public interface NISTObjectIdentifiers
11 {
12     //
13     // nistalgorithms(4)
14     //
15     /** 2.16.840.1.101.3.4 -- algorithms */
16     static final ASN1ObjectIdentifier    nistAlgorithm           = new ASN1ObjectIdentifier("2.16.840.1.101.3.4");
17 
18     /** 2.16.840.1.101.3.4.2 */
19     static final ASN1ObjectIdentifier    hashAlgs                = nistAlgorithm.branch("2");
20 
21     /** 2.16.840.1.101.3.4.2.1 */
22     static final ASN1ObjectIdentifier    id_sha256               = hashAlgs.branch("1");
23     /** 2.16.840.1.101.3.4.2.2 */
24     static final ASN1ObjectIdentifier    id_sha384               = hashAlgs.branch("2");
25     /** 2.16.840.1.101.3.4.2.3 */
26     static final ASN1ObjectIdentifier    id_sha512               = hashAlgs.branch("3");
27     /** 2.16.840.1.101.3.4.2.4 */
28     static final ASN1ObjectIdentifier    id_sha224               = hashAlgs.branch("4");
29     /** 2.16.840.1.101.3.4.2.5 */
30     static final ASN1ObjectIdentifier    id_sha512_224           = hashAlgs.branch("5");
31     /** 2.16.840.1.101.3.4.2.6 */
32     static final ASN1ObjectIdentifier    id_sha512_256           = hashAlgs.branch("6");
33 
34     /** 2.16.840.1.101.3.4.2.7 */
35     static final ASN1ObjectIdentifier    id_sha3_224 = hashAlgs.branch("7");
36     /** 2.16.840.1.101.3.4.2.8 */
37     static final ASN1ObjectIdentifier    id_sha3_256 = hashAlgs.branch("8");
38     /** 2.16.840.1.101.3.4.2.9 */
39     static final ASN1ObjectIdentifier    id_sha3_384 = hashAlgs.branch("9");
40     /** 2.16.840.1.101.3.4.2.10 */
41     static final ASN1ObjectIdentifier    id_sha3_512 = hashAlgs.branch("10");
42     /** 2.16.840.1.101.3.4.2.11 */
43     static final ASN1ObjectIdentifier    id_shake128             = hashAlgs.branch("11");
44     /** 2.16.840.1.101.3.4.2.12 */
45     static final ASN1ObjectIdentifier    id_shake256             = hashAlgs.branch("12");
46 
47     /** 2.16.840.1.101.3.4.1 */
48     static final ASN1ObjectIdentifier    aes                     = nistAlgorithm.branch("1");
49 
50     /** 2.16.840.1.101.3.4.1.1 */
51     static final ASN1ObjectIdentifier    id_aes128_ECB           = aes.branch("1");
52     /** 2.16.840.1.101.3.4.1.2 */
53     static final ASN1ObjectIdentifier    id_aes128_CBC           = aes.branch("2");
54     /** 2.16.840.1.101.3.4.1.3 */
55     static final ASN1ObjectIdentifier    id_aes128_OFB           = aes.branch("3");
56     /** 2.16.840.1.101.3.4.1.4 */
57     static final ASN1ObjectIdentifier    id_aes128_CFB           = aes.branch("4");
58     /** 2.16.840.1.101.3.4.1.5 */
59     static final ASN1ObjectIdentifier    id_aes128_wrap          = aes.branch("5");
60     /** 2.16.840.1.101.3.4.1.6 */
61     static final ASN1ObjectIdentifier    id_aes128_GCM           = aes.branch("6");
62     /** 2.16.840.1.101.3.4.1.7 */
63     static final ASN1ObjectIdentifier    id_aes128_CCM           = aes.branch("7");
64 
65     /** 2.16.840.1.101.3.4.1.21 */
66     static final ASN1ObjectIdentifier    id_aes192_ECB           = aes.branch("21");
67     /** 2.16.840.1.101.3.4.1.22 */
68     static final ASN1ObjectIdentifier    id_aes192_CBC           = aes.branch("22");
69     /** 2.16.840.1.101.3.4.1.23 */
70     static final ASN1ObjectIdentifier    id_aes192_OFB           = aes.branch("23");
71     /** 2.16.840.1.101.3.4.1.24 */
72     static final ASN1ObjectIdentifier    id_aes192_CFB           = aes.branch("24");
73     /** 2.16.840.1.101.3.4.1.25 */
74     static final ASN1ObjectIdentifier    id_aes192_wrap          = aes.branch("25");
75     /** 2.16.840.1.101.3.4.1.26 */
76     static final ASN1ObjectIdentifier    id_aes192_GCM           = aes.branch("26");
77     /** 2.16.840.1.101.3.4.1.27 */
78     static final ASN1ObjectIdentifier    id_aes192_CCM           = aes.branch("27");
79 
80     /** 2.16.840.1.101.3.4.1.41 */
81     static final ASN1ObjectIdentifier    id_aes256_ECB           = aes.branch("41");
82     /** 2.16.840.1.101.3.4.1.42 */
83     static final ASN1ObjectIdentifier    id_aes256_CBC           = aes.branch("42");
84     /** 2.16.840.1.101.3.4.1.43 */
85     static final ASN1ObjectIdentifier    id_aes256_OFB           = aes.branch("43");
86     /** 2.16.840.1.101.3.4.1.44 */
87     static final ASN1ObjectIdentifier    id_aes256_CFB           = aes.branch("44");
88     /** 2.16.840.1.101.3.4.1.45 */
89     static final ASN1ObjectIdentifier    id_aes256_wrap          = aes.branch("45");
90     /** 2.16.840.1.101.3.4.1.46 */
91     static final ASN1ObjectIdentifier    id_aes256_GCM           = aes.branch("46");
92     /** 2.16.840.1.101.3.4.1.47 */
93     static final ASN1ObjectIdentifier    id_aes256_CCM           = aes.branch("47");
94 
95     //
96     // signatures
97     //
98     /** 2.16.840.1.101.3.4.3 */
99     static final ASN1ObjectIdentifier    id_dsa_with_sha2        = nistAlgorithm.branch("3");
100 
101     /** 2.16.840.1.101.3.4.3.1 */
102     static final ASN1ObjectIdentifier    dsa_with_sha224         = id_dsa_with_sha2.branch("1");
103     /** 2.16.840.1.101.3.4.3.2 */
104     static final ASN1ObjectIdentifier    dsa_with_sha256         = id_dsa_with_sha2.branch("2");
105     /** 2.16.840.1.101.3.4.3.3 */
106     static final ASN1ObjectIdentifier    dsa_with_sha384         = id_dsa_with_sha2.branch("3");
107     /** 2.16.840.1.101.3.4.3.4 */
108     static final ASN1ObjectIdentifier    dsa_with_sha512         = id_dsa_with_sha2.branch("4");
109 }
110