summary refs log tree commit diff
path: root/crypto/src/pqc/asn1/PqcObjectIdentifiers.cs
blob: 94516f6f29859e64945c3b771c443f383445eb33 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
using System;

using Org.BouncyCastle.Asn1;
using Org.BouncyCastle.Asn1.BC;

namespace Org.BouncyCastle.Pqc.Asn1
{
    public static class PqcObjectIdentifiers
    {
        /** 1.3.6.1.4.1.8301.3.1.3.5.3.2 */
        public static readonly DerObjectIdentifier rainbow = new DerObjectIdentifier("1.3.6.1.4.1.8301.3.1.3.5.3.2");

        /** 1.3.6.1.4.1.8301.3.1.3.5.3.2.1 */
        public static readonly DerObjectIdentifier rainbowWithSha1   = rainbow.Branch("1");
        /** 1.3.6.1.4.1.8301.3.1.3.5.3.2.2 */
        public static readonly DerObjectIdentifier rainbowWithSha224 = rainbow.Branch("2");
        /** 1.3.6.1.4.1.8301.3.1.3.5.3.2.3 */
        public static readonly DerObjectIdentifier rainbowWithSha256 = rainbow.Branch("3");
        /** 1.3.6.1.4.1.8301.3.1.3.5.3.2.4 */
        public static readonly DerObjectIdentifier rainbowWithSha384 = rainbow.Branch("4");
        /** 1.3.6.1.4.1.8301.3.1.3.5.3.2.5 */
        public static readonly DerObjectIdentifier rainbowWithSha512 = rainbow.Branch("5");

        /** 1.3.6.1.4.1.8301.3.1.3.3 */
        public static readonly DerObjectIdentifier gmss = new DerObjectIdentifier("1.3.6.1.4.1.8301.3.1.3.3");

        /** 1.3.6.1.4.1.8301.3.1.3.3.1 */
        public static readonly DerObjectIdentifier gmssWithSha1   = gmss.Branch("1");
        /** 1.3.6.1.4.1.8301.3.1.3.3.2 */
        public static readonly DerObjectIdentifier gmssWithSha224 = gmss.Branch("2");
        /** 1.3.6.1.4.1.8301.3.1.3.3.3 */
        public static readonly DerObjectIdentifier gmssWithSha256 = gmss.Branch("3");
        /** 1.3.6.1.4.1.8301.3.1.3.3.4 */
        public static readonly DerObjectIdentifier gmssWithSha384 = gmss.Branch("4");
        /** 1.3.6.1.4.1.8301.3.1.3.3.5 */
        public static readonly DerObjectIdentifier gmssWithSha512 = gmss.Branch("5");

        /** 1.3.6.1.4.1.8301.3.1.3.4.1 */
        public static readonly DerObjectIdentifier mcEliece       = new DerObjectIdentifier("1.3.6.1.4.1.8301.3.1.3.4.1");

        /** 1.3.6.1.4.1.8301.3.1.3.4.2 */
        public static readonly DerObjectIdentifier mcElieceCca2   = new DerObjectIdentifier("1.3.6.1.4.1.8301.3.1.3.4.2");

        public static readonly DerObjectIdentifier mcElieceFujisaki    = new DerObjectIdentifier("1.3.6.1.4.1.8301.3.1.3.4.2.1");
        public static readonly DerObjectIdentifier mcEliecePointcheval = new DerObjectIdentifier("1.3.6.1.4.1.8301.3.1.3.4.2.2");
        public static readonly DerObjectIdentifier mcElieceKobara_Imai = new DerObjectIdentifier("1.3.6.1.4.1.8301.3.1.3.4.2.3");

        public static readonly DerObjectIdentifier sphincs256 = BCObjectIdentifiers.sphincs256;
        public static readonly DerObjectIdentifier sphincs256_with_BLAKE512 = BCObjectIdentifiers.sphincs256_with_BLAKE512;
        public static readonly DerObjectIdentifier sphincs256_with_SHA512 = BCObjectIdentifiers.sphincs256_with_SHA512;
        public static readonly DerObjectIdentifier sphincs256_with_SHA3_512 = BCObjectIdentifiers.sphincs256_with_SHA3_512;

        public static readonly DerObjectIdentifier newHope = BCObjectIdentifiers.newHope;

