1*de0e0e4dSAntonio Huete Jimenez /* $OpenBSD: objects.h,v 1.18 2022/07/12 14:42:49 kn Exp $ */ 2f5b1c8a1SJohn Marino /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 3f5b1c8a1SJohn Marino * All rights reserved. 4f5b1c8a1SJohn Marino * 5f5b1c8a1SJohn Marino * This package is an SSL implementation written 6f5b1c8a1SJohn Marino * by Eric Young (eay@cryptsoft.com). 7f5b1c8a1SJohn Marino * The implementation was written so as to conform with Netscapes SSL. 8f5b1c8a1SJohn Marino * 9f5b1c8a1SJohn Marino * This library is free for commercial and non-commercial use as long as 10f5b1c8a1SJohn Marino * the following conditions are aheared to. The following conditions 11f5b1c8a1SJohn Marino * apply to all code found in this distribution, be it the RC4, RSA, 12f5b1c8a1SJohn Marino * lhash, DES, etc., code; not just the SSL code. The SSL documentation 13f5b1c8a1SJohn Marino * included with this distribution is covered by the same copyright terms 14f5b1c8a1SJohn Marino * except that the holder is Tim Hudson (tjh@cryptsoft.com). 15f5b1c8a1SJohn Marino * 16f5b1c8a1SJohn Marino * Copyright remains Eric Young's, and as such any Copyright notices in 17f5b1c8a1SJohn Marino * the code are not to be removed. 18f5b1c8a1SJohn Marino * If this package is used in a product, Eric Young should be given attribution 19f5b1c8a1SJohn Marino * as the author of the parts of the library used. 20f5b1c8a1SJohn Marino * This can be in the form of a textual message at program startup or 21f5b1c8a1SJohn Marino * in documentation (online or textual) provided with the package. 22f5b1c8a1SJohn Marino * 23f5b1c8a1SJohn Marino * Redistribution and use in source and binary forms, with or without 24f5b1c8a1SJohn Marino * modification, are permitted provided that the following conditions 25f5b1c8a1SJohn Marino * are met: 26f5b1c8a1SJohn Marino * 1. Redistributions of source code must retain the copyright 27f5b1c8a1SJohn Marino * notice, this list of conditions and the following disclaimer. 28f5b1c8a1SJohn Marino * 2. Redistributions in binary form must reproduce the above copyright 29f5b1c8a1SJohn Marino * notice, this list of conditions and the following disclaimer in the 30f5b1c8a1SJohn Marino * documentation and/or other materials provided with the distribution. 31f5b1c8a1SJohn Marino * 3. All advertising materials mentioning features or use of this software 32f5b1c8a1SJohn Marino * must display the following acknowledgement: 33f5b1c8a1SJohn Marino * "This product includes cryptographic software written by 34f5b1c8a1SJohn Marino * Eric Young (eay@cryptsoft.com)" 35f5b1c8a1SJohn Marino * The word 'cryptographic' can be left out if the rouines from the library 36f5b1c8a1SJohn Marino * being used are not cryptographic related :-). 37f5b1c8a1SJohn Marino * 4. If you include any Windows specific code (or a derivative thereof) from 38f5b1c8a1SJohn Marino * the apps directory (application code) you must include an acknowledgement: 39f5b1c8a1SJohn Marino * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" 40f5b1c8a1SJohn Marino * 41f5b1c8a1SJohn Marino * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND 42f5b1c8a1SJohn Marino * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 43f5b1c8a1SJohn Marino * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 44f5b1c8a1SJohn Marino * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 45f5b1c8a1SJohn Marino * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 46f5b1c8a1SJohn Marino * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 47f5b1c8a1SJohn Marino * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 48f5b1c8a1SJohn Marino * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 49f5b1c8a1SJohn Marino * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 50f5b1c8a1SJohn Marino * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 51f5b1c8a1SJohn Marino * SUCH DAMAGE. 52f5b1c8a1SJohn Marino * 53f5b1c8a1SJohn Marino * The licence and distribution terms for any publically available version or 54f5b1c8a1SJohn Marino * derivative of this code cannot be changed. i.e. this code cannot simply be 55f5b1c8a1SJohn Marino * copied and put under another distribution licence 56f5b1c8a1SJohn Marino * [including the GNU Public Licence.] 57f5b1c8a1SJohn Marino */ 58f5b1c8a1SJohn Marino 59f5b1c8a1SJohn Marino #ifndef HEADER_OBJECTS_H 60f5b1c8a1SJohn Marino #define HEADER_OBJECTS_H 61f5b1c8a1SJohn Marino 62f5b1c8a1SJohn Marino #define USE_OBJ_MAC 63f5b1c8a1SJohn Marino 64f5b1c8a1SJohn Marino #ifdef USE_OBJ_MAC 65f5b1c8a1SJohn Marino #include <openssl/obj_mac.h> 66f5b1c8a1SJohn Marino #else 67f5b1c8a1SJohn Marino #define SN_undef "UNDEF" 68f5b1c8a1SJohn Marino #define LN_undef "undefined" 69f5b1c8a1SJohn Marino #define NID_undef 0 70f5b1c8a1SJohn Marino #define OBJ_undef 0L 71f5b1c8a1SJohn Marino 72f5b1c8a1SJohn Marino #define SN_Algorithm "Algorithm" 73f5b1c8a1SJohn Marino #define LN_algorithm "algorithm" 74f5b1c8a1SJohn Marino #define NID_algorithm 38 75f5b1c8a1SJohn Marino #define OBJ_algorithm 1L,3L,14L,3L,2L 76f5b1c8a1SJohn Marino 77f5b1c8a1SJohn Marino #define LN_rsadsi "rsadsi" 78f5b1c8a1SJohn Marino #define NID_rsadsi 1 79f5b1c8a1SJohn Marino #define OBJ_rsadsi 1L,2L,840L,113549L 80f5b1c8a1SJohn Marino 81f5b1c8a1SJohn Marino #define LN_pkcs "pkcs" 82f5b1c8a1SJohn Marino #define NID_pkcs 2 83f5b1c8a1SJohn Marino #define OBJ_pkcs OBJ_rsadsi,1L 84f5b1c8a1SJohn Marino 85f5b1c8a1SJohn Marino #define SN_md2 "MD2" 86f5b1c8a1SJohn Marino #define LN_md2 "md2" 87f5b1c8a1SJohn Marino #define NID_md2 3 88f5b1c8a1SJohn Marino #define OBJ_md2 OBJ_rsadsi,2L,2L 89f5b1c8a1SJohn Marino 90f5b1c8a1SJohn Marino #define SN_md5 "MD5" 91f5b1c8a1SJohn Marino #define LN_md5 "md5" 92f5b1c8a1SJohn Marino #define NID_md5 4 93f5b1c8a1SJohn Marino #define OBJ_md5 OBJ_rsadsi,2L,5L 94f5b1c8a1SJohn Marino 95f5b1c8a1SJohn Marino #define SN_rc4 "RC4" 96f5b1c8a1SJohn Marino #define LN_rc4 "rc4" 97f5b1c8a1SJohn Marino #define NID_rc4 5 98f5b1c8a1SJohn Marino #define OBJ_rc4 OBJ_rsadsi,3L,4L 99f5b1c8a1SJohn Marino 100f5b1c8a1SJohn Marino #define LN_rsaEncryption "rsaEncryption" 101f5b1c8a1SJohn Marino #define NID_rsaEncryption 6 102f5b1c8a1SJohn Marino #define OBJ_rsaEncryption OBJ_pkcs,1L,1L 103f5b1c8a1SJohn Marino 104f5b1c8a1SJohn Marino #define SN_md2WithRSAEncryption "RSA-MD2" 105f5b1c8a1SJohn Marino #define LN_md2WithRSAEncryption "md2WithRSAEncryption" 106f5b1c8a1SJohn Marino #define NID_md2WithRSAEncryption 7 107f5b1c8a1SJohn Marino #define OBJ_md2WithRSAEncryption OBJ_pkcs,1L,2L 108f5b1c8a1SJohn Marino 109f5b1c8a1SJohn Marino #define SN_md5WithRSAEncryption "RSA-MD5" 110f5b1c8a1SJohn Marino #define LN_md5WithRSAEncryption "md5WithRSAEncryption" 111f5b1c8a1SJohn Marino #define NID_md5WithRSAEncryption 8 112f5b1c8a1SJohn Marino #define OBJ_md5WithRSAEncryption OBJ_pkcs,1L,4L 113f5b1c8a1SJohn Marino 114f5b1c8a1SJohn Marino #define SN_pbeWithMD2AndDES_CBC "PBE-MD2-DES" 115f5b1c8a1SJohn Marino #define LN_pbeWithMD2AndDES_CBC "pbeWithMD2AndDES-CBC" 116f5b1c8a1SJohn Marino #define NID_pbeWithMD2AndDES_CBC 9 117f5b1c8a1SJohn Marino #define OBJ_pbeWithMD2AndDES_CBC OBJ_pkcs,5L,1L 118f5b1c8a1SJohn Marino 119f5b1c8a1SJohn Marino #define SN_pbeWithMD5AndDES_CBC "PBE-MD5-DES" 120f5b1c8a1SJohn Marino #define LN_pbeWithMD5AndDES_CBC "pbeWithMD5AndDES-CBC" 121f5b1c8a1SJohn Marino #define NID_pbeWithMD5AndDES_CBC 10 122f5b1c8a1SJohn Marino #define OBJ_pbeWithMD5AndDES_CBC OBJ_pkcs,5L,3L 123f5b1c8a1SJohn Marino 124f5b1c8a1SJohn Marino #define LN_X500 "X500" 125f5b1c8a1SJohn Marino #define NID_X500 11 126f5b1c8a1SJohn Marino #define OBJ_X500 2L,5L 127f5b1c8a1SJohn Marino 128f5b1c8a1SJohn Marino #define LN_X509 "X509" 129f5b1c8a1SJohn Marino #define NID_X509 12 130f5b1c8a1SJohn Marino #define OBJ_X509 OBJ_X500,4L 131f5b1c8a1SJohn Marino 132f5b1c8a1SJohn Marino #define SN_commonName "CN" 133f5b1c8a1SJohn Marino #define LN_commonName "commonName" 134f5b1c8a1SJohn Marino #define NID_commonName 13 135f5b1c8a1SJohn Marino #define OBJ_commonName OBJ_X509,3L 136f5b1c8a1SJohn Marino 137f5b1c8a1SJohn Marino #define SN_countryName "C" 138f5b1c8a1SJohn Marino #define LN_countryName "countryName" 139f5b1c8a1SJohn Marino #define NID_countryName 14 140f5b1c8a1SJohn Marino #define OBJ_countryName OBJ_X509,6L 141f5b1c8a1SJohn Marino 142f5b1c8a1SJohn Marino #define SN_localityName "L" 143f5b1c8a1SJohn Marino #define LN_localityName "localityName" 144f5b1c8a1SJohn Marino #define NID_localityName 15 145f5b1c8a1SJohn Marino #define OBJ_localityName OBJ_X509,7L 146f5b1c8a1SJohn Marino 147f5b1c8a1SJohn Marino /* Postal Address? PA */ 148f5b1c8a1SJohn Marino 149f5b1c8a1SJohn Marino /* should be "ST" (rfc1327) but MS uses 'S' */ 150f5b1c8a1SJohn Marino #define SN_stateOrProvinceName "ST" 151f5b1c8a1SJohn Marino #define LN_stateOrProvinceName "stateOrProvinceName" 152f5b1c8a1SJohn Marino #define NID_stateOrProvinceName 16 153f5b1c8a1SJohn Marino #define OBJ_stateOrProvinceName OBJ_X509,8L 154f5b1c8a1SJohn Marino 155f5b1c8a1SJohn Marino #define SN_organizationName "O" 156f5b1c8a1SJohn Marino #define LN_organizationName "organizationName" 157f5b1c8a1SJohn Marino #define NID_organizationName 17 158f5b1c8a1SJohn Marino #define OBJ_organizationName OBJ_X509,10L 159f5b1c8a1SJohn Marino 160f5b1c8a1SJohn Marino #define SN_organizationalUnitName "OU" 161f5b1c8a1SJohn Marino #define LN_organizationalUnitName "organizationalUnitName" 162f5b1c8a1SJohn Marino #define NID_organizationalUnitName 18 163f5b1c8a1SJohn Marino #define OBJ_organizationalUnitName OBJ_X509,11L 164f5b1c8a1SJohn Marino 165f5b1c8a1SJohn Marino #define SN_rsa "RSA" 166f5b1c8a1SJohn Marino #define LN_rsa "rsa" 167f5b1c8a1SJohn Marino #define NID_rsa 19 168f5b1c8a1SJohn Marino #define OBJ_rsa OBJ_X500,8L,1L,1L 169f5b1c8a1SJohn Marino 170f5b1c8a1SJohn Marino #define LN_pkcs7 "pkcs7" 171f5b1c8a1SJohn Marino #define NID_pkcs7 20 172f5b1c8a1SJohn Marino #define OBJ_pkcs7 OBJ_pkcs,7L 173f5b1c8a1SJohn Marino 174f5b1c8a1SJohn Marino #define LN_pkcs7_data "pkcs7-data" 175f5b1c8a1SJohn Marino #define NID_pkcs7_data 21 176f5b1c8a1SJohn Marino #define OBJ_pkcs7_data OBJ_pkcs7,1L 177f5b1c8a1SJohn Marino 178f5b1c8a1SJohn Marino #define LN_pkcs7_signed "pkcs7-signedData" 179f5b1c8a1SJohn Marino #define NID_pkcs7_signed 22 180f5b1c8a1SJohn Marino #define OBJ_pkcs7_signed OBJ_pkcs7,2L 181f5b1c8a1SJohn Marino 182f5b1c8a1SJohn Marino #define LN_pkcs7_enveloped "pkcs7-envelopedData" 183f5b1c8a1SJohn Marino #define NID_pkcs7_enveloped 23 184f5b1c8a1SJohn Marino #define OBJ_pkcs7_enveloped OBJ_pkcs7,3L 185f5b1c8a1SJohn Marino 186f5b1c8a1SJohn Marino #define LN_pkcs7_signedAndEnveloped "pkcs7-signedAndEnvelopedData" 187f5b1c8a1SJohn Marino #define NID_pkcs7_signedAndEnveloped 24 188f5b1c8a1SJohn Marino #define OBJ_pkcs7_signedAndEnveloped OBJ_pkcs7,4L 189f5b1c8a1SJohn Marino 190f5b1c8a1SJohn Marino #define LN_pkcs7_digest "pkcs7-digestData" 191f5b1c8a1SJohn Marino #define NID_pkcs7_digest 25 192f5b1c8a1SJohn Marino #define OBJ_pkcs7_digest OBJ_pkcs7,5L 193f5b1c8a1SJohn Marino 194f5b1c8a1SJohn Marino #define LN_pkcs7_encrypted "pkcs7-encryptedData" 195f5b1c8a1SJohn Marino #define NID_pkcs7_encrypted 26 196f5b1c8a1SJohn Marino #define OBJ_pkcs7_encrypted OBJ_pkcs7,6L 197f5b1c8a1SJohn Marino 198f5b1c8a1SJohn Marino #define LN_pkcs3 "pkcs3" 199f5b1c8a1SJohn Marino #define NID_pkcs3 27 200f5b1c8a1SJohn Marino #define OBJ_pkcs3 OBJ_pkcs,3L 201f5b1c8a1SJohn Marino 202f5b1c8a1SJohn Marino #define LN_dhKeyAgreement "dhKeyAgreement" 203f5b1c8a1SJohn Marino #define NID_dhKeyAgreement 28 204f5b1c8a1SJohn Marino #define OBJ_dhKeyAgreement OBJ_pkcs3,1L 205f5b1c8a1SJohn Marino 206f5b1c8a1SJohn Marino #define SN_des_ecb "DES-ECB" 207f5b1c8a1SJohn Marino #define LN_des_ecb "des-ecb" 208f5b1c8a1SJohn Marino #define NID_des_ecb 29 209f5b1c8a1SJohn Marino #define OBJ_des_ecb OBJ_algorithm,6L 210f5b1c8a1SJohn Marino 211f5b1c8a1SJohn Marino #define SN_des_cfb64 "DES-CFB" 212f5b1c8a1SJohn Marino #define LN_des_cfb64 "des-cfb" 213f5b1c8a1SJohn Marino #define NID_des_cfb64 30 214f5b1c8a1SJohn Marino /* IV + num */ 215f5b1c8a1SJohn Marino #define OBJ_des_cfb64 OBJ_algorithm,9L 216f5b1c8a1SJohn Marino 217f5b1c8a1SJohn Marino #define SN_des_cbc "DES-CBC" 218f5b1c8a1SJohn Marino #define LN_des_cbc "des-cbc" 219f5b1c8a1SJohn Marino #define NID_des_cbc 31 220f5b1c8a1SJohn Marino /* IV */ 221f5b1c8a1SJohn Marino #define OBJ_des_cbc OBJ_algorithm,7L 222f5b1c8a1SJohn Marino 223f5b1c8a1SJohn Marino #define SN_des_ede "DES-EDE" 224f5b1c8a1SJohn Marino #define LN_des_ede "des-ede" 225f5b1c8a1SJohn Marino #define NID_des_ede 32 226f5b1c8a1SJohn Marino /* ?? */ 227f5b1c8a1SJohn Marino #define OBJ_des_ede OBJ_algorithm,17L 228f5b1c8a1SJohn Marino 229f5b1c8a1SJohn Marino #define SN_des_ede3 "DES-EDE3" 230f5b1c8a1SJohn Marino #define LN_des_ede3 "des-ede3" 231f5b1c8a1SJohn Marino #define NID_des_ede3 33 232f5b1c8a1SJohn Marino 233f5b1c8a1SJohn Marino #define SN_idea_cbc "IDEA-CBC" 234f5b1c8a1SJohn Marino #define LN_idea_cbc "idea-cbc" 235f5b1c8a1SJohn Marino #define NID_idea_cbc 34 236f5b1c8a1SJohn Marino #define OBJ_idea_cbc 1L,3L,6L,1L,4L,1L,188L,7L,1L,1L,2L 237f5b1c8a1SJohn Marino 238f5b1c8a1SJohn Marino #define SN_idea_cfb64 "IDEA-CFB" 239f5b1c8a1SJohn Marino #define LN_idea_cfb64 "idea-cfb" 240f5b1c8a1SJohn Marino #define NID_idea_cfb64 35 241f5b1c8a1SJohn Marino 242f5b1c8a1SJohn Marino #define SN_idea_ecb "IDEA-ECB" 243f5b1c8a1SJohn Marino #define LN_idea_ecb "idea-ecb" 244f5b1c8a1SJohn Marino #define NID_idea_ecb 36 245f5b1c8a1SJohn Marino 246f5b1c8a1SJohn Marino #define SN_rc2_cbc "RC2-CBC" 247f5b1c8a1SJohn Marino #define LN_rc2_cbc "rc2-cbc" 248f5b1c8a1SJohn Marino #define NID_rc2_cbc 37 249f5b1c8a1SJohn Marino #define OBJ_rc2_cbc OBJ_rsadsi,3L,2L 250f5b1c8a1SJohn Marino 251f5b1c8a1SJohn Marino #define SN_rc2_ecb "RC2-ECB" 252f5b1c8a1SJohn Marino #define LN_rc2_ecb "rc2-ecb" 253f5b1c8a1SJohn Marino #define NID_rc2_ecb 38 254f5b1c8a1SJohn Marino 255f5b1c8a1SJohn Marino #define SN_rc2_cfb64 "RC2-CFB" 256f5b1c8a1SJohn Marino #define LN_rc2_cfb64 "rc2-cfb" 257f5b1c8a1SJohn Marino #define NID_rc2_cfb64 39 258f5b1c8a1SJohn Marino 259f5b1c8a1SJohn Marino #define SN_rc2_ofb64 "RC2-OFB" 260f5b1c8a1SJohn Marino #define LN_rc2_ofb64 "rc2-ofb" 261f5b1c8a1SJohn Marino #define NID_rc2_ofb64 40 262f5b1c8a1SJohn Marino 263f5b1c8a1SJohn Marino #define SN_sha "SHA" 264f5b1c8a1SJohn Marino #define LN_sha "sha" 265f5b1c8a1SJohn Marino #define NID_sha 41 266f5b1c8a1SJohn Marino #define OBJ_sha OBJ_algorithm,18L 267f5b1c8a1SJohn Marino 268f5b1c8a1SJohn Marino #define SN_shaWithRSAEncryption "RSA-SHA" 269f5b1c8a1SJohn Marino #define LN_shaWithRSAEncryption "shaWithRSAEncryption" 270f5b1c8a1SJohn Marino #define NID_shaWithRSAEncryption 42 271f5b1c8a1SJohn Marino #define OBJ_shaWithRSAEncryption OBJ_algorithm,15L 272f5b1c8a1SJohn Marino 273f5b1c8a1SJohn Marino #define SN_des_ede_cbc "DES-EDE-CBC" 274f5b1c8a1SJohn Marino #define LN_des_ede_cbc "des-ede-cbc" 275f5b1c8a1SJohn Marino #define NID_des_ede_cbc 43 276f5b1c8a1SJohn Marino 277f5b1c8a1SJohn Marino #define SN_des_ede3_cbc "DES-EDE3-CBC" 278f5b1c8a1SJohn Marino #define LN_des_ede3_cbc "des-ede3-cbc" 279f5b1c8a1SJohn Marino #define NID_des_ede3_cbc 44 280f5b1c8a1SJohn Marino #define OBJ_des_ede3_cbc OBJ_rsadsi,3L,7L 281f5b1c8a1SJohn Marino 282f5b1c8a1SJohn Marino #define SN_des_ofb64 "DES-OFB" 283f5b1c8a1SJohn Marino #define LN_des_ofb64 "des-ofb" 284f5b1c8a1SJohn Marino #define NID_des_ofb64 45 285f5b1c8a1SJohn Marino #define OBJ_des_ofb64 OBJ_algorithm,8L 286f5b1c8a1SJohn Marino 287f5b1c8a1SJohn Marino #define SN_idea_ofb64 "IDEA-OFB" 288f5b1c8a1SJohn Marino #define LN_idea_ofb64 "idea-ofb" 289f5b1c8a1SJohn Marino #define NID_idea_ofb64 46 290f5b1c8a1SJohn Marino 291f5b1c8a1SJohn Marino #define LN_pkcs9 "pkcs9" 292f5b1c8a1SJohn Marino #define NID_pkcs9 47 293f5b1c8a1SJohn Marino #define OBJ_pkcs9 OBJ_pkcs,9L 294f5b1c8a1SJohn Marino 295f5b1c8a1SJohn Marino #define SN_pkcs9_emailAddress "Email" 296f5b1c8a1SJohn Marino #define LN_pkcs9_emailAddress "emailAddress" 297f5b1c8a1SJohn Marino #define NID_pkcs9_emailAddress 48 298f5b1c8a1SJohn Marino #define OBJ_pkcs9_emailAddress OBJ_pkcs9,1L 299f5b1c8a1SJohn Marino 300f5b1c8a1SJohn Marino #define LN_pkcs9_unstructuredName "unstructuredName" 301f5b1c8a1SJohn Marino #define NID_pkcs9_unstructuredName 49 302f5b1c8a1SJohn Marino #define OBJ_pkcs9_unstructuredName OBJ_pkcs9,2L 303f5b1c8a1SJohn Marino 304f5b1c8a1SJohn Marino #define LN_pkcs9_contentType "contentType" 305f5b1c8a1SJohn Marino #define NID_pkcs9_contentType 50 306f5b1c8a1SJohn Marino #define OBJ_pkcs9_contentType OBJ_pkcs9,3L 307f5b1c8a1SJohn Marino 308f5b1c8a1SJohn Marino #define LN_pkcs9_messageDigest "messageDigest" 309f5b1c8a1SJohn Marino #define NID_pkcs9_messageDigest 51 310f5b1c8a1SJohn Marino #define OBJ_pkcs9_messageDigest OBJ_pkcs9,4L 311f5b1c8a1SJohn Marino 312f5b1c8a1SJohn Marino #define LN_pkcs9_signingTime "signingTime" 313f5b1c8a1SJohn Marino #define NID_pkcs9_signingTime 52 314f5b1c8a1SJohn Marino #define OBJ_pkcs9_signingTime OBJ_pkcs9,5L 315f5b1c8a1SJohn Marino 316f5b1c8a1SJohn Marino #define LN_pkcs9_countersignature "countersignature" 317f5b1c8a1SJohn Marino #define NID_pkcs9_countersignature 53 318f5b1c8a1SJohn Marino #define OBJ_pkcs9_countersignature OBJ_pkcs9,6L 319f5b1c8a1SJohn Marino 320f5b1c8a1SJohn Marino #define LN_pkcs9_challengePassword "challengePassword" 321f5b1c8a1SJohn Marino #define NID_pkcs9_challengePassword 54 322f5b1c8a1SJohn Marino #define OBJ_pkcs9_challengePassword OBJ_pkcs9,7L 323f5b1c8a1SJohn Marino 324f5b1c8a1SJohn Marino #define LN_pkcs9_unstructuredAddress "unstructuredAddress" 325f5b1c8a1SJohn Marino #define NID_pkcs9_unstructuredAddress 55 326f5b1c8a1SJohn Marino #define OBJ_pkcs9_unstructuredAddress OBJ_pkcs9,8L 327f5b1c8a1SJohn Marino 328f5b1c8a1SJohn Marino #define LN_pkcs9_extCertAttributes "extendedCertificateAttributes" 329f5b1c8a1SJohn Marino #define NID_pkcs9_extCertAttributes 56 330f5b1c8a1SJohn Marino #define OBJ_pkcs9_extCertAttributes OBJ_pkcs9,9L 331f5b1c8a1SJohn Marino 332f5b1c8a1SJohn Marino #define SN_netscape "Netscape" 333f5b1c8a1SJohn Marino #define LN_netscape "Netscape Communications Corp." 334f5b1c8a1SJohn Marino #define NID_netscape 57 335f5b1c8a1SJohn Marino #define OBJ_netscape 2L,16L,840L,1L,113730L 336f5b1c8a1SJohn Marino 337f5b1c8a1SJohn Marino #define SN_netscape_cert_extension "nsCertExt" 338f5b1c8a1SJohn Marino #define LN_netscape_cert_extension "Netscape Certificate Extension" 339f5b1c8a1SJohn Marino #define NID_netscape_cert_extension 58 340f5b1c8a1SJohn Marino #define OBJ_netscape_cert_extension OBJ_netscape,1L 341f5b1c8a1SJohn Marino 342f5b1c8a1SJohn Marino #define SN_netscape_data_type "nsDataType" 343f5b1c8a1SJohn Marino #define LN_netscape_data_type "Netscape Data Type" 344f5b1c8a1SJohn Marino #define NID_netscape_data_type 59 345f5b1c8a1SJohn Marino #define OBJ_netscape_data_type OBJ_netscape,2L 346f5b1c8a1SJohn Marino 347f5b1c8a1SJohn Marino #define SN_des_ede_cfb64 "DES-EDE-CFB" 348f5b1c8a1SJohn Marino #define LN_des_ede_cfb64 "des-ede-cfb" 349f5b1c8a1SJohn Marino #define NID_des_ede_cfb64 60 350f5b1c8a1SJohn Marino 351f5b1c8a1SJohn Marino #define SN_des_ede3_cfb64 "DES-EDE3-CFB" 352f5b1c8a1SJohn Marino #define LN_des_ede3_cfb64 "des-ede3-cfb" 353f5b1c8a1SJohn Marino #define NID_des_ede3_cfb64 61 354f5b1c8a1SJohn Marino 355f5b1c8a1SJohn Marino #define SN_des_ede_ofb64 "DES-EDE-OFB" 356f5b1c8a1SJohn Marino #define LN_des_ede_ofb64 "des-ede-ofb" 357f5b1c8a1SJohn Marino #define NID_des_ede_ofb64 62 358f5b1c8a1SJohn Marino 359f5b1c8a1SJohn Marino #define SN_des_ede3_ofb64 "DES-EDE3-OFB" 360f5b1c8a1SJohn Marino #define LN_des_ede3_ofb64 "des-ede3-ofb" 361f5b1c8a1SJohn Marino #define NID_des_ede3_ofb64 63 362f5b1c8a1SJohn Marino 363f5b1c8a1SJohn Marino /* I'm not sure about the object ID */ 364f5b1c8a1SJohn Marino #define SN_sha1 "SHA1" 365f5b1c8a1SJohn Marino #define LN_sha1 "sha1" 366f5b1c8a1SJohn Marino #define NID_sha1 64 367f5b1c8a1SJohn Marino #define OBJ_sha1 OBJ_algorithm,26L 368f5b1c8a1SJohn Marino /* 28 Jun 1996 - eay */ 369f5b1c8a1SJohn Marino /* #define OBJ_sha1 1L,3L,14L,2L,26L,05L <- wrong */ 370f5b1c8a1SJohn Marino 371f5b1c8a1SJohn Marino #define SN_sha1WithRSAEncryption "RSA-SHA1" 372f5b1c8a1SJohn Marino #define LN_sha1WithRSAEncryption "sha1WithRSAEncryption" 373f5b1c8a1SJohn Marino #define NID_sha1WithRSAEncryption 65 374f5b1c8a1SJohn Marino #define OBJ_sha1WithRSAEncryption OBJ_pkcs,1L,5L 375f5b1c8a1SJohn Marino 376f5b1c8a1SJohn Marino #define SN_dsaWithSHA "DSA-SHA" 377f5b1c8a1SJohn Marino #define LN_dsaWithSHA "dsaWithSHA" 378f5b1c8a1SJohn Marino #define NID_dsaWithSHA 66 379f5b1c8a1SJohn Marino #define OBJ_dsaWithSHA OBJ_algorithm,13L 380f5b1c8a1SJohn Marino 381f5b1c8a1SJohn Marino #define SN_dsa_2 "DSA-old" 382f5b1c8a1SJohn Marino #define LN_dsa_2 "dsaEncryption-old" 383f5b1c8a1SJohn Marino #define NID_dsa_2 67 384f5b1c8a1SJohn Marino #define OBJ_dsa_2 OBJ_algorithm,12L 385f5b1c8a1SJohn Marino 386f5b1c8a1SJohn Marino /* proposed by microsoft to RSA */ 387f5b1c8a1SJohn Marino #define SN_pbeWithSHA1AndRC2_CBC "PBE-SHA1-RC2-64" 388f5b1c8a1SJohn Marino #define LN_pbeWithSHA1AndRC2_CBC "pbeWithSHA1AndRC2-CBC" 389f5b1c8a1SJohn Marino #define NID_pbeWithSHA1AndRC2_CBC 68 390f5b1c8a1SJohn Marino #define OBJ_pbeWithSHA1AndRC2_CBC OBJ_pkcs,5L,11L 391f5b1c8a1SJohn Marino 392f5b1c8a1SJohn Marino /* proposed by microsoft to RSA as pbeWithSHA1AndRC4: it is now 393f5b1c8a1SJohn Marino * defined explicitly in PKCS#5 v2.0 as id-PBKDF2 which is something 394f5b1c8a1SJohn Marino * completely different. 395f5b1c8a1SJohn Marino */ 396f5b1c8a1SJohn Marino #define LN_id_pbkdf2 "PBKDF2" 397f5b1c8a1SJohn Marino #define NID_id_pbkdf2 69 398f5b1c8a1SJohn Marino #define OBJ_id_pbkdf2 OBJ_pkcs,5L,12L 399f5b1c8a1SJohn Marino 400f5b1c8a1SJohn Marino #define SN_dsaWithSHA1_2 "DSA-SHA1-old" 401f5b1c8a1SJohn Marino #define LN_dsaWithSHA1_2 "dsaWithSHA1-old" 402f5b1c8a1SJohn Marino #define NID_dsaWithSHA1_2 70 403f5b1c8a1SJohn Marino /* Got this one from 'sdn706r20.pdf' which is actually an NSA document :-) */ 404f5b1c8a1SJohn Marino #define OBJ_dsaWithSHA1_2 OBJ_algorithm,27L 405f5b1c8a1SJohn Marino 406f5b1c8a1SJohn Marino #define SN_netscape_cert_type "nsCertType" 407f5b1c8a1SJohn Marino #define LN_netscape_cert_type "Netscape Cert Type" 408f5b1c8a1SJohn Marino #define NID_netscape_cert_type 71 409f5b1c8a1SJohn Marino #define OBJ_netscape_cert_type OBJ_netscape_cert_extension,1L 410f5b1c8a1SJohn Marino 411f5b1c8a1SJohn Marino #define SN_netscape_base_url "nsBaseUrl" 412f5b1c8a1SJohn Marino #define LN_netscape_base_url "Netscape Base Url" 413f5b1c8a1SJohn Marino #define NID_netscape_base_url 72 414f5b1c8a1SJohn Marino #define OBJ_netscape_base_url OBJ_netscape_cert_extension,2L 415f5b1c8a1SJohn Marino 416f5b1c8a1SJohn Marino #define SN_netscape_revocation_url "nsRevocationUrl" 417f5b1c8a1SJohn Marino #define LN_netscape_revocation_url "Netscape Revocation Url" 418f5b1c8a1SJohn Marino #define NID_netscape_revocation_url 73 419f5b1c8a1SJohn Marino #define OBJ_netscape_revocation_url OBJ_netscape_cert_extension,3L 420f5b1c8a1SJohn Marino 421f5b1c8a1SJohn Marino #define SN_netscape_ca_revocation_url "nsCaRevocationUrl" 422f5b1c8a1SJohn Marino #define LN_netscape_ca_revocation_url "Netscape CA Revocation Url" 423f5b1c8a1SJohn Marino #define NID_netscape_ca_revocation_url 74 424f5b1c8a1SJohn Marino #define OBJ_netscape_ca_revocation_url OBJ_netscape_cert_extension,4L 425f5b1c8a1SJohn Marino 426f5b1c8a1SJohn Marino #define SN_netscape_renewal_url "nsRenewalUrl" 427f5b1c8a1SJohn Marino #define LN_netscape_renewal_url "Netscape Renewal Url" 428f5b1c8a1SJohn Marino #define NID_netscape_renewal_url 75 429f5b1c8a1SJohn Marino #define OBJ_netscape_renewal_url OBJ_netscape_cert_extension,7L 430f5b1c8a1SJohn Marino 431f5b1c8a1SJohn Marino #define SN_netscape_ca_policy_url "nsCaPolicyUrl" 432f5b1c8a1SJohn Marino #define LN_netscape_ca_policy_url "Netscape CA Policy Url" 433f5b1c8a1SJohn Marino #define NID_netscape_ca_policy_url 76 434f5b1c8a1SJohn Marino #define OBJ_netscape_ca_policy_url OBJ_netscape_cert_extension,8L 435f5b1c8a1SJohn Marino 436f5b1c8a1SJohn Marino #define SN_netscape_ssl_server_name "nsSslServerName" 437f5b1c8a1SJohn Marino #define LN_netscape_ssl_server_name "Netscape SSL Server Name" 438f5b1c8a1SJohn Marino #define NID_netscape_ssl_server_name 77 439f5b1c8a1SJohn Marino #define OBJ_netscape_ssl_server_name OBJ_netscape_cert_extension,12L 440f5b1c8a1SJohn Marino 441f5b1c8a1SJohn Marino #define SN_netscape_comment "nsComment" 442f5b1c8a1SJohn Marino #define LN_netscape_comment "Netscape Comment" 443f5b1c8a1SJohn Marino #define NID_netscape_comment 78 444f5b1c8a1SJohn Marino #define OBJ_netscape_comment OBJ_netscape_cert_extension,13L 445f5b1c8a1SJohn Marino 446f5b1c8a1SJohn Marino #define SN_netscape_cert_sequence "nsCertSequence" 447f5b1c8a1SJohn Marino #define LN_netscape_cert_sequence "Netscape Certificate Sequence" 448f5b1c8a1SJohn Marino #define NID_netscape_cert_sequence 79 449f5b1c8a1SJohn Marino #define OBJ_netscape_cert_sequence OBJ_netscape_data_type,5L 450f5b1c8a1SJohn Marino 451f5b1c8a1SJohn Marino #define SN_desx_cbc "DESX-CBC" 452f5b1c8a1SJohn Marino #define LN_desx_cbc "desx-cbc" 453f5b1c8a1SJohn Marino #define NID_desx_cbc 80 454f5b1c8a1SJohn Marino 455f5b1c8a1SJohn Marino #define SN_id_ce "id-ce" 456f5b1c8a1SJohn Marino #define NID_id_ce 81 457f5b1c8a1SJohn Marino #define OBJ_id_ce 2L,5L,29L 458f5b1c8a1SJohn Marino 459f5b1c8a1SJohn Marino #define SN_subject_key_identifier "subjectKeyIdentifier" 460f5b1c8a1SJohn Marino #define LN_subject_key_identifier "X509v3 Subject Key Identifier" 461f5b1c8a1SJohn Marino #define NID_subject_key_identifier 82 462f5b1c8a1SJohn Marino #define OBJ_subject_key_identifier OBJ_id_ce,14L 463f5b1c8a1SJohn Marino 464f5b1c8a1SJohn Marino #define SN_key_usage "keyUsage" 465f5b1c8a1SJohn Marino #define LN_key_usage "X509v3 Key Usage" 466f5b1c8a1SJohn Marino #define NID_key_usage 83 467f5b1c8a1SJohn Marino #define OBJ_key_usage OBJ_id_ce,15L 468f5b1c8a1SJohn Marino 469f5b1c8a1SJohn Marino #define SN_private_key_usage_period "privateKeyUsagePeriod" 470f5b1c8a1SJohn Marino #define LN_private_key_usage_period "X509v3 Private Key Usage Period" 471f5b1c8a1SJohn Marino #define NID_private_key_usage_period 84 472f5b1c8a1SJohn Marino #define OBJ_private_key_usage_period OBJ_id_ce,16L 473f5b1c8a1SJohn Marino 474f5b1c8a1SJohn Marino #define SN_subject_alt_name "subjectAltName" 475f5b1c8a1SJohn Marino #define LN_subject_alt_name "X509v3 Subject Alternative Name" 476f5b1c8a1SJohn Marino #define NID_subject_alt_name 85 477f5b1c8a1SJohn Marino #define OBJ_subject_alt_name OBJ_id_ce,17L 478f5b1c8a1SJohn Marino 479f5b1c8a1SJohn Marino #define SN_issuer_alt_name "issuerAltName" 480f5b1c8a1SJohn Marino #define LN_issuer_alt_name "X509v3 Issuer Alternative Name" 481f5b1c8a1SJohn Marino #define NID_issuer_alt_name 86 482f5b1c8a1SJohn Marino #define OBJ_issuer_alt_name OBJ_id_ce,18L 483f5b1c8a1SJohn Marino 484f5b1c8a1SJohn Marino #define SN_basic_constraints "basicConstraints" 485f5b1c8a1SJohn Marino #define LN_basic_constraints "X509v3 Basic Constraints" 486f5b1c8a1SJohn Marino #define NID_basic_constraints 87 487f5b1c8a1SJohn Marino #define OBJ_basic_constraints OBJ_id_ce,19L 488f5b1c8a1SJohn Marino 489f5b1c8a1SJohn Marino #define SN_crl_number "crlNumber" 490f5b1c8a1SJohn Marino #define LN_crl_number "X509v3 CRL Number" 491f5b1c8a1SJohn Marino #define NID_crl_number 88 492f5b1c8a1SJohn Marino #define OBJ_crl_number OBJ_id_ce,20L 493f5b1c8a1SJohn Marino 494f5b1c8a1SJohn Marino #define SN_certificate_policies "certificatePolicies" 495f5b1c8a1SJohn Marino #define LN_certificate_policies "X509v3 Certificate Policies" 496f5b1c8a1SJohn Marino #define NID_certificate_policies 89 497f5b1c8a1SJohn Marino #define OBJ_certificate_policies OBJ_id_ce,32L 498f5b1c8a1SJohn Marino 499f5b1c8a1SJohn Marino #define SN_authority_key_identifier "authorityKeyIdentifier" 500f5b1c8a1SJohn Marino #define LN_authority_key_identifier "X509v3 Authority Key Identifier" 501f5b1c8a1SJohn Marino #define NID_authority_key_identifier 90 502f5b1c8a1SJohn Marino #define OBJ_authority_key_identifier OBJ_id_ce,35L 503f5b1c8a1SJohn Marino 504f5b1c8a1SJohn Marino #define SN_bf_cbc "BF-CBC" 505f5b1c8a1SJohn Marino #define LN_bf_cbc "bf-cbc" 506f5b1c8a1SJohn Marino #define NID_bf_cbc 91 507f5b1c8a1SJohn Marino #define OBJ_bf_cbc 1L,3L,6L,1L,4L,1L,3029L,1L,2L 508f5b1c8a1SJohn Marino 509f5b1c8a1SJohn Marino #define SN_bf_ecb "BF-ECB" 510f5b1c8a1SJohn Marino #define LN_bf_ecb "bf-ecb" 511f5b1c8a1SJohn Marino #define NID_bf_ecb 92 512f5b1c8a1SJohn Marino 513f5b1c8a1SJohn Marino #define SN_bf_cfb64 "BF-CFB" 514f5b1c8a1SJohn Marino #define LN_bf_cfb64 "bf-cfb" 515f5b1c8a1SJohn Marino #define NID_bf_cfb64 93 516f5b1c8a1SJohn Marino 517f5b1c8a1SJohn Marino #define SN_bf_ofb64 "BF-OFB" 518f5b1c8a1SJohn Marino #define LN_bf_ofb64 "bf-ofb" 519f5b1c8a1SJohn Marino #define NID_bf_ofb64 94 520f5b1c8a1SJohn Marino 521f5b1c8a1SJohn Marino #define SN_mdc2 "MDC2" 522f5b1c8a1SJohn Marino #define LN_mdc2 "mdc2" 523f5b1c8a1SJohn Marino #define NID_mdc2 95 524f5b1c8a1SJohn Marino #define OBJ_mdc2 2L,5L,8L,3L,101L 525f5b1c8a1SJohn Marino /* An alternative? 1L,3L,14L,3L,2L,19L */ 526f5b1c8a1SJohn Marino 527f5b1c8a1SJohn Marino #define SN_mdc2WithRSA "RSA-MDC2" 528f5b1c8a1SJohn Marino #define LN_mdc2WithRSA "mdc2withRSA" 529f5b1c8a1SJohn Marino #define NID_mdc2WithRSA 96 530f5b1c8a1SJohn Marino #define OBJ_mdc2WithRSA 2L,5L,8L,3L,100L 531f5b1c8a1SJohn Marino 532f5b1c8a1SJohn Marino #define SN_rc4_40 "RC4-40" 533f5b1c8a1SJohn Marino #define LN_rc4_40 "rc4-40" 534f5b1c8a1SJohn Marino #define NID_rc4_40 97 535f5b1c8a1SJohn Marino 536f5b1c8a1SJohn Marino #define SN_rc2_40_cbc "RC2-40-CBC" 537f5b1c8a1SJohn Marino #define LN_rc2_40_cbc "rc2-40-cbc" 538f5b1c8a1SJohn Marino #define NID_rc2_40_cbc 98 539f5b1c8a1SJohn Marino 540f5b1c8a1SJohn Marino #define SN_givenName "G" 541f5b1c8a1SJohn Marino #define LN_givenName "givenName" 542f5b1c8a1SJohn Marino #define NID_givenName 99 543f5b1c8a1SJohn Marino #define OBJ_givenName OBJ_X509,42L 544f5b1c8a1SJohn Marino 545f5b1c8a1SJohn Marino #define SN_surname "S" 546f5b1c8a1SJohn Marino #define LN_surname "surname" 547f5b1c8a1SJohn Marino #define NID_surname 100 548f5b1c8a1SJohn Marino #define OBJ_surname OBJ_X509,4L 549f5b1c8a1SJohn Marino 550f5b1c8a1SJohn Marino #define SN_initials "I" 551f5b1c8a1SJohn Marino #define LN_initials "initials" 552f5b1c8a1SJohn Marino #define NID_initials 101 553f5b1c8a1SJohn Marino #define OBJ_initials OBJ_X509,43L 554f5b1c8a1SJohn Marino 555f5b1c8a1SJohn Marino #define SN_uniqueIdentifier "UID" 556f5b1c8a1SJohn Marino #define LN_uniqueIdentifier "uniqueIdentifier" 557f5b1c8a1SJohn Marino #define NID_uniqueIdentifier 102 558f5b1c8a1SJohn Marino #define OBJ_uniqueIdentifier OBJ_X509,45L 559f5b1c8a1SJohn Marino 560f5b1c8a1SJohn Marino #define SN_crl_distribution_points "crlDistributionPoints" 561f5b1c8a1SJohn Marino #define LN_crl_distribution_points "X509v3 CRL Distribution Points" 562f5b1c8a1SJohn Marino #define NID_crl_distribution_points 103 563f5b1c8a1SJohn Marino #define OBJ_crl_distribution_points OBJ_id_ce,31L 564f5b1c8a1SJohn Marino 565f5b1c8a1SJohn Marino #define SN_md5WithRSA "RSA-NP-MD5" 566f5b1c8a1SJohn Marino #define LN_md5WithRSA "md5WithRSA" 567f5b1c8a1SJohn Marino #define NID_md5WithRSA 104 568f5b1c8a1SJohn Marino #define OBJ_md5WithRSA OBJ_algorithm,3L 569f5b1c8a1SJohn Marino 570f5b1c8a1SJohn Marino #define SN_serialNumber "SN" 571f5b1c8a1SJohn Marino #define LN_serialNumber "serialNumber" 572f5b1c8a1SJohn Marino #define NID_serialNumber 105 573f5b1c8a1SJohn Marino #define OBJ_serialNumber OBJ_X509,5L 574f5b1c8a1SJohn Marino 575f5b1c8a1SJohn Marino #define SN_title "T" 576f5b1c8a1SJohn Marino #define LN_title "title" 577f5b1c8a1SJohn Marino #define NID_title 106 578f5b1c8a1SJohn Marino #define OBJ_title OBJ_X509,12L 579f5b1c8a1SJohn Marino 580f5b1c8a1SJohn Marino #define SN_description "D" 581f5b1c8a1SJohn Marino #define LN_description "description" 582f5b1c8a1SJohn Marino #define NID_description 107 583f5b1c8a1SJohn Marino #define OBJ_description OBJ_X509,13L 584f5b1c8a1SJohn Marino 585f5b1c8a1SJohn Marino /* CAST5 is CAST-128, I'm just sticking with the documentation */ 586f5b1c8a1SJohn Marino #define SN_cast5_cbc "CAST5-CBC" 587f5b1c8a1SJohn Marino #define LN_cast5_cbc "cast5-cbc" 588f5b1c8a1SJohn Marino #define NID_cast5_cbc 108 589f5b1c8a1SJohn Marino #define OBJ_cast5_cbc 1L,2L,840L,113533L,7L,66L,10L 590f5b1c8a1SJohn Marino 591f5b1c8a1SJohn Marino #define SN_cast5_ecb "CAST5-ECB" 592f5b1c8a1SJohn Marino #define LN_cast5_ecb "cast5-ecb" 593f5b1c8a1SJohn Marino #define NID_cast5_ecb 109 594f5b1c8a1SJohn Marino 595f5b1c8a1SJohn Marino #define SN_cast5_cfb64 "CAST5-CFB" 596f5b1c8a1SJohn Marino #define LN_cast5_cfb64 "cast5-cfb" 597f5b1c8a1SJohn Marino #define NID_cast5_cfb64 110 598f5b1c8a1SJohn Marino 599f5b1c8a1SJohn Marino #define SN_cast5_ofb64 "CAST5-OFB" 600f5b1c8a1SJohn Marino #define LN_cast5_ofb64 "cast5-ofb" 601f5b1c8a1SJohn Marino #define NID_cast5_ofb64 111 602f5b1c8a1SJohn Marino 603f5b1c8a1SJohn Marino #define LN_pbeWithMD5AndCast5_CBC "pbeWithMD5AndCast5CBC" 604f5b1c8a1SJohn Marino #define NID_pbeWithMD5AndCast5_CBC 112 605f5b1c8a1SJohn Marino #define OBJ_pbeWithMD5AndCast5_CBC 1L,2L,840L,113533L,7L,66L,12L 606f5b1c8a1SJohn Marino 607f5b1c8a1SJohn Marino /* This is one sun will soon be using :-( 608f5b1c8a1SJohn Marino * id-dsa-with-sha1 ID ::= { 609f5b1c8a1SJohn Marino * iso(1) member-body(2) us(840) x9-57 (10040) x9cm(4) 3 } 610f5b1c8a1SJohn Marino */ 611f5b1c8a1SJohn Marino #define SN_dsaWithSHA1 "DSA-SHA1" 612f5b1c8a1SJohn Marino #define LN_dsaWithSHA1 "dsaWithSHA1" 613f5b1c8a1SJohn Marino #define NID_dsaWithSHA1 113 614f5b1c8a1SJohn Marino #define OBJ_dsaWithSHA1 1L,2L,840L,10040L,4L,3L 615f5b1c8a1SJohn Marino 616f5b1c8a1SJohn Marino #define NID_md5_sha1 114 617f5b1c8a1SJohn Marino #define SN_md5_sha1 "MD5-SHA1" 618f5b1c8a1SJohn Marino #define LN_md5_sha1 "md5-sha1" 619f5b1c8a1SJohn Marino 620f5b1c8a1SJohn Marino #define SN_sha1WithRSA "RSA-SHA1-2" 621f5b1c8a1SJohn Marino #define LN_sha1WithRSA "sha1WithRSA" 622f5b1c8a1SJohn Marino #define NID_sha1WithRSA 115 623f5b1c8a1SJohn Marino #define OBJ_sha1WithRSA OBJ_algorithm,29L 624f5b1c8a1SJohn Marino 625f5b1c8a1SJohn Marino #define SN_dsa "DSA" 626f5b1c8a1SJohn Marino #define LN_dsa "dsaEncryption" 627f5b1c8a1SJohn Marino #define NID_dsa 116 628f5b1c8a1SJohn Marino #define OBJ_dsa 1L,2L,840L,10040L,4L,1L 629f5b1c8a1SJohn Marino 630f5b1c8a1SJohn Marino #define SN_ripemd160 "RIPEMD160" 631f5b1c8a1SJohn Marino #define LN_ripemd160 "ripemd160" 632f5b1c8a1SJohn Marino #define NID_ripemd160 117 633f5b1c8a1SJohn Marino #define OBJ_ripemd160 1L,3L,36L,3L,2L,1L 634f5b1c8a1SJohn Marino 635f5b1c8a1SJohn Marino /* The name should actually be rsaSignatureWithripemd160, but I'm going 636f5b1c8a1SJohn Marino * to continue using the convention I'm using with the other ciphers */ 637f5b1c8a1SJohn Marino #define SN_ripemd160WithRSA "RSA-RIPEMD160" 638f5b1c8a1SJohn Marino #define LN_ripemd160WithRSA "ripemd160WithRSA" 639f5b1c8a1SJohn Marino #define NID_ripemd160WithRSA 119 640f5b1c8a1SJohn Marino #define OBJ_ripemd160WithRSA 1L,3L,36L,3L,3L,1L,2L 641f5b1c8a1SJohn Marino 642f5b1c8a1SJohn Marino /* Taken from rfc2040 643f5b1c8a1SJohn Marino * RC5_CBC_Parameters ::= SEQUENCE { 644f5b1c8a1SJohn Marino * version INTEGER (v1_0(16)), 645f5b1c8a1SJohn Marino * rounds INTEGER (8..127), 646f5b1c8a1SJohn Marino * blockSizeInBits INTEGER (64, 128), 647f5b1c8a1SJohn Marino * iv OCTET STRING OPTIONAL 648f5b1c8a1SJohn Marino * } 649f5b1c8a1SJohn Marino */ 650f5b1c8a1SJohn Marino #define SN_rc5_cbc "RC5-CBC" 651f5b1c8a1SJohn Marino #define LN_rc5_cbc "rc5-cbc" 652f5b1c8a1SJohn Marino #define NID_rc5_cbc 120 653f5b1c8a1SJohn Marino #define OBJ_rc5_cbc OBJ_rsadsi,3L,8L 654f5b1c8a1SJohn Marino 655f5b1c8a1SJohn Marino #define SN_rc5_ecb "RC5-ECB" 656f5b1c8a1SJohn Marino #define LN_rc5_ecb "rc5-ecb" 657f5b1c8a1SJohn Marino #define NID_rc5_ecb 121 658f5b1c8a1SJohn Marino 659f5b1c8a1SJohn Marino #define SN_rc5_cfb64 "RC5-CFB" 660f5b1c8a1SJohn Marino #define LN_rc5_cfb64 "rc5-cfb" 661f5b1c8a1SJohn Marino #define NID_rc5_cfb64 122 662f5b1c8a1SJohn Marino 663f5b1c8a1SJohn Marino #define SN_rc5_ofb64 "RC5-OFB" 664f5b1c8a1SJohn Marino #define LN_rc5_ofb64 "rc5-ofb" 665f5b1c8a1SJohn Marino #define NID_rc5_ofb64 123 666f5b1c8a1SJohn Marino 667f5b1c8a1SJohn Marino #define SN_rle_compression "RLE" 668f5b1c8a1SJohn Marino #define LN_rle_compression "run length compression" 669f5b1c8a1SJohn Marino #define NID_rle_compression 124 670f5b1c8a1SJohn Marino #define OBJ_rle_compression 1L,1L,1L,1L,666L,1L 671f5b1c8a1SJohn Marino 672f5b1c8a1SJohn Marino #define SN_zlib_compression "ZLIB" 673f5b1c8a1SJohn Marino #define LN_zlib_compression "zlib compression" 674f5b1c8a1SJohn Marino #define NID_zlib_compression 125 675f5b1c8a1SJohn Marino #define OBJ_zlib_compression 1L,1L,1L,1L,666L,2L 676f5b1c8a1SJohn Marino 677f5b1c8a1SJohn Marino #define SN_ext_key_usage "extendedKeyUsage" 678f5b1c8a1SJohn Marino #define LN_ext_key_usage "X509v3 Extended Key Usage" 679f5b1c8a1SJohn Marino #define NID_ext_key_usage 126 680f5b1c8a1SJohn Marino #define OBJ_ext_key_usage OBJ_id_ce,37 681f5b1c8a1SJohn Marino 682f5b1c8a1SJohn Marino #define SN_id_pkix "PKIX" 683f5b1c8a1SJohn Marino #define NID_id_pkix 127 684f5b1c8a1SJohn Marino #define OBJ_id_pkix 1L,3L,6L,1L,5L,5L,7L 685f5b1c8a1SJohn Marino 686f5b1c8a1SJohn Marino #define SN_id_kp "id-kp" 687f5b1c8a1SJohn Marino #define NID_id_kp 128 688f5b1c8a1SJohn Marino #define OBJ_id_kp OBJ_id_pkix,3L 689f5b1c8a1SJohn Marino 690f5b1c8a1SJohn Marino /* PKIX extended key usage OIDs */ 691f5b1c8a1SJohn Marino 692f5b1c8a1SJohn Marino #define SN_server_auth "serverAuth" 693f5b1c8a1SJohn Marino #define LN_server_auth "TLS Web Server Authentication" 694f5b1c8a1SJohn Marino #define NID_server_auth 129 695f5b1c8a1SJohn Marino #define OBJ_server_auth OBJ_id_kp,1L 696f5b1c8a1SJohn Marino 697f5b1c8a1SJohn Marino #define SN_client_auth "clientAuth" 698f5b1c8a1SJohn Marino #define LN_client_auth "TLS Web Client Authentication" 699f5b1c8a1SJohn Marino #define NID_client_auth 130 700f5b1c8a1SJohn Marino #define OBJ_client_auth OBJ_id_kp,2L 701f5b1c8a1SJohn Marino 702f5b1c8a1SJohn Marino #define SN_code_sign "codeSigning" 703f5b1c8a1SJohn Marino #define LN_code_sign "Code Signing" 704f5b1c8a1SJohn Marino #define NID_code_sign 131 705f5b1c8a1SJohn Marino #define OBJ_code_sign OBJ_id_kp,3L 706f5b1c8a1SJohn Marino 707f5b1c8a1SJohn Marino #define SN_email_protect "emailProtection" 708f5b1c8a1SJohn Marino #define LN_email_protect "E-mail Protection" 709f5b1c8a1SJohn Marino #define NID_email_protect 132 710f5b1c8a1SJohn Marino #define OBJ_email_protect OBJ_id_kp,4L 711f5b1c8a1SJohn Marino 712f5b1c8a1SJohn Marino #define SN_time_stamp "timeStamping" 713f5b1c8a1SJohn Marino #define LN_time_stamp "Time Stamping" 714f5b1c8a1SJohn Marino #define NID_time_stamp 133 715f5b1c8a1SJohn Marino #define OBJ_time_stamp OBJ_id_kp,8L 716f5b1c8a1SJohn Marino 717f5b1c8a1SJohn Marino /* Additional extended key usage OIDs: Microsoft */ 718f5b1c8a1SJohn Marino 719f5b1c8a1SJohn Marino #define SN_ms_code_ind "msCodeInd" 720f5b1c8a1SJohn Marino #define LN_ms_code_ind "Microsoft Individual Code Signing" 721f5b1c8a1SJohn Marino #define NID_ms_code_ind 134 722f5b1c8a1SJohn Marino #define OBJ_ms_code_ind 1L,3L,6L,1L,4L,1L,311L,2L,1L,21L 723f5b1c8a1SJohn Marino 724f5b1c8a1SJohn Marino #define SN_ms_code_com "msCodeCom" 725f5b1c8a1SJohn Marino #define LN_ms_code_com "Microsoft Commercial Code Signing" 726f5b1c8a1SJohn Marino #define NID_ms_code_com 135 727f5b1c8a1SJohn Marino #define OBJ_ms_code_com 1L,3L,6L,1L,4L,1L,311L,2L,1L,22L 728f5b1c8a1SJohn Marino 729f5b1c8a1SJohn Marino #define SN_ms_ctl_sign "msCTLSign" 730f5b1c8a1SJohn Marino #define LN_ms_ctl_sign "Microsoft Trust List Signing" 731f5b1c8a1SJohn Marino #define NID_ms_ctl_sign 136 732f5b1c8a1SJohn Marino #define OBJ_ms_ctl_sign 1L,3L,6L,1L,4L,1L,311L,10L,3L,1L 733f5b1c8a1SJohn Marino 734f5b1c8a1SJohn Marino #define SN_ms_sgc "msSGC" 735f5b1c8a1SJohn Marino #define LN_ms_sgc "Microsoft Server Gated Crypto" 736f5b1c8a1SJohn Marino #define NID_ms_sgc 137 737f5b1c8a1SJohn Marino #define OBJ_ms_sgc 1L,3L,6L,1L,4L,1L,311L,10L,3L,3L 738f5b1c8a1SJohn Marino 739f5b1c8a1SJohn Marino #define SN_ms_efs "msEFS" 740f5b1c8a1SJohn Marino #define LN_ms_efs "Microsoft Encrypted File System" 741f5b1c8a1SJohn Marino #define NID_ms_efs 138 742f5b1c8a1SJohn Marino #define OBJ_ms_efs 1L,3L,6L,1L,4L,1L,311L,10L,3L,4L 743f5b1c8a1SJohn Marino 744f5b1c8a1SJohn Marino /* Additional usage: Netscape */ 745f5b1c8a1SJohn Marino 746f5b1c8a1SJohn Marino #define SN_ns_sgc "nsSGC" 747f5b1c8a1SJohn Marino #define LN_ns_sgc "Netscape Server Gated Crypto" 748f5b1c8a1SJohn Marino #define NID_ns_sgc 139 749f5b1c8a1SJohn Marino #define OBJ_ns_sgc OBJ_netscape,4L,1L 750f5b1c8a1SJohn Marino 751f5b1c8a1SJohn Marino #define SN_delta_crl "deltaCRL" 752f5b1c8a1SJohn Marino #define LN_delta_crl "X509v3 Delta CRL Indicator" 753f5b1c8a1SJohn Marino #define NID_delta_crl 140 754f5b1c8a1SJohn Marino #define OBJ_delta_crl OBJ_id_ce,27L 755f5b1c8a1SJohn Marino 756f5b1c8a1SJohn Marino #define SN_crl_reason "CRLReason" 757f5b1c8a1SJohn Marino #define LN_crl_reason "CRL Reason Code" 758f5b1c8a1SJohn Marino #define NID_crl_reason 141 759f5b1c8a1SJohn Marino #define OBJ_crl_reason OBJ_id_ce,21L 760f5b1c8a1SJohn Marino 761f5b1c8a1SJohn Marino #define SN_invalidity_date "invalidityDate" 762f5b1c8a1SJohn Marino #define LN_invalidity_date "Invalidity Date" 763f5b1c8a1SJohn Marino #define NID_invalidity_date 142 764f5b1c8a1SJohn Marino #define OBJ_invalidity_date OBJ_id_ce,24L 765f5b1c8a1SJohn Marino 766f5b1c8a1SJohn Marino #define SN_sxnet "SXNetID" 767f5b1c8a1SJohn Marino #define LN_sxnet "Strong Extranet ID" 768f5b1c8a1SJohn Marino #define NID_sxnet 143 769f5b1c8a1SJohn Marino #define OBJ_sxnet 1L,3L,101L,1L,4L,1L 770f5b1c8a1SJohn Marino 771f5b1c8a1SJohn Marino /* PKCS12 and related OBJECT IDENTIFIERS */ 772f5b1c8a1SJohn Marino 773f5b1c8a1SJohn Marino #define OBJ_pkcs12 OBJ_pkcs,12L 774f5b1c8a1SJohn Marino #define OBJ_pkcs12_pbeids OBJ_pkcs12, 1 775f5b1c8a1SJohn Marino 776f5b1c8a1SJohn Marino #define SN_pbe_WithSHA1And128BitRC4 "PBE-SHA1-RC4-128" 777f5b1c8a1SJohn Marino #define LN_pbe_WithSHA1And128BitRC4 "pbeWithSHA1And128BitRC4" 778f5b1c8a1SJohn Marino #define NID_pbe_WithSHA1And128BitRC4 144 779f5b1c8a1SJohn Marino #define OBJ_pbe_WithSHA1And128BitRC4 OBJ_pkcs12_pbeids, 1L 780f5b1c8a1SJohn Marino 781f5b1c8a1SJohn Marino #define SN_pbe_WithSHA1And40BitRC4 "PBE-SHA1-RC4-40" 782f5b1c8a1SJohn Marino #define LN_pbe_WithSHA1And40BitRC4 "pbeWithSHA1And40BitRC4" 783f5b1c8a1SJohn Marino #define NID_pbe_WithSHA1And40BitRC4 145 784f5b1c8a1SJohn Marino #define OBJ_pbe_WithSHA1And40BitRC4 OBJ_pkcs12_pbeids, 2L 785f5b1c8a1SJohn Marino 786f5b1c8a1SJohn Marino #define SN_pbe_WithSHA1And3_Key_TripleDES_CBC "PBE-SHA1-3DES" 787f5b1c8a1SJohn Marino #define LN_pbe_WithSHA1And3_Key_TripleDES_CBC "pbeWithSHA1And3-KeyTripleDES-CBC" 788f5b1c8a1SJohn Marino #define NID_pbe_WithSHA1And3_Key_TripleDES_CBC 146 789f5b1c8a1SJohn Marino #define OBJ_pbe_WithSHA1And3_Key_TripleDES_CBC OBJ_pkcs12_pbeids, 3L 790f5b1c8a1SJohn Marino 791f5b1c8a1SJohn Marino #define SN_pbe_WithSHA1And2_Key_TripleDES_CBC "PBE-SHA1-2DES" 792f5b1c8a1SJohn Marino #define LN_pbe_WithSHA1And2_Key_TripleDES_CBC "pbeWithSHA1And2-KeyTripleDES-CBC" 793f5b1c8a1SJohn Marino #define NID_pbe_WithSHA1And2_Key_TripleDES_CBC 147 794f5b1c8a1SJohn Marino #define OBJ_pbe_WithSHA1And2_Key_TripleDES_CBC OBJ_pkcs12_pbeids, 4L 795f5b1c8a1SJohn Marino 796f5b1c8a1SJohn Marino #define SN_pbe_WithSHA1And128BitRC2_CBC "PBE-SHA1-RC2-128" 797f5b1c8a1SJohn Marino #define LN_pbe_WithSHA1And128BitRC2_CBC "pbeWithSHA1And128BitRC2-CBC" 798f5b1c8a1SJohn Marino #define NID_pbe_WithSHA1And128BitRC2_CBC 148 799f5b1c8a1SJohn Marino #define OBJ_pbe_WithSHA1And128BitRC2_CBC OBJ_pkcs12_pbeids, 5L 800f5b1c8a1SJohn Marino 801f5b1c8a1SJohn Marino #define SN_pbe_WithSHA1And40BitRC2_CBC "PBE-SHA1-RC2-40" 802f5b1c8a1SJohn Marino #define LN_pbe_WithSHA1And40BitRC2_CBC "pbeWithSHA1And40BitRC2-CBC" 803f5b1c8a1SJohn Marino #define NID_pbe_WithSHA1And40BitRC2_CBC 149 804f5b1c8a1SJohn Marino #define OBJ_pbe_WithSHA1And40BitRC2_CBC OBJ_pkcs12_pbeids, 6L 805f5b1c8a1SJohn Marino 806f5b1c8a1SJohn Marino #define OBJ_pkcs12_Version1 OBJ_pkcs12, 10L 807f5b1c8a1SJohn Marino 808f5b1c8a1SJohn Marino #define OBJ_pkcs12_BagIds OBJ_pkcs12_Version1, 1L 809f5b1c8a1SJohn Marino 810f5b1c8a1SJohn Marino #define LN_keyBag "keyBag" 811f5b1c8a1SJohn Marino #define NID_keyBag 150 812f5b1c8a1SJohn Marino #define OBJ_keyBag OBJ_pkcs12_BagIds, 1L 813f5b1c8a1SJohn Marino 814f5b1c8a1SJohn Marino #define LN_pkcs8ShroudedKeyBag "pkcs8ShroudedKeyBag" 815f5b1c8a1SJohn Marino #define NID_pkcs8ShroudedKeyBag 151 816f5b1c8a1SJohn Marino #define OBJ_pkcs8ShroudedKeyBag OBJ_pkcs12_BagIds, 2L 817f5b1c8a1SJohn Marino 818f5b1c8a1SJohn Marino #define LN_certBag "certBag" 819f5b1c8a1SJohn Marino #define NID_certBag 152 820f5b1c8a1SJohn Marino #define OBJ_certBag OBJ_pkcs12_BagIds, 3L 821f5b1c8a1SJohn Marino 822f5b1c8a1SJohn Marino #define LN_crlBag "crlBag" 823f5b1c8a1SJohn Marino #define NID_crlBag 153 824f5b1c8a1SJohn Marino #define OBJ_crlBag OBJ_pkcs12_BagIds, 4L 825f5b1c8a1SJohn Marino 826f5b1c8a1SJohn Marino #define LN_secretBag "secretBag" 827f5b1c8a1SJohn Marino #define NID_secretBag 154 828f5b1c8a1SJohn Marino #define OBJ_secretBag OBJ_pkcs12_BagIds, 5L 829f5b1c8a1SJohn Marino 830f5b1c8a1SJohn Marino #define LN_safeContentsBag "safeContentsBag" 831f5b1c8a1SJohn Marino #define NID_safeContentsBag 155 832f5b1c8a1SJohn Marino #define OBJ_safeContentsBag OBJ_pkcs12_BagIds, 6L 833f5b1c8a1SJohn Marino 834f5b1c8a1SJohn Marino #define LN_friendlyName "friendlyName" 835f5b1c8a1SJohn Marino #define NID_friendlyName 156 836f5b1c8a1SJohn Marino #define OBJ_friendlyName OBJ_pkcs9, 20L 837f5b1c8a1SJohn Marino 838f5b1c8a1SJohn Marino #define LN_localKeyID "localKeyID" 839f5b1c8a1SJohn Marino #define NID_localKeyID 157 840f5b1c8a1SJohn Marino #define OBJ_localKeyID OBJ_pkcs9, 21L 841f5b1c8a1SJohn Marino 842f5b1c8a1SJohn Marino #define OBJ_certTypes OBJ_pkcs9, 22L 843f5b1c8a1SJohn Marino 844f5b1c8a1SJohn Marino #define LN_x509Certificate "x509Certificate" 845f5b1c8a1SJohn Marino #define NID_x509Certificate 158 846f5b1c8a1SJohn Marino #define OBJ_x509Certificate OBJ_certTypes, 1L 847f5b1c8a1SJohn Marino 848f5b1c8a1SJohn Marino #define LN_sdsiCertificate "sdsiCertificate" 849f5b1c8a1SJohn Marino #define NID_sdsiCertificate 159 850f5b1c8a1SJohn Marino #define OBJ_sdsiCertificate OBJ_certTypes, 2L 851f5b1c8a1SJohn Marino 852f5b1c8a1SJohn Marino #define OBJ_crlTypes OBJ_pkcs9, 23L 853f5b1c8a1SJohn Marino 854f5b1c8a1SJohn Marino #define LN_x509Crl "x509Crl" 855f5b1c8a1SJohn Marino #define NID_x509Crl 160 856f5b1c8a1SJohn Marino #define OBJ_x509Crl OBJ_crlTypes, 1L 857f5b1c8a1SJohn Marino 858f5b1c8a1SJohn Marino /* PKCS#5 v2 OIDs */ 859f5b1c8a1SJohn Marino 860f5b1c8a1SJohn Marino #define LN_pbes2 "PBES2" 861f5b1c8a1SJohn Marino #define NID_pbes2 161 862f5b1c8a1SJohn Marino #define OBJ_pbes2 OBJ_pkcs,5L,13L 863f5b1c8a1SJohn Marino 864f5b1c8a1SJohn Marino #define LN_pbmac1 "PBMAC1" 865f5b1c8a1SJohn Marino #define NID_pbmac1 162 866f5b1c8a1SJohn Marino #define OBJ_pbmac1 OBJ_pkcs,5L,14L 867f5b1c8a1SJohn Marino 868f5b1c8a1SJohn Marino #define LN_hmacWithSHA1 "hmacWithSHA1" 869f5b1c8a1SJohn Marino #define NID_hmacWithSHA1 163 870f5b1c8a1SJohn Marino #define OBJ_hmacWithSHA1 OBJ_rsadsi,2L,7L 871f5b1c8a1SJohn Marino 872f5b1c8a1SJohn Marino /* Policy Qualifier Ids */ 873f5b1c8a1SJohn Marino 874f5b1c8a1SJohn Marino #define LN_id_qt_cps "Policy Qualifier CPS" 875f5b1c8a1SJohn Marino #define SN_id_qt_cps "id-qt-cps" 876f5b1c8a1SJohn Marino #define NID_id_qt_cps 164 877f5b1c8a1SJohn Marino #define OBJ_id_qt_cps OBJ_id_pkix,2L,1L 878f5b1c8a1SJohn Marino 879f5b1c8a1SJohn Marino #define LN_id_qt_unotice "Policy Qualifier User Notice" 880f5b1c8a1SJohn Marino #define SN_id_qt_unotice "id-qt-unotice" 881f5b1c8a1SJohn Marino #define NID_id_qt_unotice 165 882f5b1c8a1SJohn Marino #define OBJ_id_qt_unotice OBJ_id_pkix,2L,2L 883f5b1c8a1SJohn Marino 884f5b1c8a1SJohn Marino #define SN_rc2_64_cbc "RC2-64-CBC" 885f5b1c8a1SJohn Marino #define LN_rc2_64_cbc "rc2-64-cbc" 886f5b1c8a1SJohn Marino #define NID_rc2_64_cbc 166 887f5b1c8a1SJohn Marino 888f5b1c8a1SJohn Marino #define SN_SMIMECapabilities "SMIME-CAPS" 889f5b1c8a1SJohn Marino #define LN_SMIMECapabilities "S/MIME Capabilities" 890f5b1c8a1SJohn Marino #define NID_SMIMECapabilities 167 891f5b1c8a1SJohn Marino #define OBJ_SMIMECapabilities OBJ_pkcs9,15L 892f5b1c8a1SJohn Marino 893f5b1c8a1SJohn Marino #define SN_pbeWithMD2AndRC2_CBC "PBE-MD2-RC2-64" 894f5b1c8a1SJohn Marino #define LN_pbeWithMD2AndRC2_CBC "pbeWithMD2AndRC2-CBC" 895f5b1c8a1SJohn Marino #define NID_pbeWithMD2AndRC2_CBC 168 896f5b1c8a1SJohn Marino #define OBJ_pbeWithMD2AndRC2_CBC OBJ_pkcs,5L,4L 897f5b1c8a1SJohn Marino 898f5b1c8a1SJohn Marino #define SN_pbeWithMD5AndRC2_CBC "PBE-MD5-RC2-64" 899f5b1c8a1SJohn Marino #define LN_pbeWithMD5AndRC2_CBC "pbeWithMD5AndRC2-CBC" 900f5b1c8a1SJohn Marino #define NID_pbeWithMD5AndRC2_CBC 169 901f5b1c8a1SJohn Marino #define OBJ_pbeWithMD5AndRC2_CBC OBJ_pkcs,5L,6L 902f5b1c8a1SJohn Marino 903f5b1c8a1SJohn Marino #define SN_pbeWithSHA1AndDES_CBC "PBE-SHA1-DES" 904f5b1c8a1SJohn Marino #define LN_pbeWithSHA1AndDES_CBC "pbeWithSHA1AndDES-CBC" 905f5b1c8a1SJohn Marino #define NID_pbeWithSHA1AndDES_CBC 170 906f5b1c8a1SJohn Marino #define OBJ_pbeWithSHA1AndDES_CBC OBJ_pkcs,5L,10L 907f5b1c8a1SJohn Marino 908f5b1c8a1SJohn Marino /* Extension request OIDs */ 909f5b1c8a1SJohn Marino 910f5b1c8a1SJohn Marino #define LN_ms_ext_req "Microsoft Extension Request" 911f5b1c8a1SJohn Marino #define SN_ms_ext_req "msExtReq" 912f5b1c8a1SJohn Marino #define NID_ms_ext_req 171 913f5b1c8a1SJohn Marino #define OBJ_ms_ext_req 1L,3L,6L,1L,4L,1L,311L,2L,1L,14L 914f5b1c8a1SJohn Marino 915f5b1c8a1SJohn Marino #define LN_ext_req "Extension Request" 916f5b1c8a1SJohn Marino #define SN_ext_req "extReq" 917f5b1c8a1SJohn Marino #define NID_ext_req 172 918f5b1c8a1SJohn Marino #define OBJ_ext_req OBJ_pkcs9,14L 919f5b1c8a1SJohn Marino 920f5b1c8a1SJohn Marino #define SN_name "name" 921f5b1c8a1SJohn Marino #define LN_name "name" 922f5b1c8a1SJohn Marino #define NID_name 173 923f5b1c8a1SJohn Marino #define OBJ_name OBJ_X509,41L 924f5b1c8a1SJohn Marino 925f5b1c8a1SJohn Marino #define SN_dnQualifier "dnQualifier" 926f5b1c8a1SJohn Marino #define LN_dnQualifier "dnQualifier" 927f5b1c8a1SJohn Marino #define NID_dnQualifier 174 928f5b1c8a1SJohn Marino #define OBJ_dnQualifier OBJ_X509,46L 929f5b1c8a1SJohn Marino 930f5b1c8a1SJohn Marino #define SN_id_pe "id-pe" 931f5b1c8a1SJohn Marino #define NID_id_pe 175 932f5b1c8a1SJohn Marino #define OBJ_id_pe OBJ_id_pkix,1L 933f5b1c8a1SJohn Marino 934f5b1c8a1SJohn Marino #define SN_id_ad "id-ad" 935f5b1c8a1SJohn Marino #define NID_id_ad 176 936f5b1c8a1SJohn Marino #define OBJ_id_ad OBJ_id_pkix,48L 937f5b1c8a1SJohn Marino 938f5b1c8a1SJohn Marino #define SN_info_access "authorityInfoAccess" 939f5b1c8a1SJohn Marino #define LN_info_access "Authority Information Access" 940f5b1c8a1SJohn Marino #define NID_info_access 177 941f5b1c8a1SJohn Marino #define OBJ_info_access OBJ_id_pe,1L 942f5b1c8a1SJohn Marino 943f5b1c8a1SJohn Marino #define SN_ad_OCSP "OCSP" 944f5b1c8a1SJohn Marino #define LN_ad_OCSP "OCSP" 945f5b1c8a1SJohn Marino #define NID_ad_OCSP 178 946f5b1c8a1SJohn Marino #define OBJ_ad_OCSP OBJ_id_ad,1L 947f5b1c8a1SJohn Marino 948f5b1c8a1SJohn Marino #define SN_ad_ca_issuers "caIssuers" 949f5b1c8a1SJohn Marino #define LN_ad_ca_issuers "CA Issuers" 950f5b1c8a1SJohn Marino #define NID_ad_ca_issuers 179 951f5b1c8a1SJohn Marino #define OBJ_ad_ca_issuers OBJ_id_ad,2L 952f5b1c8a1SJohn Marino 953f5b1c8a1SJohn Marino #define SN_OCSP_sign "OCSPSigning" 954f5b1c8a1SJohn Marino #define LN_OCSP_sign "OCSP Signing" 955f5b1c8a1SJohn Marino #define NID_OCSP_sign 180 956f5b1c8a1SJohn Marino #define OBJ_OCSP_sign OBJ_id_kp,9L 957f5b1c8a1SJohn Marino #endif /* USE_OBJ_MAC */ 958f5b1c8a1SJohn Marino 959f5b1c8a1SJohn Marino #include <openssl/bio.h> 960f5b1c8a1SJohn Marino #include <openssl/asn1.h> 961f5b1c8a1SJohn Marino 962f5b1c8a1SJohn Marino #define OBJ_NAME_TYPE_UNDEF 0x00 963f5b1c8a1SJohn Marino #define OBJ_NAME_TYPE_MD_METH 0x01 964f5b1c8a1SJohn Marino #define OBJ_NAME_TYPE_CIPHER_METH 0x02 965f5b1c8a1SJohn Marino #define OBJ_NAME_TYPE_PKEY_METH 0x03 966f5b1c8a1SJohn Marino #define OBJ_NAME_TYPE_COMP_METH 0x04 967f5b1c8a1SJohn Marino #define OBJ_NAME_TYPE_NUM 0x05 968f5b1c8a1SJohn Marino 969f5b1c8a1SJohn Marino #define OBJ_NAME_ALIAS 0x8000 970f5b1c8a1SJohn Marino 971f5b1c8a1SJohn Marino #define OBJ_BSEARCH_VALUE_ON_NOMATCH 0x01 972f5b1c8a1SJohn Marino #define OBJ_BSEARCH_FIRST_VALUE_ON_MATCH 0x02 973f5b1c8a1SJohn Marino 974f5b1c8a1SJohn Marino 975f5b1c8a1SJohn Marino #ifdef __cplusplus 976f5b1c8a1SJohn Marino extern "C" { 977f5b1c8a1SJohn Marino #endif 978f5b1c8a1SJohn Marino 979f5b1c8a1SJohn Marino typedef struct obj_name_st { 980f5b1c8a1SJohn Marino int type; 981f5b1c8a1SJohn Marino int alias; 982f5b1c8a1SJohn Marino const char *name; 983f5b1c8a1SJohn Marino const char *data; 984f5b1c8a1SJohn Marino } OBJ_NAME; 985f5b1c8a1SJohn Marino 986f5b1c8a1SJohn Marino #define OBJ_create_and_add_object(a,b,c) OBJ_create(a,b,c) 987f5b1c8a1SJohn Marino 988f5b1c8a1SJohn Marino 989f5b1c8a1SJohn Marino int OBJ_NAME_init(void); 990f5b1c8a1SJohn Marino int OBJ_NAME_new_index(unsigned long (*hash_func)(const char *), 991f5b1c8a1SJohn Marino int (*cmp_func)(const char *, const char *), 992f5b1c8a1SJohn Marino void (*free_func)(const char *, int, const char *)); 993f5b1c8a1SJohn Marino const char *OBJ_NAME_get(const char *name, int type); 994f5b1c8a1SJohn Marino int OBJ_NAME_add(const char *name, int type, const char *data); 995f5b1c8a1SJohn Marino int OBJ_NAME_remove(const char *name, int type); 996f5b1c8a1SJohn Marino void OBJ_NAME_cleanup(int type); /* -1 for everything */ 997f5b1c8a1SJohn Marino void OBJ_NAME_do_all(int type, void (*fn)(const OBJ_NAME *, void *arg), 998f5b1c8a1SJohn Marino void *arg); 999f5b1c8a1SJohn Marino void OBJ_NAME_do_all_sorted(int type, void (*fn)(const OBJ_NAME *, void *arg), 1000f5b1c8a1SJohn Marino void *arg); 1001f5b1c8a1SJohn Marino 1002f5b1c8a1SJohn Marino ASN1_OBJECT * OBJ_dup(const ASN1_OBJECT *o); 1003f5b1c8a1SJohn Marino ASN1_OBJECT * OBJ_nid2obj(int n); 1004f5b1c8a1SJohn Marino const char * OBJ_nid2ln(int n); 1005f5b1c8a1SJohn Marino const char * OBJ_nid2sn(int n); 1006f5b1c8a1SJohn Marino int OBJ_obj2nid(const ASN1_OBJECT *o); 1007f5b1c8a1SJohn Marino ASN1_OBJECT * OBJ_txt2obj(const char *s, int no_name); 1008f5b1c8a1SJohn Marino int OBJ_obj2txt(char *buf, int buf_len, const ASN1_OBJECT *a, int no_name); 1009f5b1c8a1SJohn Marino int OBJ_txt2nid(const char *s); 1010f5b1c8a1SJohn Marino int OBJ_ln2nid(const char *s); 1011f5b1c8a1SJohn Marino int OBJ_sn2nid(const char *s); 1012f5b1c8a1SJohn Marino int OBJ_cmp(const ASN1_OBJECT *a, const ASN1_OBJECT *b); 1013*de0e0e4dSAntonio Huete Jimenez 1014*de0e0e4dSAntonio Huete Jimenez #if defined(LIBRESSL_INTERNAL) 1015f5b1c8a1SJohn Marino const void * OBJ_bsearch_(const void *key, const void *base, int num, 1016f5b1c8a1SJohn Marino int size, int (*cmp)(const void *, const void *)); 1017f5b1c8a1SJohn Marino const void * OBJ_bsearch_ex_(const void *key, const void *base, int num, 1018f5b1c8a1SJohn Marino int size, int (*cmp)(const void *, const void *), 1019f5b1c8a1SJohn Marino int flags); 1020*de0e0e4dSAntonio Huete Jimenez #endif 102172c33676SMaxim Ag 1022f5b1c8a1SJohn Marino int OBJ_new_nid(int num); 1023f5b1c8a1SJohn Marino int OBJ_add_object(const ASN1_OBJECT *obj); 1024f5b1c8a1SJohn Marino int OBJ_create(const char *oid, const char *sn, const char *ln); 1025f5b1c8a1SJohn Marino void OBJ_cleanup(void); 1026f5b1c8a1SJohn Marino int OBJ_create_objects(BIO *in); 1027f5b1c8a1SJohn Marino 1028*de0e0e4dSAntonio Huete Jimenez size_t OBJ_length(const ASN1_OBJECT *obj); 1029*de0e0e4dSAntonio Huete Jimenez const unsigned char *OBJ_get0_data(const ASN1_OBJECT *obj); 1030*de0e0e4dSAntonio Huete Jimenez 1031f5b1c8a1SJohn Marino int OBJ_find_sigid_algs(int signid, int *pdig_nid, int *ppkey_nid); 1032f5b1c8a1SJohn Marino int OBJ_find_sigid_by_algs(int *psignid, int dig_nid, int pkey_nid); 1033f5b1c8a1SJohn Marino int OBJ_add_sigid(int signid, int dig_id, int pkey_id); 1034f5b1c8a1SJohn Marino void OBJ_sigid_free(void); 1035f5b1c8a1SJohn Marino 1036*de0e0e4dSAntonio Huete Jimenez #if defined(LIBRESSL_CRYPTO_INTERNAL) 1037f5b1c8a1SJohn Marino extern int obj_cleanup_defer; 1038f5b1c8a1SJohn Marino void check_defer(int nid); 1039*de0e0e4dSAntonio Huete Jimenez #endif 1040f5b1c8a1SJohn Marino 1041f5b1c8a1SJohn Marino void ERR_load_OBJ_strings(void); 1042f5b1c8a1SJohn Marino 1043f5b1c8a1SJohn Marino /* Error codes for the OBJ functions. */ 1044f5b1c8a1SJohn Marino 1045f5b1c8a1SJohn Marino /* Function codes. */ 1046f5b1c8a1SJohn Marino #define OBJ_F_OBJ_ADD_OBJECT 105 1047f5b1c8a1SJohn Marino #define OBJ_F_OBJ_CREATE 100 1048f5b1c8a1SJohn Marino #define OBJ_F_OBJ_DUP 101 1049f5b1c8a1SJohn Marino #define OBJ_F_OBJ_NAME_NEW_INDEX 106 1050f5b1c8a1SJohn Marino #define OBJ_F_OBJ_NID2LN 102 1051f5b1c8a1SJohn Marino #define OBJ_F_OBJ_NID2OBJ 103 1052f5b1c8a1SJohn Marino #define OBJ_F_OBJ_NID2SN 104 1053f5b1c8a1SJohn Marino 1054f5b1c8a1SJohn Marino /* Reason codes. */ 1055f5b1c8a1SJohn Marino #define OBJ_R_MALLOC_FAILURE 100 1056f5b1c8a1SJohn Marino #define OBJ_R_UNKNOWN_NID 101 1057f5b1c8a1SJohn Marino 1058f5b1c8a1SJohn Marino #ifdef __cplusplus 1059f5b1c8a1SJohn Marino } 1060f5b1c8a1SJohn Marino #endif 1061f5b1c8a1SJohn Marino #endif 1062