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