        /**
         * XMSS
         */
        public static readonly DerObjectIdentifier xmss                      = BCObjectIdentifiers.xmss;
        public static readonly DerObjectIdentifier xmss_SHA256ph             = BCObjectIdentifiers.xmss_SHA256ph;
        public static readonly DerObjectIdentifier xmss_SHA512ph             = BCObjectIdentifiers.xmss_SHA512ph;
        public static readonly DerObjectIdentifier xmss_SHAKE128ph           = BCObjectIdentifiers.xmss_SHAKE128ph;
        public static readonly DerObjectIdentifier xmss_SHAKE256ph           = BCObjectIdentifiers.xmss_SHAKE256ph;
        public static readonly DerObjectIdentifier xmss_SHA256               = BCObjectIdentifiers.xmss_SHA256;
        public static readonly DerObjectIdentifier xmss_SHA512               = BCObjectIdentifiers.xmss_SHA512;
        public static readonly DerObjectIdentifier xmss_SHAKE128             = BCObjectIdentifiers.xmss_SHAKE128;
        public static readonly DerObjectIdentifier xmss_SHAKE256             = BCObjectIdentifiers.xmss_SHAKE256;


        /**
         * XMSS^MT
         */
        public static readonly DerObjectIdentifier xmss_mt                   = BCObjectIdentifiers.xmss_mt;
        public static readonly DerObjectIdentifier xmss_mt_SHA256ph          = BCObjectIdentifiers.xmss_mt_SHA256ph;
        public static readonly DerObjectIdentifier xmss_mt_SHA512ph          = BCObjectIdentifiers.xmss_mt_SHA512ph;
        public static readonly DerObjectIdentifier xmss_mt_SHAKE128ph        = BCObjectIdentifiers.xmss_mt_SHAKE128ph;
        public static readonly DerObjectIdentifier xmss_mt_SHAKE256ph        = BCObjectIdentifiers.xmss_mt_SHAKE256ph;
        public static readonly DerObjectIdentifier xmss_mt_SHA256            = BCObjectIdentifiers.xmss_mt_SHA256;
        public static readonly DerObjectIdentifier xmss_mt_SHA512            = BCObjectIdentifiers.xmss_mt_SHA512;
        public static readonly DerObjectIdentifier xmss_mt_SHAKE128          = BCObjectIdentifiers.xmss_mt_SHAKE128;
        public static readonly DerObjectIdentifier xmss_mt_SHAKE256          = BCObjectIdentifiers.xmss_mt_SHAKE256;

        /**
         * qTESLA
         */
        public static readonly DerObjectIdentifier qTESLA = BCObjectIdentifiers.qTESLA;
        public static readonly DerObjectIdentifier qTESLA_p_I = BCObjectIdentifiers.qTESLA_p_I;
        public static readonly DerObjectIdentifier qTESLA_p_III = BCObjectIdentifiers.qTESLA_p_III;

        /**
         * Explicit composite algorithms
         */
        public static readonly DerObjectIdentifier id_Dilithium3_RSA_PKCS15_SHA256 = new DerObjectIdentifier("2.16.840.1.114027.80.5.1.1");
        public static readonly DerObjectIdentifier id_Dilithium3_ECDSA_P256_SHA256 = new DerObjectIdentifier("2.16.840.1.114027.80.5.1.2");
        public static readonly DerObjectIdentifier id_Dilithium3_ECDSA_brainpoolP256r1_SHA256 = new DerObjectIdentifier("2.16.840.1.114027.80.5.1.3");
        public static readonly DerObjectIdentifier id_Dilithium3_Ed25519 = new DerObjectIdentifier("2.16.840.1.114027.80.5.1.4");
        public static readonly DerObjectIdentifier id_Dilithium5_ECDSA_P384_SHA384 = new DerObjectIdentifier("2.16.840.1.114027.80.5.1.5");
        public static readonly DerObjectIdentifier id_Dilithium5_ECDSA_brainpoolP384r1_SHA384 = new DerObjectIdentifier("2.16.840.1.114027.80.5.1.6");
        public static readonly DerObjectIdentifier id_Dilithium5_Ed448 = new DerObjectIdentifier("2.16.840.1.114027.80.5.1.7");
        public static readonly DerObjectIdentifier id_Falcon512_ECDSA_P256_SHA256 = new DerObjectIdentifier("2.16.840.1.114027.80.5.1.8");
        public static readonly DerObjectIdentifier id_Falcon512_ECDSA_brainpoolP256r1_SHA256 = new DerObjectIdentifier("2.16.840.1.114027.80.5.1.9");
        public static readonly DerObjectIdentifier id_Falcon512_Ed25519 = new DerObjectIdentifier("2.16.840.1.114027.80.5.1.10");
    }
}