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