Home | History | Annotate | Line # | Download | only in der
      1  1.1  christos -- Copyright 2022 The OpenSSL Project Authors. All Rights Reserved.
      2  1.1  christos --
      3  1.1  christos -- Licensed under the Apache License 2.0 (the "License").  You may not use
      4  1.1  christos -- this file except in compliance with the License.  You can obtain a copy
      5  1.1  christos -- in the file LICENSE in the source distribution or at
      6  1.1  christos -- https://www.openssl.org/source/license.html
      7  1.1  christos 
      8  1.1  christos -- -------------------------------------------------------------------
      9  1.1  christos -- Taken from RFC 8017, Appendix C
     10  1.1  christos -- (https://www.rfc-editor.org/rfc/rfc8017.html#appendix-C)
     11  1.1  christos 
     12  1.1  christos -- ============================
     13  1.1  christos --   Basic object identifiers
     14  1.1  christos -- ============================
     15  1.1  christos 
     16  1.1  christos -- The DER encoding of this in hexadecimal is:
     17  1.1  christos -- (0x)06 08
     18  1.1  christos --        2A 86 48 86 F7 0D 01 01
     19  1.1  christos --
     20  1.1  christos pkcs-1    OBJECT IDENTIFIER ::= {
     21  1.1  christos     iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 1
     22  1.1  christos }
     23  1.1  christos 
     24  1.1  christos --
     25  1.1  christos -- When rsaEncryption is used in an AlgorithmIdentifier,
     26  1.1  christos -- the parameters MUST be present and MUST be NULL.
     27  1.1  christos --
     28  1.1  christos rsaEncryption    OBJECT IDENTIFIER ::= { pkcs-1 1 }
     29  1.1  christos 
     30  1.1  christos --
     31  1.1  christos -- When id-RSAES-OAEP is used in an AlgorithmIdentifier, the
     32  1.1  christos -- parameters MUST be present and MUST be RSAES-OAEP-params.
     33  1.1  christos --
     34  1.1  christos id-RSAES-OAEP    OBJECT IDENTIFIER ::= { pkcs-1 7 }
     35  1.1  christos 
     36  1.1  christos --
     37  1.1  christos -- When id-pSpecified is used in an AlgorithmIdentifier, the
     38  1.1  christos -- parameters MUST be an OCTET STRING.
     39  1.1  christos --
     40  1.1  christos id-pSpecified    OBJECT IDENTIFIER ::= { pkcs-1 9 }
     41  1.1  christos 
     42  1.1  christos --
     43  1.1  christos -- When id-RSASSA-PSS is used in an AlgorithmIdentifier, the
     44  1.1  christos -- parameters MUST be present and MUST be RSASSA-PSS-params.
     45  1.1  christos --
     46  1.1  christos id-RSASSA-PSS    OBJECT IDENTIFIER ::= { pkcs-1 10 }
     47  1.1  christos 
     48  1.1  christos --
     49  1.1  christos -- When the following OIDs are used in an AlgorithmIdentifier,
     50  1.1  christos -- the parameters MUST be present and MUST be NULL.
     51  1.1  christos --
     52  1.1  christos md2WithRSAEncryption         OBJECT IDENTIFIER ::= { pkcs-1 2 }
     53  1.1  christos md5WithRSAEncryption         OBJECT IDENTIFIER ::= { pkcs-1 4 }
     54  1.1  christos sha1WithRSAEncryption        OBJECT IDENTIFIER ::= { pkcs-1 5 }
     55  1.1  christos sha224WithRSAEncryption      OBJECT IDENTIFIER ::= { pkcs-1 14 }
     56  1.1  christos sha256WithRSAEncryption      OBJECT IDENTIFIER ::= { pkcs-1 11 }
     57  1.1  christos sha384WithRSAEncryption      OBJECT IDENTIFIER ::= { pkcs-1 12 }
     58  1.1  christos sha512WithRSAEncryption      OBJECT IDENTIFIER ::= { pkcs-1 13 }
     59  1.1  christos sha512-224WithRSAEncryption  OBJECT IDENTIFIER ::= { pkcs-1 15 }
     60  1.1  christos sha512-256WithRSAEncryption  OBJECT IDENTIFIER ::= { pkcs-1 16 }
     61  1.1  christos 
     62  1.1  christos --
     63  1.1  christos -- When id-mgf1 is used in an AlgorithmIdentifier, the parameters
     64  1.1  christos -- MUST be present and MUST be a HashAlgorithm, for example, sha1.
     65  1.1  christos --
     66  1.1  christos id-mgf1    OBJECT IDENTIFIER ::= { pkcs-1 8 }
     67  1.1  christos 
     68  1.1  christos -- -------------------------------------------------------------------
     69  1.1  christos -- Taken from https://csrc.nist.gov/projects/computer-security-objects-register/algorithm-registration
     70  1.1  christos 
     71  1.1  christos id-rsassa-pkcs1-v1_5-with-sha3-224 OBJECT IDENTIFIER ::= { sigAlgs 13 }
     72  1.1  christos id-rsassa-pkcs1-v1_5-with-sha3-256 OBJECT IDENTIFIER ::= { sigAlgs 14 }
     73  1.1  christos id-rsassa-pkcs1-v1_5-with-sha3-384 OBJECT IDENTIFIER ::= { sigAlgs 15 }
     74  1.1  christos id-rsassa-pkcs1-v1_5-with-sha3-512 OBJECT IDENTIFIER ::= { sigAlgs 16 }
     75  1.1  christos 
     76  1.1  christos 
     77  1.1  christos -- -------------------------------------------------------------------
     78  1.1  christos -- These OID's exist in the codebase but may need to be deprecated at some point.
     79  1.1  christos -- md5_sha1 has been omitted as it does not look like valid entry.
     80  1.1  christos 
     81  1.1  christos md4WithRSAEncryption OBJECT IDENTIFIER ::= { pkcs-1 3 }
     82  1.1  christos 
     83  1.1  christos ripemd160WithRSAEncryption    OBJECT IDENTIFIER ::= {
     84  1.1  christos     iso(1) identified-organization(3) teletrust(36) algorithm(3) signatureAlgorithm(3) rsaSignature(1) 2
     85  1.1  christos }
     86  1.1  christos 
     87  1.1  christos mdc2WithRSASignature OBJECT IDENTIFIER ::= {
     88  1.1  christos     iso(1) identified-organization(3) oiw(14) secsig(3) algorithms(2) mdc2WithRSASignature(14)
     89  1.1  christos }
     90