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