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