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