oidsbase.h
1 /* 2 * Copyright (c) 1999-2001,2003-2004,2008-2014 Apple Inc. All Rights Reserved. 3 * 4 * @APPLE_LICENSE_HEADER_START@ 5 * 6 * This file contains Original Code and/or Modifications of Original Code 7 * as defined in and that are subject to the Apple Public Source License 8 * Version 2.0 (the 'License'). You may not use this file except in 9 * compliance with the License. Please obtain a copy of the License at 10 * http://www.opensource.apple.com/apsl/ and read it before using this 11 * file. 12 * 13 * The Original Code and all software distributed under the License are 14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 18 * Please see the License for the specific language governing rights and 19 * limitations under the License. 20 * 21 * @APPLE_LICENSE_HEADER_END@ 22 * 23 * oidsbase.h -- Basic Object Identifier Macros and Data Types. 24 */ 25 26 #ifndef _OIDSBASE_H_ 27 #define _OIDSBASE_H_ 1 28 29 #ifdef __cplusplus 30 extern "C" { 31 #endif 32 33 #define SECASN1OID_DEF(NAME, VALUE, ARGS...) \ 34 static const uint8_t _##NAME[] = { VALUE, ## ARGS }; \ 35 const SecAsn1Oid NAME = { sizeof(_##NAME), (uint8_t *)_##NAME } 36 37 /* Intel CSSM */ 38 39 #define INTEL 96, 134, 72, 1, 134, 248, 77 40 #define INTEL_LENGTH 7 41 42 #define INTEL_CDSASECURITY INTEL, 2 43 #define INTEL_CDSASECURITY_LENGTH (INTEL_LENGTH + 1) 44 45 #define INTEL_SEC_FORMATS INTEL_CDSASECURITY, 1 46 #define INTEL_SEC_FORMATS_LENGTH (INTEL_CDSASECURITY_LENGTH + 1) 47 48 #define INTEL_SEC_ALGS INTEL_CDSASECURITY, 2, 5 49 #define INTEL_SEC_ALGS_LENGTH (INTEL_CDSASECURITY_LENGTH + 2) 50 51 #define INTEL_SEC_OBJECT_BUNDLE INTEL_SEC_FORMATS, 4 52 #define INTEL_SEC_OBJECT_BUNDLE_LENGTH (INTEL_SEC_FORMATS_LENGTH + 1) 53 54 #define INTEL_CERT_AND_PRIVATE_KEY_2_0 INTEL_SEC_OBJECT_BUNDLE, 1 55 #define INTEL_CERT_AND_PRIVATE_KEY_2_0_LENGTH (INTEL_SEC_OBJECT_BUNDLE_LENGTH + 1) 56 57 /* Suffix specifying format or representation of a field value */ 58 /* Note that if a format suffix is not specified, a flat data 59 representation is implied */ 60 #define INTEL_X509_C_DATATYPE 1 61 #define INTEL_X509_LDAPSTRING_DATATYPE 2 62 63 #define OID_ISO_CCITT_DIR_SERVICE 85 64 #define OID_DS OID_ISO_CCITT_DIR_SERVICE 65 #define OID_DS_LENGTH 1 66 #define OID_ATTR_TYPE OID_DS, 4 67 #define OID_ATTR_TYPE_LENGTH OID_DS_LENGTH + 1 68 #define OID_EXTENSION OID_DS, 29 69 #define OID_EXTENSION_LENGTH OID_DS_LENGTH + 1 70 #define OID_ISO_STANDARD 40 71 #define OID_ISO_MEMBER 42 72 #define OID_US OID_ISO_MEMBER, 134, 72 73 74 #define OID_ISO_IDENTIFIED_ORG 43 75 #define OID_OSINET OID_ISO_IDENTIFIED_ORG, 4 76 #define OID_GOSIP OID_ISO_IDENTIFIED_ORG, 5 77 #define OID_DOD OID_ISO_IDENTIFIED_ORG, 6 78 #define OID_OIW OID_ISO_IDENTIFIED_ORG, 14 79 80 #define OID_ITU_RFCDATA_MEMBER_LENGTH 1 81 #define OID_ITU_RFCDATA 9 82 83 /* From the PKCS Standards */ 84 #define OID_ISO_MEMBER_LENGTH 1 85 #define OID_US_LENGTH OID_ISO_MEMBER_LENGTH + 2 86 #define OID_RSA OID_US, 134, 247, 13 87 #define OID_RSA_LENGTH OID_US_LENGTH + 3 88 #define OID_RSA_HASH OID_RSA, 2 89 #define OID_RSA_HASH_LENGTH OID_RSA_LENGTH + 1 90 #define OID_RSA_ENCRYPT OID_RSA, 3 91 #define OID_RSA_ENCRYPT_LENGTH OID_RSA_LENGTH + 1 92 #define OID_PKCS OID_RSA, 1 93 #define OID_PKCS_LENGTH OID_RSA_LENGTH +1 94 #define OID_PKCS_1 OID_PKCS, 1 95 #define OID_PKCS_1_LENGTH OID_PKCS_LENGTH +1 96 #define OID_PKCS_2 OID_PKCS, 2 97 #define OID_PKCS_3 OID_PKCS, 3 98 #define OID_PKCS_3_LENGTH OID_PKCS_LENGTH +1 99 #define OID_PKCS_4 OID_PKCS, 4 100 #define OID_PKCS_5 OID_PKCS, 5 101 #define OID_PKCS_5_LENGTH OID_PKCS_LENGTH +1 102 #define OID_PKCS_6 OID_PKCS, 6 103 #define OID_PKCS_7 OID_PKCS, 7 104 #define OID_PKCS_7_LENGTH OID_PKCS_LENGTH +1 105 #define OID_PKCS_8 OID_PKCS, 8 106 #define OID_PKCS_9 OID_PKCS, 9 107 #define OID_PKCS_9_LENGTH OID_PKCS_LENGTH +1 108 #define OID_PKCS_10 OID_PKCS, 10 109 #define OID_PKCS_11 OID_PKCS, 11 110 #define OID_PKCS_11_LENGTH OID_PKCS_LENGTH +1 111 #define OID_PKCS_12 OID_PKCS, 12 112 #define OID_PKCS_12_LENGTH OID_PKCS_LENGTH +1 113 114 /* ANSI X9.42 */ 115 #define OID_ANSI_X9_42 OID_US, 206, 62, 2 116 #define OID_ANSI_X9_42_LEN OID_US_LENGTH + 3 117 #define OID_ANSI_X9_42_SCHEME OID_ANSI_X9_42, 3 118 #define OID_ANSI_X9_42_SCHEME_LEN OID_ANSI_X9_42_LEN + 1 119 #define OID_ANSI_X9_42_NAMED_SCHEME OID_ANSI_X9_42, 4 120 #define OID_ANSI_X9_42_NAMED_SCHEME_LEN OID_ANSI_X9_42_LEN + 1 121 122 /* ANSI X9.62 (1 2 840 10045) */ 123 #define OID_ANSI_X9_62 0x2A, 0x86, 0x48, 0xCE, 0x3D 124 #define OID_ANSI_X9_62_LEN 5 125 #define OID_ANSI_X9_62_FIELD_TYPE OID_ANSI_X9_62, 1 126 #define OID_ANSI_X9_62_PUBKEY_TYPE OID_ANSI_X9_62, 2 127 #define OID_ANSI_X9_62_ELL_CURVE OID_ANSI_X9_62, 3 128 #define OID_ANSI_X9_62_ELL_CURVE_LEN OID_ANSI_X9_62_LEN+1 129 #define OID_ANSI_X9_62_C_TWO_CURVE OID_ANSI_X9_62_ELL_CURVE, 0 130 #define OID_ANSI_X9_62_PRIME_CURVE OID_ANSI_X9_62_ELL_CURVE, 1 131 #define OID_ANSI_X9_62_SIG_TYPE OID_ANSI_X9_62, 4 132 #define OID_ANSI_X9_62_SIG_TYPE_LEN OID_ANSI_X9_62_LEN+1 133 134 /* PKIX */ 135 #define OID_PKIX OID_DOD, 1, 5, 5, 7 136 #define OID_PKIX_LENGTH 6 137 #define OID_PE OID_PKIX, 1 138 #define OID_PE_LENGTH OID_PKIX_LENGTH + 1 139 #define OID_QT OID_PKIX, 2 140 #define OID_QT_LENGTH OID_PKIX_LENGTH + 1 141 #define OID_KP OID_PKIX, 3 142 #define OID_KP_LENGTH OID_PKIX_LENGTH + 1 143 #define OID_OTHER_NAME OID_PKIX, 8 144 #define OID_OTHER_NAME_LENGTH OID_PKIX_LENGTH + 1 145 #define OID_PDA OID_PKIX, 9 146 #define OID_PDA_LENGTH OID_PKIX_LENGTH + 1 147 #define OID_QCS OID_PKIX, 11 148 #define OID_QCS_LENGTH OID_PKIX_LENGTH + 1 149 #define OID_AD OID_PKIX, 48 150 #define OID_AD_LENGTH OID_PKIX_LENGTH + 1 151 #define OID_AD_OCSP OID_AD, 1 152 #define OID_AD_OCSP_LENGTH OID_AD_LENGTH + 1 153 154 /* ETSI */ 155 #define OID_ETSI 0x04, 0x00 156 #define OID_ETSI_LENGTH 2 157 #define OID_ETSI_QCS 0x04, 0x00, 0x8E, 0x46, 0x01 158 #define OID_ETSI_QCS_LENGTH 5 159 160 #define OID_OIW_SECSIG OID_OIW, 3 161 #define OID_OIW_LENGTH 2 162 #define OID_OIW_SECSIG_LENGTH OID_OIW_LENGTH +1 163 164 #define OID_OIW_ALGORITHM OID_OIW_SECSIG, 2 165 #define OID_OIW_ALGORITHM_LENGTH OID_OIW_SECSIG_LENGTH +1 166 167 /* NIST defined digest algorithm arc (2, 16, 840, 1, 101, 3, 4, 2) */ 168 #define OID_NIST_HASHALG 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x02 169 #define OID_NIST_HASHALG_LENGTH 8 170 171 /* Kerberos PKINIT */ 172 #define OID_KERBv5 0x2b, 6, 1, 5, 2 173 #define OID_KERBv5_LEN 5 174 #define OID_KERBv5_PKINIT OID_KERBv5, 3 175 #define OID_KERBv5_PKINIT_LEN OID_KERBv5_LEN + 1 176 177 /* Certicom (1 3 132) */ 178 #define OID_CERTICOM 0x2B, 0x81, 0x04 179 #define OID_CERTICOM_LEN 3 180 #define OID_CERTICOM_ELL_CURVE OID_CERTICOM, 0 181 #define OID_CERTICOM_ELL_CURVE_LEN OID_CERTICOM_LEN+1 182 183 /* 184 * Apple-specific OID bases 185 */ 186 187 /* 188 * apple OBJECT IDENTIFIER ::= 189 * { iso(1) member-body(2) US(840) 113635 } 190 * 191 * BER = 06 06 2A 86 48 86 F7 63 192 */ 193 #define APPLE_OID OID_US, 0x86, 0xf7, 0x63 194 #define APPLE_OID_LENGTH OID_US_LENGTH + 3 195 196 /* appleDataSecurity OBJECT IDENTIFIER ::= 197 * { apple 100 } 198 * { 1 2 840 113635 100 } 199 * 200 * BER = 06 07 2A 86 48 86 F7 63 64 201 */ 202 #define APPLE_ADS_OID APPLE_OID, 0x64 203 #define APPLE_ADS_OID_LENGTH APPLE_OID_LENGTH + 1 204 205 /* 206 * appleTrustPolicy OBJECT IDENTIFIER ::= 207 * { appleDataSecurity 1 } 208 * { 1 2 840 113635 100 1 } 209 * 210 * BER = 06 08 2A 86 48 86 F7 63 64 01 211 */ 212 #define APPLE_TP_OID APPLE_ADS_OID, 1 213 #define APPLE_TP_OID_LENGTH APPLE_ADS_OID_LENGTH + 1 214 215 /* 216 * appleSecurityAlgorithm OBJECT IDENTIFIER ::= 217 * { appleDataSecurity 2 } 218 * { 1 2 840 113635 100 2 } 219 * 220 * BER = 06 08 2A 86 48 86 F7 63 64 02 221 */ 222 #define APPLE_ALG_OID APPLE_ADS_OID, 2 223 #define APPLE_ALG_OID_LENGTH APPLE_ADS_OID_LENGTH + 1 224 225 /* 226 * appleDotMacCertificate OBJECT IDENTIFIER ::= 227 * { appleDataSecurity 3 } 228 * { 1 2 840 113635 100 3 } 229 */ 230 #define APPLE_DOTMAC_CERT_OID APPLE_ADS_OID, 3 231 #define APPLE_DOTMAC_CERT_OID_LENGTH APPLE_ADS_OID_LENGTH + 1 232 233 /* 234 * Basis of Policy OIDs for .mac TP requests 235 * 236 * dotMacCertificateRequest OBJECT IDENTIFIER ::= 237 * { appleDotMacCertificate 1 } 238 * { 1 2 840 113635 100 3 1 } 239 */ 240 #define APPLE_DOTMAC_CERT_REQ_OID APPLE_DOTMAC_CERT_OID, 1 241 #define APPLE_DOTMAC_CERT_REQ_OID_LENGTH APPLE_DOTMAC_CERT_OID_LENGTH + 1 242 243 /* 244 * Basis of .mac Certificate Extensions 245 * 246 * dotMacCertificateExtension OBJECT IDENTIFIER ::= 247 * { appleDotMacCertificate 2 } 248 * { 1 2 840 113635 100 3 2 } 249 */ 250 #define APPLE_DOTMAC_CERT_EXTEN_OID APPLE_DOTMAC_CERT_OID, 2 251 #define APPLE_DOTMAC_CERT_EXTEN_OID_LENGTH APPLE_DOTMAC_CERT_OID_LENGTH + 1 252 253 /* 254 * Basis of .mac Certificate request OID/value identifiers 255 * 256 * dotMacCertificateRequestValues OBJECT IDENTIFIER ::= 257 * { appleDotMacCertificate 3 } 258 * { 1 2 840 113635 100 3 3 } 259 */ 260 #define APPLE_DOTMAC_CERT_REQ_VALUE_OID APPLE_DOTMAC_CERT_OID, 3 261 #define APPLE_DOTMAC_CERT_REQ_VALUE_OID_LENGTH APPLE_DOTMAC_CERT_OID_LENGTH + 1 262 263 /* 264 * Basis of Apple-specific extended key usages 265 * 266 * appleExtendedKeyUsage OBJECT IDENTIFIER ::= 267 * { appleDataSecurity 4 } 268 * { 1 2 840 113635 100 4 } 269 */ 270 #define APPLE_EKU_OID APPLE_ADS_OID, 4 271 #define APPLE_EKU_OID_LENGTH APPLE_ADS_OID_LENGTH + 1 272 273 /* 274 * Basis of Apple Code Signing extended key usages 275 * appleCodeSigning OBJECT IDENTIFIER ::= 276 * { appleExtendedKeyUsage 1 } 277 * { 1 2 840 113635 100 4 1 } 278 */ 279 #define APPLE_EKU_CODE_SIGNING APPLE_EKU_OID, 1 280 #define APPLE_EKU_CODE_SIGNING_LENGTH APPLE_EKU_OID_LENGTH + 1 281 282 /* -------------------------------------------------------------------------*/ 283 284 /* 285 * Basis of Apple-specific Certificate Policy identifiers 286 * appleCertificatePolicies OBJECT IDENTIFIER ::= 287 * { appleDataSecurity 5 } 288 * { 1 2 840 113635 100 5 } 289 */ 290 #define APPLE_CERT_POLICIES APPLE_ADS_OID, 5 291 #define APPLE_CERT_POLICIES_LENGTH APPLE_ADS_OID_LENGTH + 1 292 293 /* 294 * Base for MacAppStore Certificate Policy identifiers 295 * macAppStoreCertificatePolicyIDs OBJECT IDENTIFIER ::= 296 * { appleCertificatePolicies 6 } 297 * { 1 2 840 113635 100 5 6 } 298 */ 299 #define APPLE_CERT_POLICIES_MACAPPSTORE APPLE_CERT_POLICIES, 6 300 #define APPLE_CERT_POLICIES_MACAPPSTORE_LENGTH APPLE_CERT_POLICIES_LENGTH + 1 301 302 /* 303 * MacAppStore receipt verification Certificate Policy identifier 304 * macAppStoreReceiptCertificatePolicyID OBJECT IDENTIFIER ::= 305 * { appleCertificatePolicies 6 1 } 306 * { 1 2 840 113635 100 5 6 1 } 307 */ 308 #define APPLE_CERT_POLICIES_MACAPPSTORE_RECEIPT APPLE_CERT_POLICIES_MACAPPSTORE, 1 309 #define APPLE_CERT_POLICIES_MACAPPSTORE_RECEIPT_LENGTH APPLE_CERT_POLICIES_MACAPPSTORE_LENGTH + 1 310 311 /* 312 * Base for AppleID Certificate Policy identifiers 313 * macAppStoreCertificatePolicyIDs OBJECT IDENTIFIER ::= 314 * { appleCertificatePolicies 7 } 315 * { 1 2 840 113635 100 5 7 } 316 */ 317 #define APPLE_CERT_POLICIES_APPLEID APPLE_CERT_POLICIES, 7 318 #define APPLE_CERT_POLICIES_APPLEID_LENGTH APPLE_CERT_POLICIES_LENGTH + 1 319 320 /* 321 * AppleID Sharing Certificate Policy identifier 322 * appleIDSharingPolicyID OBJECT IDENTIFIER ::= 323 * { appleCertificatePolicies 7 1 } 324 * { 1 2 840 113635 100 5 7 1 } 325 */ 326 #define APPLE_CERT_POLICIES_APPLEID_SHARING APPLE_CERT_POLICIES_APPLEID, 1 327 #define APPLE_CERT_POLICIES_APPLEID_SHARING_LENGTH APPLE_CERT_POLICIES_APPLEID_LENGTH + 1 328 329 /* 330 * Apple Mobile Store Signing Policy identifier 331 * 332 * appleDemoContentReleaseSigningID ::= { appleCertificatePolicies 12} 333 * { 1 2 840 113635 100 5 12 } 334 */ 335 #define APPLE_CERT_POLICIES_MOBILE_STORE_SIGNING APPLE_CERT_POLICIES, 12 336 #define APPLE_CERT_POLICIES_MOBILE_STORE_SIGNING_LENGTH APPLE_CERT_POLICIES_LENGTH + 1 337 338 /* 339 * Apple Test Mobile Store Signing Policy identifier 340 * 341 * appleDemoContentTestSigningID ::= { appleDemoContentReleaseSigningID 1} 342 * { 1 2 840 113635 100 5 12 1 } 343 */ 344 #define APPLE_CERT_POLICIES_TEST_MOBILE_STORE_SIGNING APPLE_CERT_POLICIES, 12, 1 345 #define APPLE_CERT_POLICIES_TEST_MOBILE_STORE_SIGNING_LENGTH APPLE_CERT_POLICIES_LENGTH + 2 346 347 348 /* -------------------------------------------------------------------------*/ 349 350 /* 351 * Basis of Apple-specific certificate extensions 352 * appleCertificateExtensions OBJECT IDENTIFIER ::= 353 * { appleDataSecurity 6 } 354 * { 1 2 840 113635 100 6 } 355 */ 356 #define APPLE_EXTENSION_OID APPLE_ADS_OID, 6 357 #define APPLE_EXTENSION_OID_LENGTH APPLE_ADS_OID_LENGTH + 1 358 359 /* 360 * Basis of Apple-specific Code Signing certificate extensions 361 * appleCertificateExtensionCodeSigning OBJECT IDENTIFIER ::= 362 * { appleCertificateExtensions 1 } 363 * { 1 2 840 113635 100 6 1 } 364 */ 365 #define APPLE_EXTENSION_CODE_SIGNING APPLE_EXTENSION_OID, 1 366 #define APPLE_EXTENSION_CODE_SIGNING_LENGTH APPLE_EXTENSION_OID_LENGTH + 1 367 368 /* 369 * Basis of MacAppStore receipt verification certificate extensions 370 * macAppStoreReceiptExtension OBJECT IDENTIFIER ::= 371 * { appleCertificateExtensions 11 1 } 372 * { 1 2 840 113635 100 6 11 1 } 373 */ 374 #define APPLE_EXTENSION_MACAPPSTORE_RECEIPT APPLE_EXTENSION_OID, 11, 1 375 #define APPLE_EXTENSION_MACAPPSTORE_RECEIPT_LENGTH APPLE_EXTENSION_OID_LENGTH + 2 376 377 /* 378 * Basis of Apple-specific Intermediate Certificate extensions 379 * appleCertificateExtensionIntermediateMarker OBJECT IDENTIFIER ::= 380 * { appleCertificateExtensions 2 } 381 * { 1 2 840 113635 100 6 2 } 382 */ 383 #define APPLE_EXTENSION_INTERMEDIATE_MARKER APPLE_EXTENSION_OID, 2 384 #define APPLE_EXTENSION_INTERMEDIATE_MARKER_LENGTH APPLE_EXTENSION_OID_LENGTH + 1 385 386 /* 387 * Marker for the WWDR Intermediate Certificate 388 * appleCertificateExtensionWWDRIntermediate OBJECT IDENTIFIER ::= 389 * { appleCertificateExtensionIntermediateMarker 1 } 390 * { 1 2 840 113635 100 6 2 1 } 391 */ 392 #define APPLE_EXTENSION_WWDR_INTERMEDIATE APPLE_EXTENSION_INTERMEDIATE_MARKER, 1 393 #define APPLE_EXTENSION_WWDR_INTERMEDIATE_LENGTH APPLE_EXTENSION_INTERMEDIATE_MARKER_LENGTH + 1 394 395 /* 396 * Marker for the iTunes Store Intermediate Certificate 397 * appleCertificateExtensioniTunesStoreIntermediate OBJECT IDENTIFIER ::= 398 * { appleCertificateExtensionIntermediateMarker 2 } 399 * { 1 2 840 113635 100 6 2 2 } 400 */ 401 #define APPLE_EXTENSION_ITMS_INTERMEDIATE APPLE_EXTENSION_INTERMEDIATE_MARKER, 2 402 #define APPLE_EXTENSION_ITMS_INTERMEDIATE_LENGTH APPLE_EXTENSION_INTERMEDIATE_MARKER_LENGTH + 1 403 404 /* 405 * Marker for the Application Integration Intermediate Certificate 406 * appleCertificateExtensionApplicationIntegrationIntermediate OBJECT IDENTIFIER ::= 407 * { appleCertificateExtensionIntermediateMarker 3 } 408 * { 1 2 840 113635 100 6 2 3 } 409 */ 410 #define APPLE_EXTENSION_AAI_INTERMEDIATE APPLE_EXTENSION_INTERMEDIATE_MARKER, 3 411 #define APPLE_EXTENSION_AAI_INTERMEDIATE_LENGTH APPLE_EXTENSION_INTERMEDIATE_MARKER_LENGTH + 1 412 413 /* 414 * Apple Apple ID Intermediate Marker (New subCA, no longer shared with push notification server cert issuer 415 * 416 * appleCertificateExtensionAppleIDIntermediate ::= 417 * { appleCertificateExtensionIntermediateMarker 7 } 418 * { 1 2 840 113635 100 6 2 7 } 419 * 420 * shared intermediate OID is APPLE_CERT_EXT_INTERMEDIATE_MARKER_APPLEID 421 * Apple Apple ID Intermediate Marker 422 * Same as APPLE_CERT_EXT_INTERMEDIATE_MARKER_APPLEID_2 on iOS 423 */ 424 #define APPLE_EXTENSION_APPLEID_INTERMEDIATE APPLE_EXTENSION_INTERMEDIATE_MARKER, 7 425 #define APPLE_EXTENSION_APPLEID_INTERMEDIATE_LENGTH APPLE_EXTENSION_INTERMEDIATE_MARKER_LENGTH + 1 426 427 /* 428 * Apple System Integration 2 Intermediate Marker (New subCA) 429 * 430 * appleCertificateExtensionSystemIntegration2Intermediate ::= 431 * { appleCertificateExtensionIntermediateMarker 10 } 432 * { 1 2 840 113635 100 6 2 10 } 433 */ 434 #define APPLE_EXTENSION_SYSINT2_INTERMEDIATE APPLE_EXTENSION_INTERMEDIATE_MARKER, 10 435 #define APPLE_EXTENSION_SYSINT2_INTERMEDIATE_LENGTH APPLE_EXTENSION_INTERMEDIATE_MARKER_LENGTH + 1 436 437 /* 438 * Apple Developer Authentication Intermediate Marker (New subCA) 439 * 440 * appleCertificateExtensionDeveloperAuthentication ::= 441 * { appleCertificateExtensionIntermediateMarker 11 } 442 * { 1 2 840 113635 100 6 2 11 } 443 */ 444 #define APPLE_EXTENSION_DEVELOPER_AUTHENTICATION APPLE_EXTENSION_INTERMEDIATE_MARKER, 11 445 #define APPLE_EXTENSION_DEVELOPER_AUTHENTICATION_LENGTH APPLE_EXTENSION_INTERMEDIATE_MARKER_LENGTH + 1 446 447 /* 448 * Apple Server Authentication Intermediate Marker (New subCA) 449 * 450 * appleCertificateExtensionServerAuthentication ::= 451 * { appleCertificateExtensionIntermediateMarker 12 } 452 * { 1 2 840 113635 100 6 2 12 } 453 */ 454 #define APPLE_EXTENSION_SERVER_AUTHENTICATION APPLE_EXTENSION_INTERMEDIATE_MARKER, 12 455 #define APPLE_EXTENSION_SERVER_AUTHENTICATION_LENGTH APPLE_EXTENSION_INTERMEDIATE_MARKER_LENGTH + 1 456 457 /* 458 * Apple Secure Escrow Service Marker 459 * 460 * appleEscrowService ::= { appleCertificateExtensions 23 1 } 461 * { 1 2 840 113635 100 6 23 1 } 462 */ 463 #define APPLE_EXTENSION_ESCROW_SERVICE APPLE_EXTENSION_OID, 23, 1 464 #define APPLE_EXTENSION_ESCROW_SERVICE_LENGTH APPLE_EXTENSION_OID_LENGTH + 2 465 466 /* 467 * Apple OS X Provisioning Profile Signing Marker 468 * (note this is unfortunately under the EKU arc although it's used as a cert extension) 469 */ 470 #define APPLE_EXTENSION_PROVISIONING_PROFILE_SIGNING APPLE_EKU_OID, 11 471 #define APPLE_EXTENSION_PROVISIONING_PROFILE_SIGNING_LENGTH APPLE_EKU_OID_LENGTH + 1 472 473 /* 474 * Marker for the AppleID Sharing Certificate 475 * appleID OBJECT IDENTIFIER ::= 476 * { appleExtendedKeyUsage 7} 477 * { 1 2 840 113635 100 4 7 } 478 */ 479 480 #define APPLE_EXTENSION_APPLEID_SHARING APPLE_EKU_OID, 7 481 #define APPLE_EXTENSION_APPLEID_SHARING_LENGTH APPLE_EKU_OID_LENGTH + 1 482 483 /* 484 * Netscape OIDs. 485 */ 486 #define NETSCAPE_BASE_OID 0x60, 0x86, 0x48, 0x01, 0x86, 0xf8, 0x42 487 #define NETSCAPE_BASE_OID_LEN 7 488 489 /* 490 * Netscape cert extension. 491 * 492 * netscape-cert-extension OBJECT IDENTIFIER ::= 493 * { 2 16 840 1 113730 1 } 494 * 495 * BER = 06 08 60 86 48 01 86 F8 42 01 496 */ 497 #define NETSCAPE_CERT_EXTEN NETSCAPE_BASE_OID, 0x01 498 #define NETSCAPE_CERT_EXTEN_LENGTH NETSCAPE_BASE_OID_LEN + 1 499 500 #define NETSCAPE_CERT_POLICY NETSCAPE_BASE_OID, 0x04 501 #define NETSCAPE_CERT_POLICY_LENGTH NETSCAPE_BASE_OID_LEN + 1 502 503 /* Google OIDs: 1.3.6.1.4.1.11129. */ 504 #define GOOGLE_BASE_OID OID_DOD, 0x01, 0x04, 0x01, 0xD6, 0x79 505 #define GOOGLE_BASE_OID_LEN OID_DOD_LEN + 5 506 #define GOOGLE_EMBEDDED_SCT_OID GOOGLE_BASE_OID, 0x02, 0x04, 0x02 507 #define GOOGLE_OCSP_SCT_OID GOOGLE_BASE_OID, 0x02, 0x04, 0x05 508 509 /* 510 * Domain Component OID 511 */ 512 #define OID_ITU_RFCDATA_2342 OID_ITU_RFCDATA, 0x49, 0x86 513 #define OID_ITU_RFCDATA_2342_LENGTH OID_ITU_RFCDATA_MEMBER_LENGTH + 2 514 515 #define OID_ITU_RFCDATA_2342_UCL OID_ITU_RFCDATA_2342, 0x49, 0x1F, 0x12, 0x8C 516 #define OID_ITU_RFCDATA_2342_UCL_LENGTH OID_ITU_RFCDATA_2342_LENGTH + 4 517 518 #define OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT OID_ITU_RFCDATA_2342_UCL, 0xE4 519 #define OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_LENGTH OID_ITU_RFCDATA_2342_UCL_LENGTH + 1 520 521 #define OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_ATTRIBUTES OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT, 0x81 522 #define OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_ATTRIBUTES_LENGTH OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_LENGTH + 1 523 524 #define OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_ATTRIBUTES_DOMAINCOMPONENT OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_ATTRIBUTES, 0x99 525 #define OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_ATTRIBUTES_DOMAINCOMPONENT_LENGTH OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_ATTRIBUTES_LENGTH + 1 526 527 #define OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_ATTRIBUTES_USERID OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_ATTRIBUTES, 0x81 528 #define OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_ATTRIBUTES_USERID_LENGTH OID_ITU_RFCDATA_2342_UCL_DIRECTORYPILOT_ATTRIBUTES_LENGTH + 1 529 530 #ifdef __cplusplus 531 } 532 #endif 533 534 #endif /* _OIDSBASE_H_ */