idnits 2.17.1 draft-ietf-lamps-rfc3709bis-03.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- -- The draft header indicates that this document obsoletes RFC6170, but the abstract doesn't seem to directly say this. It does mention RFC6170 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (23 June 2022) is 671 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Looks like a reference, but probably isn't: '0' on line 1939 -- Looks like a reference, but probably isn't: '1' on line 1618 -- Looks like a reference, but probably isn't: '2' on line 1938 -- Looks like a reference, but probably isn't: '3' on line 1752 -- Looks like a reference, but probably isn't: '4' on line 457 -- Possible downref: Non-RFC (?) normative reference: ref. 'GIF' -- Possible downref: Normative reference to a draft: ref. 'I-D.ietf-httpbis-semantics' -- Possible downref: Non-RFC (?) normative reference: ref. 'ISO15948' -- Possible downref: Non-RFC (?) normative reference: ref. 'JPEG' -- Possible downref: Non-RFC (?) normative reference: ref. 'MP3' -- Possible downref: Non-RFC (?) normative reference: ref. 'NEW-ASN1' ** Downref: Normative reference to an Informational RFC: RFC 1952 -- Possible downref: Non-RFC (?) normative reference: ref. 'SVGT' -- Obsolete informational reference (is this intentional?): RFC 3709 (Obsoleted by RFC 9399) -- Obsolete informational reference (is this intentional?): RFC 6170 (Obsoleted by RFC 9399) Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 16 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group S. Santesson 3 Internet-Draft IDsec Solutions 4 Obsoletes: 3709, 6170 (if approved) R. Housley 5 Intended status: Standards Track Vigil Security 6 Expires: 25 December 2022 T. Freeman 7 Amazon Web Services 8 L. Rosenthol 9 Adobe 10 23 June 2022 12 Internet X.509 Public Key Infrastructure: Logotypes in X.509 13 Certificates 14 draft-ietf-lamps-rfc3709bis-03 16 Abstract 18 This document specifies a certificate extension for including 19 logotypes in public key certificates and attribute certificates. 20 This document obsoletes RFC 3709 and RFC 6170. 22 Status of This Memo 24 This Internet-Draft is submitted in full conformance with the 25 provisions of BCP 78 and BCP 79. 27 Internet-Drafts are working documents of the Internet Engineering 28 Task Force (IETF). Note that other groups may also distribute 29 working documents as Internet-Drafts. The list of current Internet- 30 Drafts is at https://datatracker.ietf.org/drafts/current/. 32 Internet-Drafts are draft documents valid for a maximum of six months 33 and may be updated, replaced, or obsoleted by other documents at any 34 time. It is inappropriate to use Internet-Drafts as reference 35 material or to cite them other than as "work in progress." 37 This Internet-Draft will expire on 25 December 2022. 39 Copyright Notice 41 Copyright (c) 2022 IETF Trust and the persons identified as the 42 document authors. All rights reserved. 44 This document is subject to BCP 78 and the IETF Trust's Legal 45 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 46 license-info) in effect on the date of publication of this document. 47 Please review these documents carefully, as they describe your rights 48 and restrictions with respect to this document. Code Components 49 extracted from this document must include Revised BSD License text as 50 described in Section 4.e of the Trust Legal Provisions and are 51 provided without warranty as described in the Revised BSD License. 53 Table of Contents 55 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 56 1.1. Certificate-based Identification . . . . . . . . . . . . 4 57 1.2. Selection of Certificates . . . . . . . . . . . . . . . . 5 58 1.3. Combination of Verification Techniques . . . . . . . . . 5 59 1.4. Terminology . . . . . . . . . . . . . . . . . . . . . . . 6 60 2. Different Types of Logotypes in Certificates . . . . . . . . 6 61 3. Logotype Data . . . . . . . . . . . . . . . . . . . . . . . . 7 62 4. Logotype Extension . . . . . . . . . . . . . . . . . . . . . 8 63 4.1. Extension Format . . . . . . . . . . . . . . . . . . . . 8 64 4.2. Conventions for LogotypeImageInfo . . . . . . . . . . . . 12 65 4.3. Embedded Images . . . . . . . . . . . . . . . . . . . . . 13 66 4.4. Other Logotypes . . . . . . . . . . . . . . . . . . . . . 14 67 4.4.1. Loyalty Logotype . . . . . . . . . . . . . . . . . . 14 68 4.4.2. Certificate Background Logotype . . . . . . . . . . . 14 69 4.4.3. Certificate Image Logotype . . . . . . . . . . . . . 15 70 5. Type of Certificates . . . . . . . . . . . . . . . . . . . . 16 71 6. Use in Clients . . . . . . . . . . . . . . . . . . . . . . . 16 72 7. Image Formats . . . . . . . . . . . . . . . . . . . . . . . . 17 73 8. Audio Formats . . . . . . . . . . . . . . . . . . . . . . . . 19 74 9. Security Considerations . . . . . . . . . . . . . . . . . . . 20 75 10. Privacy Considerations . . . . . . . . . . . . . . . . . . . 22 76 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 24 77 12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 24 78 12.1. Acknowledgments from RFC 3709 . . . . . . . . . . . . . 24 79 12.2. Acknowledgments from RFC 6170 . . . . . . . . . . . . . 25 80 12.3. Additional Acknowledgments . . . . . . . . . . . . . . . 25 81 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 25 82 13.1. Normative References . . . . . . . . . . . . . . . . . . 25 83 13.2. Informative References . . . . . . . . . . . . . . . . . 27 84 Appendix A. ASN.1 Modules . . . . . . . . . . . . . . . . . . . 28 85 A.1. ASN.1 Modules with 1988 Syntax . . . . . . . . . . . . . 28 86 A.2. ASN.1 Module with 2002 Syntax . . . . . . . . . . . . . . 31 87 Appendix B. Examples . . . . . . . . . . . . . . . . . . . . . . 34 88 B.1. Example from RFC 3709 . . . . . . . . . . . . . . . . . . 34 89 B.2. Issuer Logotype Example . . . . . . . . . . . . . . . . . 35 90 B.3. Embedded Image Example . . . . . . . . . . . . . . . . . 36 91 B.4. Embedded Certificate Image Example . . . . . . . . . . . 38 92 B.5. Full Certificate Example . . . . . . . . . . . . . . . . 40 93 Appendix C. Changes Since RFC 3709 and RFC 6170 . . . . . . . . 43 94 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 45 96 1. Introduction 98 This specification supplements [RFC5280], which profiles public-key 99 certificates and certificate revocation lists (CRLs) for use in the 100 Internet, and it supplements [RFC5755] which profiles attribute 101 certificates for use in the Internet. 103 This document obsoletes RFC 3709 [RFC3709] and RFC 6170 [RFC6170]. 104 Appendix C provides a summary of the changes since the publication of 105 RFC 3709 and RFC 6170. 107 The basic function of a certificate is to bind a public key to the 108 identity of an entity (the subject). From a strictly technical 109 viewpoint, this goal could be achieved by signing the identity of the 110 subject together with its public key. However, the art of Public Key 111 Infrastructure (PKI) has developed certificates far beyond this 112 functionality in order to meet the needs of modern global networks 113 and heterogeneous information technology structures. 115 Certificate users must be able to determine certificate policies, 116 appropriate key usage, assurance level, and name form constraints. 117 Before a relying party can make an informed decision whether a 118 particular certificate is trustworthy and relevant for its intended 119 usage, a certificate may be examined from several different 120 perspectives. 122 Systematic processing is necessary to determine whether a particular 123 certificate meets the predefined prerequisites for an intended usage. 124 Much of the information contained in certificates is appropriate and 125 effective for machine processing; however, this information is not 126 suitable for a corresponding human trust and recognition process. 128 Humans prefer to structure information into categories and symbols. 129 Most humans associate complex structures of reality with easily 130 recognizable logotypes and marks. Humans tend to trust things that 131 they recognize from previous experiences. Humans may examine 132 information to confirm their initial reaction. Very few consumers 133 actually read all terms and conditions they agree to in accepting a 134 service, rather they commonly act on trust derived from previous 135 experience and recognition. 137 A big part of this process is branding. Service providers and 138 product vendors invest a lot of money and resources into creating a 139 strong relation between positive user experiences and easily 140 recognizable trademarks, servicemarks, and logotypes. 142 Branding is also pervasive in identification instruments, including 143 identification cards, passports, driver's licenses, credit cards, 144 gasoline cards, and loyalty cards. Identification instruments are 145 intended to identify the holder as a particular person or as a member 146 of the community. The community may represent the subscribers of a 147 service or any other group. Identification instruments, in physical 148 form, commonly use logotypes and symbols, solely to enhance human 149 recognition and trust in the identification instrument itself. They 150 may also include a registered trademark to allow legal recourse for 151 unauthorized duplication. 153 Since certificates play an equivalent role in electronic exchanges, 154 we examine the inclusion of logotypes in certificates. We consider 155 certificate-based identification and certificate selection. 157 1.1. Certificate-based Identification 159 The need for human recognition depends on the manner in which 160 certificates are used and whether certificates need to be visible to 161 human users. If certificates are to be used in open environments and 162 in applications that bring the user in conscious contact with the 163 result of a certificate-based identification process, then human 164 recognition is highly relevant, and may be a necessity. 166 Examples of such applications include: 168 * Web server identification where a user identifies the owner of the 169 web site. 171 * Peer e-mail exchange in B2B, B2C, and private communications. 173 * Exchange of medical records, and system for medical prescriptions. 175 * Unstructured e-business applications (i.e., non-EDI applications). 177 * Wireless client authenticating to a service provider. 179 Most applications provide the human user with an opportunity to view 180 the results of a successful certificate-based identification process. 181 When the user takes the steps necessary to view these results, the 182 user is presented with a view of a certificate. This solution has 183 two major problems. First, the function to view a certificate is 184 often rather hard to find for a non-technical user. Second, the 185 presentation of the certificate is too technical and is not user 186 friendly. It contains no graphic symbols or logotypes to enhance 187 human recognition. 189 Many investigations have shown that users of today's applications do 190 not take the steps necessary to view certificates. This could be due 191 to poor user interfaces. Further, many applications are structured 192 to hide certificates from users. The application designers do not 193 want to expose certificates to users at all. 195 1.2. Selection of Certificates 197 One situation where software applications must expose human users to 198 certificates is when the user must select a single certificate from a 199 portfolio of certificates. In some cases, the software application 200 can use information within the certificates to filter the list for 201 suitability; however, the user must be queried if more than one 202 certificate is suitable. The human user must select one of them. 204 This situation is comparable to a person selecting a suitable plastic 205 card from his wallet. In this situation, substantial assistance is 206 provided by card color, location, and branding. 208 In order to provide similar support for certificate selection, the 209 users need tools to easily recognize and distinguish certificates. 210 Introduction of logotypes into certificates provides the necessary 211 graphic. 213 1.3. Combination of Verification Techniques 215 The use of logotypes will, in many cases, affect the users decision 216 to trust and use a certificate. It is therefore important that there 217 be a distinct and clear architectural and functional distinction 218 between the processes and objectives of the automated certificate 219 verification and human recognition. 221 Since logotypes are only aimed for human interpretation and contain 222 data that is inappropriate for computer based verification schemes, 223 the logotype extension MUST NOT be an active component in automated 224 certification path validation as specified in Section 6 of [RFC5280]. 226 Automated certification path verification determines whether the end- 227 entity certificate can be verified according to defined policy. The 228 algorithm for this verification is specified in [RFC5280]. 230 The automated processing provides assurance that the certificate is 231 valid. It does not indicate whether the subject is entitled to any 232 particular information, or whether the subject ought to be trusted to 233 perform a particular service. These are authorization decisions. 234 Automatic processing will make some authorization decisions, but 235 others, depending on the application context, involve the human user. 237 In some situations, where automated procedures have failed to 238 establish the suitability of the certificate to the task, the human 239 user is the final arbitrator of the post certificate verification 240 authorization decisions. In the end, the human will decide whether 241 or not to accept an executable email attachment, to release personal 242 information, or follow the instructions displayed by a web browser. 243 This decision will often be based on recognition and previous 244 experience. 246 The distinction between systematic processing and human processing is 247 rather straightforward. They can be complementary. While the 248 systematic process is focused on certification path construction and 249 verification, the human acceptance process is focused on recognition 250 and related previous experience. 252 There are some situations where systematic processing and human 253 processing interfere with each other. These issues are discussed in 254 the Section 9. 256 1.4. Terminology 258 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 259 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 260 "OPTIONAL" in this document are to be interpreted as described in 261 BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all 262 capitals, as shown here. 264 2. Different Types of Logotypes in Certificates 266 This specification defines the inclusion of three standard logotype 267 types: 269 * Community logotype 271 * Issuer organization logotype 273 * Subject organization logotype 275 The community logotype is the general mark for a community. It 276 identifies a service concept for entity identification and 277 certificate issuance. Many issuers may use a community logotype to 278 co-brand with a global community in order to gain global recognition 279 of its local service provision. This type of community branding is 280 very common in the credit card business, where local independent card 281 issuers include a globally recognized brand (such as VISA and 282 MasterCard). Certificate issuers may include more than one community 283 logotype to indicate participation in more than one global community. 285 Issuer organization logotype is a logotype representing the 286 organization identified as part of the issuer name in the 287 certificate. 289 Subject organization logotype is a logotype representing the 290 organization identified in the subject name in the certificate. 292 In addition to the standard logotype types, this specification 293 accommodates inclusion of other logotype types where each class of 294 logotype is defined by an object identifier. The object identifier 295 can be either locally defined or an identifier defined in Section 4.4 296 of this document. 298 3. Logotype Data 300 This specification defines two types of logotype data: image data and 301 audio data. Implementations MUST support image data; however, 302 support for audio data is OPTIONAL. 304 Image and audio data for logotypes can be remote by including a URI 305 that identifies the location to the logotype data and a one-way hash 306 of the referenced data in the certificate. The privacy-related 307 properties for remote logotype data depend on four parties: the 308 certificate relying parties that use the information in the 309 certificate extension to fetch the logotype data, the certificate 310 issuers that populate the certificate extension, certificate 311 subscribers that request certificates that include the certificate 312 extension, and server operators that provides the logotype data. 314 Alternatively, embedding the logotype data in the certificate with 315 direct addressing (as defined in Section 4.3) provides improved 316 privacy properties and depends upon fewer parties. However, this 317 approach can significantly increase the size of the certificate. 319 Several image objects, representing the same visual content in 320 different formats, sizes, and color palates, may represent each 321 logotype image. At least one of the image objects representing a 322 logotype SHOULD contain an image with a width between of 60 pixels 323 and 200 pixels and a height between 45 pixels and 150 pixels. 325 Several instances of audio data may further represent the same audio 326 sequence in different formats, resolutions, and languages. At least 327 one of the audio objects representing a logotype SHOULD provide text- 328 based audio data suitable for processing by text-to-speech software. 330 A typical use of text based audio data is inclusion in web 331 applications where the audio text is placed as the "alt" atttribute 332 value of an html image (img) element and the language value obtained 333 from LogotypeAudioInfo is included as the "lang" attribute of that 334 image. 336 If a logotype of a certain type (as defined in Section 2) is 337 represented by more than one image object, then each image objects 338 MUST contain variants of roughly the same visual content. Likewise, 339 if a logotype of a certain type is represented by more than one audio 340 object, then the audio objects MUST contain variants of the same 341 audio information. A spoken message in different languages is 342 considered a variation of the same audio information. Compliant 343 applications MUST NOT display more than one of the image objects and 344 MUST NOT play more than one of the audio object for any logotype type 345 (see Section 2) at the same time. 347 A client MAY simultaneously display multiple logotypes of different 348 logotype types. For example, it may display one subject organization 349 logotype while also displaying a community logotype, but it MUST NOT 350 display multiple image variants of the same community logotype. 352 Each logotype present in a certificate MUST be represented by at 353 least one image data object. 355 Client applications SHOULD enhance processing and off-line 356 functionality by caching logotype data. 358 4. Logotype Extension 360 This section specifies the syntax and semantics of the logotype 361 certificate extension. 363 4.1. Extension Format 365 The logotype extension MAY be included in public key certificates 366 [RFC5280] or attribute certificates [RFC5755]. The logotype 367 extension MUST be identified by the following object identifier: 369 id-pe-logotype OBJECT IDENTIFIER ::= 370 { iso(1) identified-organization(3) dod(6) internet(1) 371 security(5) mechanisms(5) pkix(7) id-pe(1) 12 } 373 This extension MUST NOT be marked critical. 375 Logotype data may be referenced through either direct or indirect 376 addressing. Client applications SHOULD support both direct and 377 indirect addressing. Certificate issuing applications MUST support 378 direct addressing, and certificate issuing applications SHOULD 379 support indirect addressing. 381 The direct addressing includes information about each logotype in the 382 certificate, and URIs point to the image and audio data object. 383 Direct addressing supports cases where just one or a few alternative 384 images and audio objects are referenced. 386 The indirect addressing includes one reference to an external hashed 387 data structure that contains information on the type, content, and 388 location of each image and audio object. Indirect addressing 389 supports cases where each logotype is represented by many alternative 390 audio or image objects. 392 Both direct and indirect addressing accommodate alternative URIs to 393 obtain exactly the same logotype data. This opportunity for 394 replication is intended to improve availability. Therefore, if a 395 client is unable to fetch the item from one URI, the client SHOULD 396 try another URI in the sequence. All direct addressing URIs SHOULD 397 use either the HTTP scheme (http://...) or the HTTPS scheme 398 (https://...) or the DATA scheme (data://...) [RFC3986]. However, 399 the "data" URI scheme MUST NOT be used with the indirect addressing. 400 Clients MUST support retrieval of referenced LogoTypeData with the 401 HTTP [I-D.ietf-httpbis-semantics] and the HTTP with TLS [RFC8446], or 402 subsequent versions of these protocols. Client applications SHOULD 403 also support the "data" URI scheme [RFC2397] for direct addressing 404 with embedded logotype data within the extension. 406 The logotype extension MUST have the following syntax: 408 LogotypeExtn ::= SEQUENCE { 409 communityLogos [0] EXPLICIT SEQUENCE OF LogotypeInfo OPTIONAL, 410 issuerLogo [1] EXPLICIT LogotypeInfo OPTIONAL, 411 subjectLogo [2] EXPLICIT LogotypeInfo OPTIONAL, 412 otherLogos [3] EXPLICIT SEQUENCE OF OtherLogotypeInfo 413 OPTIONAL } 415 LogotypeInfo ::= CHOICE { 416 direct [0] LogotypeData, 417 indirect [1] LogotypeReference } 419 LogotypeData ::= SEQUENCE { 420 image SEQUENCE OF LogotypeImage OPTIONAL, 421 audio [1] SEQUENCE OF LogotypeAudio OPTIONAL } 423 LogotypeImage ::= SEQUENCE { 424 imageDetails LogotypeDetails, 425 imageInfo LogotypeImageInfo OPTIONAL } 427 LogotypeAudio ::= SEQUENCE { 428 audioDetails LogotypeDetails, 429 audioInfo LogotypeAudioInfo OPTIONAL } 431 LogotypeDetails ::= SEQUENCE { 432 mediaType IA5String, -- MIME media type name and optional 433 -- parameters 434 logotypeHash SEQUENCE SIZE (1..MAX) OF HashAlgAndValue, 435 logotypeURI SEQUENCE SIZE (1..MAX) OF IA5String } 437 LogotypeImageInfo ::= SEQUENCE { 438 type [0] LogotypeImageType DEFAULT color, 439 fileSize INTEGER, -- In octets, 0=unspecified 440 xSize INTEGER, -- Horizontal size in pixels 441 ySize INTEGER, -- Vertical size in pixels 442 resolution LogotypeImageResolution OPTIONAL, 443 language [4] IA5String OPTIONAL } -- RFC 5646 Language Tag 445 LogotypeImageType ::= INTEGER { grayScale(0), color(1) } 447 LogotypeImageResolution ::= CHOICE { 448 numBits [1] INTEGER, -- Resolution in bits per pixel 449 tableSize [2] INTEGER } -- Number of colors or grey tones 451 LogotypeAudioInfo ::= SEQUENCE { 452 fileSize INTEGER, -- In octets, 0=unspecified 453 playTime INTEGER, -- In milliseconds, 0=unspecified 454 channels INTEGER, -- 0=unspecified, 455 -- 1=mono, 2=stereo, 4=quad 456 sampleRate [3] INTEGER OPTIONAL, -- Samples per second 457 language [4] IA5String OPTIONAL } -- RFC 5646 Language Tag 459 OtherLogotypeInfo ::= SEQUENCE { 460 logotypeType OBJECT IDENTIFIER, 461 info LogotypeInfo } 463 LogotypeReference ::= SEQUENCE { 464 refStructHash SEQUENCE SIZE (1..MAX) OF HashAlgAndValue, 465 refStructURI SEQUENCE SIZE (1..MAX) OF IA5String } 466 -- Places to get the same LogotypeData 467 -- image or audio object 469 HashAlgAndValue ::= SEQUENCE { 470 hashAlg AlgorithmIdentifier, 471 hashValue OCTET STRING } 473 When using indirect addressing, the URI (refStructURI) pointing to 474 the external data structure MUST point to a resource that contains 475 the DER-encoded data with the syntax LogotypeData. 477 At least one of the optional elements in the LogotypeExtn structure 478 MUST be present. 480 When using direct addressing, at least one of the optional elements 481 in the LogotypeData structure MUST be present. 483 The LogotypeReference and LogotypeDetails structures explicitly 484 identify one or more one-way hash functions employed to authenticate 485 referenced image or audio objects. CAs MUST include a hash value for 486 each referenced object, calculated on the whole object. CAs SHOULD 487 include a hash value that computed with the one-way hash function 488 associated with the certificate signature, and CAs MAY include other 489 hash values. Clients MUST compute a one-way hash value using one of 490 the identified functions, and clients MUST discard the logotype data 491 if the computed hash value does not match the hash value in the 492 certificate extension. 494 A MIME type is used to specify the format of the image or audio 495 object containing the logotype data. The mediaType field MUST 496 contain a string that is constructed according to the ABNF [RFC5234] 497 provided in Section 4.2 of [RFC6838]. MIME types MAY include 498 parameters. 500 Image format requirements are specified in Section 7, and audio 501 format requirements are specified in Section 8. 503 When language is specified, the language tag MUST use the [RFC5646] 504 syntax. 506 Logotype types defined in this specification are: 508 Community Logotype: If communityLogos is present, the logotypes 509 MUST represent one or more communities with which the certificate 510 issuer is affiliated. The communityLogos MAY be present in an end 511 entity certificate, a CA certificate, or an attribute certificate. 512 The communityLogos contains a sequence of Community Logotypes, 513 each representing a different community. If more than one 514 Community logotype is present, they MUST be placed in order of 515 preferred appearance. Some clients MAY choose to display a subset 516 of the present community logos; therefore the placement within the 517 sequence aids the client selection. The most preferred logotype 518 MUST be first in the sequence, and the least preferred logotype 519 MUST be last in the sequence. 521 Issuer Organization Logotype: If issuerLogo is present, the 522 logotype MUST represent the issuer's organization. The logotype 523 MUST be consistent with, and require the presence of, an 524 organization name stored in the organization attribute in the 525 issuer field (for either a public key certificate or attribute 526 certificate). The issuerLogo MAY be present in an end entity 527 certificate, a CA certificate, or an attribute certificate. 529 Subject Organization Logotype: If subjectLogo is present, the 530 logotype MUST represent the subject's organization. The logotype 531 MUST be consistent with, and require the presence of, an 532 organization name stored in the organization attribute in the 533 subject field (for either a public key certificate or attribute 534 certificate). The subjectLogo MAY be present in an end entity 535 certificate, a CA certificate, or an attribute certificate. 537 The relationship between the subject organization and the subject 538 organization logotype, and the relationship between the issuer and 539 either the issuer organization logotype or the community logotype, 540 are relationships asserted by the issuer. The policies and practices 541 employed by the issuer to check subject organization logotypes or 542 claims its issuer and community logotypes is outside the scope of 543 this document. 545 4.2. Conventions for LogotypeImageInfo 547 When the optional LogotypeImageInfo is included with a logotype 548 image, the parameters MUST be used with the following semantics and 549 restrictions. 551 The xSize and ySize fields represent the recommended display size for 552 the logotype image. When a value of 0 (zero) is present, no 553 recommended display size is specified. When non-zero values are 554 present and these values differ from corresponding size values in the 555 referenced image object, then the referenced image SHOULD be scaled 556 to fit within the size parameters of LogotypeImageInfo, while 557 preserving the x and y ratio. 559 The resolution field is redundant for all logotype image formats 560 listed in Section 7. The optional resolution field SHOULD be omitted 561 when the image format already contains this information. 563 4.3. Embedded Images 565 If the logotype image is provided through direct addressing, then the 566 image MAY be stored within the logotype certificate extension using 567 the "data" scheme [RFC2397]. The syntax of the "data" URI scheme 568 defined is included here for convenience: 570 dataurl := "data:" [ mediatype ] [ ";base64" ] "," data 571 mediatype := [ type "/" subtype ] *( ";" parameter ) 572 data := *urlchar 573 parameter := attribute "=" value 575 When including the image data in the logotype extension using the 576 "data" URI scheme, the following conventions apply: 578 * The value of mediaType in LogotypeDetails MUST be identical to the 579 media type value in the "data" URL. 581 * The hash of the image MUST be included in logotypeHash and MUST be 582 calculated over the same data as it would have been, had the image 583 been referenced through a link to an external resource. 585 NOTE: As the "data" URI scheme is processed as a data source rather 586 than as a URL, the image data is typically not limited by any URL 587 length limit settings that otherwise apply to URLs in general. 589 NOTE: Implementations need to be cautious about the size of images 590 included in a certificate in order to ensure that the size of the 591 certificate does not prevent the certificate from being used as 592 intended. 594 4.4. Other Logotypes 596 Logotypes identified by otherLogos (as defined in Section 4.1) can be 597 used to enhance the display of logotypes and marks that represent 598 partners, products, services, or any other characteristic associated 599 with the certificate or its intended application environment when the 600 standard logotype types are insufficient. 602 The conditions and contexts of the intended use of these logotypes 603 are defined at the discretion of the local client application. 605 Three other logotype types are defined in the follow subsections. 607 4.4.1. Loyalty Logotype 609 When a loyalty logotype appears in the otherLogos, it MUST be 610 identified by the id-logo-loyalty object identifier. 612 id-logo OBJECT IDENTIFIER ::= { id-pkix 20 } 614 id-logo-loyalty OBJECT IDENTIFIER ::= { id-logo 1 } 616 A loyalty logotype, if present, MUST contain a logotype associated 617 with a loyalty program related to the certificate or its use. The 618 relation between the certificate and the identified loyalty program 619 is beyond the scope of this document. The logotype extension MAY 620 contain more than one Loyalty logotype. 622 If more than one loyalty logotype is present, they MUST be placed in 623 order of preferred appearance. Some clients MAY choose to display a 624 subset of the present loyalty logotype data; therefore the placement 625 within the sequence aids the client selection. The most preferred 626 loyalty logotype data MUST be first in the sequence, and the least 627 preferred loyalty logotype data MUST be last in the sequence. 629 4.4.2. Certificate Background Logotype 631 When a certificate background logotype appears in the otherLogos, it 632 MUST be identified by the id-logo-background object identifier. 634 id-logo-background OBJECT IDENTIFIER ::= { id-logo 2 } 636 The certificate background logotype, if present, MUST contain a 637 graphical image intended as a background image for the certificate, 638 and/or a general audio sequence for the certificate. The background 639 image MUST allow black text to be clearly read when placed on top of 640 the background image. The logotype extension MUST NOT contain more 641 than one certificate background logotype. 643 4.4.3. Certificate Image Logotype 645 When a certificate image logotype appears in the otherLogos, it MUST 646 be identified by the id-logo-certImage object identifier. 648 id-logo-certImage OBJECT IDENTIFIER ::= { id-logo 3 } 650 The certificate image logotype, if present, aids human interpretation 651 of a certificate by providing meaningful visual information to the 652 user interface (UI). The logotype extension MUST NOT contain more 653 than one certificate image logotype. 655 Typical situations when a human needs to examine the visual 656 representation of a certificate are: 658 * A person establishes a secured channel with an authenticated 659 service. The person needs to determine the identity of the 660 service based on the authenticated credentials. 662 * A person validates the signature on critical information, such as 663 signed executable code, and needs to determine the identity of the 664 signer based on the signer's certificate. 666 * A person is required to select an appropriate certificate to be 667 used when authenticating to a service or Identity Management 668 infrastructure. The person needs to see the available 669 certificates in order to distinguish between them in the selection 670 process. 672 The display of certificate information to humans is challenging due 673 to lack of well-defined semantics for critical identity attributes. 674 Unless the application has out-of-band knowledge about a particular 675 certificate, the application will not know the exact nature of the 676 data stored in common identification attributes such as serialNumber, 677 organizationName, country, etc. Consequently, the application can 678 display the actual data, but faces the problem of labeling that data 679 in the UI and informing the human about the exact nature (semantics) 680 of that data. It is also challenging for the application to 681 determine which identification attributes are important to display 682 and how to organize them in a logical order. 684 When present, the certificate image MUST be a complete visual 685 representation of the certificate. This means that the display of 686 this certificate image represents all information about the 687 certificate that the issuer subjectively defines as relevant to show 688 to a typical human user within the typical intended use of the 689 certificate, giving adequate information about at least the following 690 three aspects of the certificate: 692 * Certificate Context 694 * Certificate Issuer 696 * Certificate Subject 698 Certificate Context information is visual marks and/or textual 699 information that helps the typical user to understand the typical 700 usage and/or purpose of the certificate. 702 It is up to the issuer to decide what information -- in the form of 703 text, graphical symbols, and elements -- represents a complete visual 704 representation of the certificate. However, the visual 705 representation of Certificate Subject and Certificate Issuer 706 information from the certificate MUST have the same meaning as the 707 textual representation of that information in the certificate itself. 709 Applications providing a Graphical User Interface (GUI) to the 710 certificate user MAY present a certificate image as the only visual 711 representation of a certificate; however, the certificate user SHOULD 712 be able to easily obtain the details of the certificate content. 714 5. Type of Certificates 716 Logotypes MAY be included in public key certificates and attribute 717 certificates at the discretion of the certificate issuer; however, 718 the relying party MUST NOT use the logotypes as part of certification 719 path validation or automated trust decision. The sole purpose of 720 logotypes is to enhance the display of a particular certificate, 721 regardless of its position in a certification path. 723 6. Use in Clients 725 All PKI implementations require relying party software to have some 726 mechanism to determine whether a trusted CA issues a particular 727 certificate. This is an issue for certification path validation, 728 including consistent policy and name checking. 730 After a certification path is successfully validated, the replying 731 party trusts the information that the CA includes in the certificate, 732 including any certificate extensions. The client software can choose 733 to make use of such information, or the client software can ignore 734 it. If the client is unable to support a provided logotype, the 735 client MUST NOT report an error, rather the client MUST behave as 736 though no logotype extension was included in the certificate. 737 Current standards do not provide any mechanism for cross-certifying 738 CAs to constrain subordinate CAs from including private extensions 739 (see Section 9). 741 Consequently, if relying party software accepts a CA, then it should 742 be prepared to (unquestioningly) display the associated logotypes to 743 its human user, given that it is configured to do so. Information 744 about the logotypes is provided so that the replying party software 745 can select the one that will best meet the needs of the human user. 746 This choice depends on the abilities of the human user, as well as 747 the capabilities of the platform on which the replaying party 748 software is running. If none of the provided logotypes meets the 749 needs of the human user or matches the capabilities of the platform, 750 then the logotypes can be ignored. 752 A client MAY, subject to local policy, choose to display none, one, 753 or any number of the logotypes in the logotype extension. In many 754 cases, a client will be used in an environment with a good network 755 connection and also used in an environment with little or no network 756 connectivity. For example, a laptop computer can be docked with a 757 high-speed LAN connection, or it can be disconnected from the network 758 altogether. In recognition of this situation, the client MUST 759 include the ability to disable the fetching of logotypes. However, 760 locally cached logotypes can still be displayed when the user 761 disables the fetching of additional logotypes. 763 A client MAY, subject to local policy, choose any combination of 764 audio and image presentation for each logotype. That is, the client 765 MAY display an image with or without playing a sound, and it MAY play 766 a sound with or without displaying an image. A client MUST NOT play 767 more than one logotype audio sequence at the same time. 769 The logotype is to be displayed in conjunction with other identity 770 information contained in the certificate. The logotype is not a 771 replacement for this identity information. 773 Care is needed when designing replying party software to ensure that 774 an appropriate context of logotype information is provided. This is 775 especially difficult with audio logotypes. It is important that the 776 human user be able to recognize the context of the logotype, even if 777 other audio streams are being played. 779 If the relying party software is unable to successfully validate a 780 particular certificate, then it MUST NOT display any logotype data 781 associated with that certificate. 783 7. Image Formats 785 Animated images SHOULD NOT be used. 787 The following table lists many commons image formats and their 788 corresponding MIME type. The table also indicates the support 789 requirements these image formats. The filename extensions commonly 790 used for each of these formats is also provided. Implementations MAY 791 support other image formats. 793 +========+==============+=========+============+============+ 794 | Format | MIME Type | .ext | References | Implement? | 795 +========+==============+=========+============+============+ 796 | JPEG | image/jpeg | .jpg | [JPEG] | MUST | 797 | | | .jpeg | [RFC2046] | support | 798 +--------+--------------+---------+------------+------------+ 799 | GIF | image/gif | .gif | [GIF] | MUST | 800 | | | | [RFC2046] | support | 801 +--------+--------------+---------+------------+------------+ 802 | SVG | image/ | .svg | [SVGT] | SHOULD | 803 | | svg+xml | | [SVGR] | support | 804 +--------+--------------+---------+------------+------------+ 805 | SVG + | image/ | .svgz | [SVGT] | MUST | 806 | GZIP | svg+xml+gzip | .svg.gz | [SVGZR] | support | 807 +--------+--------------+---------+------------+------------+ 808 | PNG | image/png | .png | [ISO15948] | SHOULD | 809 | | | | [PNGR] | support | 810 +--------+--------------+---------+------------+------------+ 811 | PDF | application/ | .pdf | [ISO32000] | MAY | 812 | | pdf | | [ISO19005] | support | 813 | | | | [RFC8118] | | 814 +--------+--------------+---------+------------+------------+ 816 Table 1: Image Formats 818 NOTE: The image/svg+xml-compressed media type is widely implemented, 819 but it has not yet been registered with IANA. 821 When a Scalable Vector Graphics (SVG) image is used, whether the 822 image is compressed or not, the SVG Tiny profile [SVGT] MUST be 823 followed, with these additional restrictions: 825 * The SVG image MUST NOT contain any Internationalized Resource 826 Identifier (IRI) references to information stored outside of the 827 SVG image of type B, C, or D, according to Section 14.1.4 of 828 [SVGT]. 830 * The SVG image MUST NOT contain any 'script' element, according to 831 Section 15.2 of [SVGT]. 833 * The XML structure in the SVG file MUST use linefeed (0x0A) as the 834 end-of-line (EOL) character when calculating a hash over the SVG 835 image. 837 When a GZIP-compressed SVG image is fetched with HTTP, the client 838 will receive response that includes these headers: 840 Content-Type: image/svg+xml 841 Content-Encoding: gzip 843 In this case, the octet stream of type image/svg+xml is compressed 844 with GZIP [RFC1952] as specified in [SVGR]. 846 When a uncompressed SVG image is fetched with HTTP, the client will 847 receive response with the same Content-Type header, but no Content- 848 Encoding header. 850 Whether the SVG image is GZIP-compressed or uncompressed, the hash 851 value for the SVG image is calculated over the uncompressed SVG 852 content with canonicalized EOL characters as specified above. 854 When a SVG image is embedded in the certificate extension using the 855 "data" URL scheme, the SVG image data MUST be provided in GZIP- 856 compressed form, and the XML structure, prior to compression, SHOULD 857 use linefeed (0x0A) as the end-of-line (EOL) character. 859 When a bitmapped image is used, the PNG [ISO15948] format SHOULD be 860 used. 862 When a Portable Document Format (PDF) document according to 863 [ISO32000] is used, it MUST also be formatted according to the 864 profile PDF/A [ISO19005]. 866 8. Audio Formats 868 Implementations that support audio MUST support the MP3 audio format 869 [MP3] with a MIME type of "audio/mpeg" [RFC3003]. Implementations 870 SHOULD support text-based audio data with a MIME type of "text/ 871 plain;charset=UTF-8". Implementations MAY support other audio 872 formats. 874 Text-based audio data using the MIME type of "text/plain;charset=UTF- 875 8" is intended to be used by text-to-speech software. When this 876 audio type is used, the following requirements apply: 878 * LogotypeAudioInfo MUST be present and specify the language of the 879 text. 881 * The fileSize, playTime, and channels elements of LogotypeAudioInfo 882 MUST have the value of 0. 884 * The sampleRate element of LogotypeAudioInfo MUST be absent. 886 9. Security Considerations 888 Implementations that simultaneously display multiple logotype types 889 (subject organization, issuer, community, or other), MUST ensure that 890 there is no ambiguity as to the binding between the image and the 891 type of logotype that the image represents. "Logotype type" is 892 defined in Section 1.1, and it refers to the type of entity or 893 affiliation represented by the logotype, not the of binary format if 894 the image or audio. 896 Logotypes are very difficult to securely and accurately define. 897 Names are also difficult in this regard, but logotypes are even 898 worse. It is quite difficult to specify what is, and what is not, a 899 legitimate logotype of an organization. There is an entire legal 900 structure around this issue, and it will not be repeated here. 901 However, issuers should be aware of the implications of including 902 images associated with a trademark or servicemark before doing so. 903 As logotypes can be difficult (and sometimes expensive) to verify, 904 the possibility of errors related to assigning wrong logotypes to 905 organizations is increased. 907 This is not a new issue for electronic identification instruments. 908 It is already dealt with in a number of similar situations in the 909 physical world, including physical employee identification cards. In 910 addition, there are situations where identification of logotypes is 911 rather simple and straightforward, such as logotypes for well-known 912 industries and institutes. These issues should not stop those 913 service providers who want to issue logotypes from doing so, where 914 relevant. 916 It is impossible to prevent fraudulent creation of certificates by 917 dishonest or badly performing issuers, containing names and logotypes 918 that the issuer has no claim to or has failed to check correctly. 919 Such certificates could be created in an attempt to socially engineer 920 a user into accepting a certificate. The premise used for the 921 logotype work is thus that logotype graphics in a certificate are 922 trusted only if the certificate is successfully validated within a 923 valid path. It is thus imperative that the representation of any 924 certificate that fails to validate is not enhanced in any way by 925 using the logotype data. 927 This underlines the necessity for CAs to provide reliable services, 928 and the relying party's responsibility and need to carefully select 929 which CAs are trusted to provide public key certificates. 931 This also underlines the general necessity for relying parties to use 932 up-to-date software libraries to render or dereference data from 933 external sources, including logotype data in certificates, to 934 minimize risks related to processing potentially malicious data 935 before it has been adequately verified and validated. 937 Referenced image objects are hashed in order to bind the image to the 938 signature of the certificate. Some image types, such as SVG, allow 939 part of the image to be collected from an external source by 940 incorporating a reference to an external file that contains the 941 image. If this feature were used within a logotype image, the hash 942 of the image would only cover the URI reference to the external image 943 file, but not the referenced image data. Clients SHOULD verify that 944 SVG images meet all requirements listed in Section 7 and reject 945 images that contain references to external data. 947 CAs issuing certificates with embedded logotype images should be 948 cautious when accepting graphics from the certificate requestor for 949 inclusion in the certificate if the hash algorithm used to sign the 950 certificate is vulnerable to collision attacks. In such a case, the 951 accepted image may contain data that could help an attacker to obtain 952 colliding certificates with identical certificate signatures. 954 Certification paths may also impose name constraints that are 955 systematically checked during certification path processing, which, 956 in theory, may be circumvented by logotypes. 958 Certificate path processing as defined in [RFC5280] does not 959 constrain the inclusion of logotype data in certificates. A parent 960 CA can constrain certification path validation such that subordinate 961 CAs cannot issue valid certificates to end-entities outside a limited 962 name space or outside specific certificate polices. A malicious CA 963 can comply with these name and policy requirements and still include 964 inappropriate logotypes in the certificates that it issues. These 965 certificates will pass the certification path validation algorithm, 966 which means the client will trust the logotypes in the certificates. 967 Since there is no technical mechanism to prevent or control 968 subordinate CAs from including the logotype extension or its 969 contents, where appropriate, a parent CA could employ a legal 970 agreement to impose a suitable restriction on the subordinate CA. 971 This situation is not unique to the logotype extension. 973 When a relying party fetches remote logotype data, a mismatch between 974 the media type provided in the mediaType field of the LogotypeDetails 975 and the Content-Type HTTP header of the retrieved object MUST be 976 treated as a failure and the fetched logotype data should not be 977 presented to the user. However, if more than one location for the 978 remote logotype data is provided in the certificate extension, the 979 relying party MAY try to fetch the remote logotype data from an 980 alternate location to resolve the failure. 982 When a subscriber requests the inclusion of remote logotype data in a 983 certificate, the CA cannot be sure that any logotype data will be 984 available at the provided URI for the entire validity period of the 985 certificate. To mitigate this concern, the CA may provide the 986 logotype data from a server under its control, rather than a 987 subscriber-controlled server. 989 The controls available to a parent CA to protect itself from rogue 990 subordinate CAs are non-technical. They include: 992 * Contractual agreements of suitable behavior, including terms of 993 liability in case of material breach. 995 * Control mechanisms and procedures to monitor and follow the 996 behavior of subordinate CAs, including Certificate Transparency 997 [RFC9162]. 999 * Use of certificate policies to declare an assurance level of 1000 logotype data, as well as to guide applications on how to treat 1001 and display logotypes. 1003 * Use of revocation functions to revoke any misbehaving CA. 1005 There is not a simple, straightforward, and absolute technical 1006 solution. Rather, involved parties must settle some aspects of PKI 1007 outside the scope of technical controls. As such, issuers need to 1008 clearly identify and communicate the associated risks. 1010 10. Privacy Considerations 1012 Certificates are commonly public objects, so the inclusion of 1013 privacy-sensitive information in certificates should be avoided. The 1014 more information that is included in a certificate, the greater the 1015 likelihood that the certificate will reveal privacy-sensitive 1016 information. The inclusion of logotype data needs to be considered 1017 in this context. 1019 Logotype data might be fetched from a server when it is needed. By 1020 watching activity on the network, an observer can determine which 1021 clients are making use of certificates that contain particular 1022 logotype data. Since clients are expected to locally cache logotype 1023 data, network traffic to the server containing the logotype data will 1024 not be generated every time the certificate is used. Further, when 1025 logotype data is not cached, activity on the network would reveal 1026 certificate usage frequency. Even when logotype data is cached, 1027 regardless of whether direct or indirect addressing is employed, 1028 network traffic monitoring could reveal when logotype data is fetched 1029 for the first time. Implementations MAY encrypt fetches of logotype 1030 data using HTTPS and pad them to a common size to reduce visibility 1031 into the data that is being fetched. Likewise, servers MAY reduce 1032 visibility into the data that is being returned by encrypting with 1033 HTTPS and padding to a few common sizes. 1035 Similarly, when fetching logotype data from a server, the server 1036 operator can determine which clients are making use of certificates 1037 that contain particular logotype data. As above, locally caching 1038 logotype data will eliminate the need to fetch the logotype data each 1039 time the certificate is used, and lack of caching would reveal usage 1040 frequency. Even when implementations cache logotype data is cached, 1041 regardless of whether direct or indirect addressing is employed, the 1042 server operator could observe when logotype data is fetched for the 1043 first time. 1045 When the "data" URI scheme is used with direct addressing, there is 1046 no network traffic to fetch logotype data, which avoids the 1047 observations of network traffic or server operations described above. 1048 To obtain this benefit, the certificate will be larger than one that 1049 contains a URL. Due to the improved privacy posture, the "data" URI 1050 scheme with direct addressing will be the only one that is supported 1051 by some CAs. Privacy-aware certificate subscribers MAY wish to 1052 insist on their logotype data being embedded in the certificate with 1053 the "data" URI scheme with direct addressing. 1055 In cases where logotype data is cached by the relying party, the 1056 cache index should include the hash values of the associated logotype 1057 data with the goal of fetching the logotype data only once, even when 1058 it is referenced by multiple URIs. The index should include hash 1059 values for all supported hash algorithms. The cached data should 1060 include the media type as well as the logotype data. Implementations 1061 should give preference to logotype data that is already in the cache 1062 when multiple alternatives are offered in the LogotypeExtn 1063 certificate extension. 1065 When the "data" URI scheme is used, the relying party MAY add the 1066 embedded logotype data to the local cache, which could avoid the need 1067 to fetch the logotype data if it is referenced by a URL in another 1068 certificate. 1070 When fetching remote logotype data, relying parties should use the 1071 most privacy-preserving options that are available to minimize the 1072 opportunities for servers to "fingerprint" clients. For example, 1073 avoid cookies, e-tags, and client certificates. 1075 When a relying party encounters a new certificate, the lack of 1076 network traffic to fetch logotype data might indicate that a 1077 certificate with references to the same logotype data has been 1078 previously processed and cached. 1080 TLS 1.3 [RFC8446] includes the ability to encrypt the server's 1081 certificate in the TLS handshake, which helps hide the server's 1082 identity from anyone that is watching activity on the network. If 1083 the server's certificate includes remote logotype data, the client 1084 fetching that data might disclose the otherwise protected server 1085 identity. 1087 11. IANA Considerations 1089 For the new ASN.1 Module in Appendix A.2, IANA is requested to assign 1090 an object identifier (OID) for the module identifier. The OID for 1091 the module should be allocated in the "SMI Security for PKIX Module 1092 Identifier" registry (1.3.6.1.5.5.7.0). 1094 12. Acknowledgments 1096 12.1. Acknowledgments from RFC 3709 1098 This document is the result of contributions from many professionals. 1099 The authors appreciate contributions from all members of the IETF 1100 PKIX Working Group. We extend a special thanks to Al Arsenault, 1101 David Cross, Tim Polk, Russel Weiser, Terry Hayes, Alex Deacon, 1102 Andrew Hoag, Randy Sabett, Denis Pinkas, Magnus Nystrom, Ryan Hurst, 1103 and Phil Griffin for their efforts and support. 1105 Russ Housley thanks the management at RSA Laboratories, especially 1106 Burt Kaliski, who supported the development of this specification. 1107 The vast majority of the work on this specification was done while 1108 Russ was employed at RSA Laboratories. 1110 12.2. Acknowledgments from RFC 6170 1112 The authors recognize valuable contributions from members of the PKIX 1113 working group, the CA Browser Forum, and James Manger, for their 1114 review and sample data. 1116 12.3. Additional Acknowledgments 1118 Combining RFC 3709 and RFC 6170 has produced an improved 1119 specification. The authors appreciate contributions from all members 1120 of the IETF LAMPS Working Group. We extend a special thanks to 1121 Alexey Melnikov for his guidance on media types. We extend a special 1122 thanks to Corey Bonnell and Daniel Kahn Gillmor for their careful 1123 review and comments. 1125 13. References 1127 13.1. Normative References 1129 [GIF] CompuServe Incorporated, "Graphics Interchange Format", 1130 Version 89a, 31 July 1990, 1131 . 1133 [I-D.ietf-httpbis-semantics] 1134 Fielding, R. T., Nottingham, M., and J. Reschke, "HTTP 1135 Semantics", Work in Progress, Internet-Draft, draft-ietf- 1136 httpbis-semantics-19, 12 September 2021, 1137 . 1140 [ISO15948] ISO/IEC, "Information technology -- Computer graphics and 1141 image processing -- Portable Network Graphics (PNG): 1142 Functional specification", ISO/IEC 15948:2004, 2004. 1144 [JPEG] ITU-T, "Information technology -- Digital compression and 1145 coding of continuous-tone still images: JPEG File 1146 Interchange Format (JFIF)", ITU-T Recommendation T.871, 1147 ISO/IEC 10918-5:2013, May 2011. 1149 [MP3] ISO/IEC, "Information technology -- Generic coding of 1150 moving pictures and associated audio information -- Part 1151 3: Audio", ISO/IEC 13818-3:1998, 1998. 1153 [NEW-ASN1] ITU-T, "Information technology -- Abstract Syntax Notation 1154 One (ASN.1): Specification of basic notation", ITU-T 1155 Recommendation X.680, ISO/IEC 8824-1:2021, February 2021, 1156 . 1158 [RFC1952] Deutsch, P., "GZIP file format specification version 4.3", 1159 RFC 1952, DOI 10.17487/RFC1952, May 1996, 1160 . 1162 [RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail 1163 Extensions (MIME) Part Two: Media Types", RFC 2046, 1164 DOI 10.17487/RFC2046, November 1996, 1165 . 1167 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1168 Requirement Levels", BCP 14, RFC 2119, 1169 DOI 10.17487/RFC2119, March 1997, 1170 . 1172 [RFC2397] Masinter, L., "The "data" URL scheme", RFC 2397, 1173 DOI 10.17487/RFC2397, August 1998, 1174 . 1176 [RFC3003] Nilsson, M., "The audio/mpeg Media Type", RFC 3003, 1177 DOI 10.17487/RFC3003, November 2000, 1178 . 1180 [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform 1181 Resource Identifier (URI): Generic Syntax", STD 66, 1182 RFC 3986, DOI 10.17487/RFC3986, January 2005, 1183 . 1185 [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax 1186 Specifications: ABNF", STD 68, RFC 5234, 1187 DOI 10.17487/RFC5234, January 2008, 1188 . 1190 [RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., 1191 Housley, R., and W. Polk, "Internet X.509 Public Key 1192 Infrastructure Certificate and Certificate Revocation List 1193 (CRL) Profile", RFC 5280, DOI 10.17487/RFC5280, May 2008, 1194 . 1196 [RFC5646] Phillips, A., Ed. and M. Davis, Ed., "Tags for Identifying 1197 Languages", BCP 47, RFC 5646, DOI 10.17487/RFC5646, 1198 September 2009, . 1200 [RFC5755] Farrell, S., Housley, R., and S. Turner, "An Internet 1201 Attribute Certificate Profile for Authorization", 1202 RFC 5755, DOI 10.17487/RFC5755, January 2010, 1203 . 1205 [RFC6838] Freed, N., Klensin, J., and T. Hansen, "Media Type 1206 Specifications and Registration Procedures", BCP 13, 1207 RFC 6838, DOI 10.17487/RFC6838, January 2013, 1208 . 1210 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 1211 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 1212 May 2017, . 1214 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 1215 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 1216 . 1218 [SVGT] World Wide Web Consortium, "Scalable Vector Graphics (SVG) 1219 Tiny 1.2 Specification", W3C PR-SVGTiny12-20081117, 17 1220 November 2008, 1221 . 1223 13.2. Informative References 1225 [ISO19005] ISO, "Document management -- Electronic document file 1226 format for long-term preservation -- Part 1: Use of PDF 1227 1.4 (PDF/A-1)", ISO 19005-1:2005, 2005. 1229 [ISO32000] ISO, "Document management -- Portable document format -- 1230 Part 1: PDF 1.7", ISO 32000-1:2008, 2008. 1232 [OLD-ASN1] CCITT, "Specification of Abstract Syntax Notation One 1233 (ASN.1)", CCITT Recommendation X.208, November 1988, 1234 . 1236 [PNGR] World Wide Web Consortium, "Media Type Registration for 1237 image/png", 1238 . 1240 [RFC3709] Santesson, S., Housley, R., and T. Freeman, "Internet 1241 X.509 Public Key Infrastructure: Logotypes in X.509 1242 Certificates", RFC 3709, DOI 10.17487/RFC3709, February 1243 2004, . 1245 [RFC5912] Hoffman, P. and J. Schaad, "New ASN.1 Modules for the 1246 Public Key Infrastructure Using X.509 (PKIX)", RFC 5912, 1247 DOI 10.17487/RFC5912, June 2010, 1248 . 1250 [RFC6170] Santesson, S., Housley, R., Bajaj, S., and L. Rosenthol, 1251 "Internet X.509 Public Key Infrastructure -- Certificate 1252 Image", RFC 6170, DOI 10.17487/RFC6170, May 2011, 1253 . 1255 [RFC6268] Schaad, J. and S. Turner, "Additional New ASN.1 Modules 1256 for the Cryptographic Message Syntax (CMS) and the Public 1257 Key Infrastructure Using X.509 (PKIX)", RFC 6268, 1258 DOI 10.17487/RFC6268, July 2011, 1259 . 1261 [RFC8118] Hardy, M., Masinter, L., Markovic, D., Johnson, D., and M. 1262 Bailey, "The application/pdf Media Type", RFC 8118, 1263 DOI 10.17487/RFC8118, March 2017, 1264 . 1266 [RFC9162] Laurie, B., Messeri, E., and R. Stradling, "Certificate 1267 Transparency Version 2.0", RFC 9162, DOI 10.17487/RFC9162, 1268 December 2021, . 1270 [RFC9216] Gillmor, D. K., Ed., "S/MIME Example Keys and 1271 Certificates", RFC 9216, DOI 10.17487/RFC9216, April 2022, 1272 . 1274 [SVGR] World Wide Web Consortium, "Media Type Registration for 1275 image/svg+xml", . 1278 [SVGZR] "A separate MIME type for svgz files is needed", 1279 . 1281 Appendix A. ASN.1 Modules 1283 A.1. ASN.1 Modules with 1988 Syntax 1285 This appendix contains two ASN.1 modules, both using the old syntax 1286 [OLD-ASN1]. 1288 The first ASN.1 module provides the syntax for the Logotype 1289 certificate extension. Only comments have changed in the module from 1290 RFC 3709, and the IMPORTS now come from [RFC5280]. 1292 The second ASN.1 module provides the Certificate Image object 1293 identifier. The module is unchanged from RFC 6170. 1295 1296 LogotypeCertExtn 1297 { iso(1) identified-organization(3) dod(6) internet(1) 1298 security(5) mechanisms(5) pkix(7) id-mod(0) 1299 id-mod-logotype(22) } 1301 DEFINITIONS IMPLICIT TAGS ::= 1302 BEGIN 1304 IMPORTS 1305 AlgorithmIdentifier FROM PKIX1Explicit88 -- RFC 5280 1306 { iso(1) identified-organization(3) dod(6) internet(1) 1307 security(5) mechanisms(5) pkix(7) id-mod(0) 1308 id-pkix1-explicit(18) }; 1310 -- Logotype Extension OID 1312 id-pe-logotype OBJECT IDENTIFIER ::= 1313 { iso(1) identified-organization(3) dod(6) internet(1) 1314 security(5) mechanisms(5) pkix(7) id-pe(1) 12 } 1316 -- Logotype Extension Syntax 1318 LogotypeExtn ::= SEQUENCE { 1319 communityLogos [0] EXPLICIT SEQUENCE OF LogotypeInfo OPTIONAL, 1320 issuerLogo [1] EXPLICIT LogotypeInfo OPTIONAL, 1321 subjectLogo [2] EXPLICIT LogotypeInfo OPTIONAL, 1322 otherLogos [3] EXPLICIT SEQUENCE OF OtherLogotypeInfo 1323 OPTIONAL } 1325 -- Note: At least one of the OPTIONAL components MUST be present 1327 LogotypeInfo ::= CHOICE { 1328 direct [0] LogotypeData, 1329 indirect [1] LogotypeReference } 1331 LogotypeData ::= SEQUENCE { 1332 image SEQUENCE OF LogotypeImage OPTIONAL, 1333 audio [1] SEQUENCE OF LogotypeAudio OPTIONAL } 1335 -- Note: At least one of the OPTIONAL components MUST be present 1337 LogotypeImage ::= SEQUENCE { 1338 imageDetails LogotypeDetails, 1339 imageInfo LogotypeImageInfo OPTIONAL } 1341 LogotypeAudio ::= SEQUENCE { 1342 audioDetails LogotypeDetails, 1343 audioInfo LogotypeAudioInfo OPTIONAL } 1345 LogotypeDetails ::= SEQUENCE { 1346 mediaType IA5String, -- MIME media type name and optional 1347 -- parameters 1348 logotypeHash SEQUENCE SIZE (1..MAX) OF HashAlgAndValue, 1349 logotypeURI SEQUENCE SIZE (1..MAX) OF IA5String } 1351 LogotypeImageInfo ::= SEQUENCE { 1352 type [0] LogotypeImageType DEFAULT color, 1353 fileSize INTEGER, -- In octets, 0=unspecified 1354 xSize INTEGER, -- Horizontal size in pixels 1355 ySize INTEGER, -- Vertical size in pixels 1356 resolution LogotypeImageResolution OPTIONAL, 1357 language [4] IA5String OPTIONAL } -- RFC 5646 Language Tag 1359 LogotypeImageType ::= INTEGER { grayScale(0), color(1) } 1361 LogotypeImageResolution ::= CHOICE { 1362 numBits [1] INTEGER, -- Resolution in bits per pixel 1363 tableSize [2] INTEGER } -- Number of colors or grey tones 1365 LogotypeAudioInfo ::= SEQUENCE { 1366 fileSize INTEGER, -- In octets, 0=unspecified 1367 playTime INTEGER, -- In milliseconds, 0=unspecified 1368 channels INTEGER, -- 0=unspecified, 1369 -- 1=mono, 2=stereo, 4=quad 1370 sampleRate [3] INTEGER OPTIONAL, -- Samples per second 1371 language [4] IA5String OPTIONAL } -- RFC 5646 Language Tag 1373 OtherLogotypeInfo ::= SEQUENCE { 1374 logotypeType OBJECT IDENTIFIER, 1375 info LogotypeInfo } 1377 LogotypeReference ::= SEQUENCE { 1378 refStructHash SEQUENCE SIZE (1..MAX) OF HashAlgAndValue, 1379 refStructURI SEQUENCE SIZE (1..MAX) OF IA5String } 1380 -- Places to get the same LogotypeData 1381 -- image or audio object 1383 -- Note: The referenced LogotypeData binary file contains a 1384 -- DER-encoded LogotypeData type 1386 HashAlgAndValue ::= SEQUENCE { 1387 hashAlg AlgorithmIdentifier, 1388 hashValue OCTET STRING } 1390 -- Other logotype type OIDs 1392 id-logo OBJECT IDENTIFIER ::= { iso(1) identified-organization(3) 1393 dod(6) internet(1) security(5) mechanisms(5) pkix(7) 20 } 1395 id-logo-loyalty OBJECT IDENTIFIER ::= { id-logo 1 } 1397 id-logo-background OBJECT IDENTIFIER ::= { id-logo 2 } 1399 END 1401 CERT-IMAGE-MODULE { iso(1) identified-organization(3) dod(6) 1402 internet(1) security(5) mechanisms(5) pkix(7) id-mod(0) 1403 id-mod-logotype-certimage(68) } 1405 DEFINITIONS EXPLICIT TAGS ::= 1406 BEGIN 1408 EXPORTS ALL; -- export all items from this module 1410 id-logo-certImage OBJECT IDENTIFIER ::= 1411 { iso(1) identified-organization(3) dod(6) internet(1) 1412 security(5) mechanisms(5) pkix(7) id-logo(20) 3 } 1414 END 1415 1417 A.2. ASN.1 Module with 2002 Syntax 1419 Some developers like to use the latest version of ASN.1 standards. 1420 This appendix provides an ASN.1 module to assist in that goal. It 1421 uses the ASN.1 syntax defined in [NEW-ASN1], and it follows the 1422 conventions established in [RFC5912] and [RFC6268]. 1424 This ASN.1 module incorporates the module from RFC 3709 and the 1425 module from RFC 6170. 1427 Note that [NEW-ASN1] was published in 2021, and all of the features 1428 used in this module are backward compatible with the specification 1429 that was published in 2002. 1431 1432 LogotypeCertExtn 1433 { iso(1) identified-organization(3) dod(6) internet(1) 1434 security(5) mechanisms(5) pkix(7) id-mod(0) 1435 id-mod-logotype(TBD) } 1437 DEFINITIONS IMPLICIT TAGS ::= 1438 BEGIN 1440 IMPORTS 1441 EXTENSION 1442 FROM PKIX-CommonTypes-2009 -- RFC 5912 1443 { iso(1) identified-organization(3) dod(6) internet(1) 1444 security(5) mechanisms(5) pkix(7) id-mod(0) 1445 id-mod-pkixCommon-02(57) } 1447 AlgorithmIdentifier{}, DIGEST-ALGORITHM 1448 FROM AlgorithmInformation-2009 1449 { iso(1) identified-organization(3) dod(6) internet(1) 1450 security(5) mechanisms(5) pkix(7) id-mod(0) 1451 id-mod-algorithmInformation-02(58) } ; 1453 -- Logotype Extension 1455 ext-logotype EXTENSION ::= { 1456 SYNTAX LogotypeExtn 1457 IDENTIFIED BY id-pe-logotype } 1459 -- Logotype Extension OID 1461 id-pe-logotype OBJECT IDENTIFIER ::= 1462 { iso(1) identified-organization(3) dod(6) internet(1) 1463 security(5) mechanisms(5) pkix(7) id-pe(1) 12 } 1465 -- Logotype Extension Syntax 1467 LogotypeExtn ::= SEQUENCE { 1468 communityLogos [0] EXPLICIT SEQUENCE OF LogotypeInfo OPTIONAL, 1469 issuerLogo [1] EXPLICIT LogotypeInfo OPTIONAL, 1470 subjectLogo [2] EXPLICIT LogotypeInfo OPTIONAL, 1471 otherLogos [3] EXPLICIT SEQUENCE OF OtherLogotypeInfo 1472 OPTIONAL } 1473 -- At least one of the OPTIONAL components MUST be present 1474 ( WITH COMPONENTS { ..., communityLogos PRESENT } | 1475 WITH COMPONENTS { ..., issuerLogo PRESENT } | 1476 WITH COMPONENTS { ..., subjectLogo PRESENT } | 1477 WITH COMPONENTS { ..., otherLogos PRESENT } ) 1479 LogotypeInfo ::= CHOICE { 1480 direct [0] LogotypeData, 1481 indirect [1] LogotypeReference } 1483 LogotypeData ::= SEQUENCE { 1484 image SEQUENCE OF LogotypeImage OPTIONAL, 1485 audio [1] SEQUENCE OF LogotypeAudio OPTIONAL } 1486 -- At least one image component MUST be present 1487 ( WITH COMPONENTS { ..., image PRESENT } ) 1489 LogotypeImage ::= SEQUENCE { 1490 imageDetails LogotypeDetails, 1491 imageInfo LogotypeImageInfo OPTIONAL } 1493 LogotypeAudio ::= SEQUENCE { 1494 audioDetails LogotypeDetails, 1495 audioInfo LogotypeAudioInfo OPTIONAL } 1497 LogotypeDetails ::= SEQUENCE { 1498 mediaType IA5String, -- MIME media type name and optional 1499 -- parameters 1500 logotypeHash SEQUENCE SIZE (1..MAX) OF HashAlgAndValue, 1501 logotypeURI SEQUENCE SIZE (1..MAX) OF IA5String } 1503 LogotypeImageInfo ::= SEQUENCE { 1504 type [0] LogotypeImageType DEFAULT color, 1505 fileSize INTEGER, -- In octets, 0=unspecified 1506 xSize INTEGER, -- Horizontal size in pixels 1507 ySize INTEGER, -- Vertical size in pixels 1508 resolution LogotypeImageResolution OPTIONAL, 1509 language [4] IA5String OPTIONAL } -- RFC 5646 Language Tag 1511 LogotypeImageType ::= INTEGER { grayScale(0), color(1) } 1513 LogotypeImageResolution ::= CHOICE { 1514 numBits [1] INTEGER, -- Resolution in bits 1515 tableSize [2] INTEGER } -- Number of colors or grey tones 1517 LogotypeAudioInfo ::= SEQUENCE { 1518 fileSize INTEGER, -- In octets, 0=unspecified 1519 playTime INTEGER, -- In milliseconds, 0=unspecified 1520 channels INTEGER, -- 0=unspecified 1521 -- 1=mono, 2=stereo, 4=quad 1522 sampleRate [3] INTEGER OPTIONAL, -- Samples per second 1523 language [4] IA5String OPTIONAL } -- RFC 5646 Language Tag 1525 OtherLogotypeInfo ::= SEQUENCE { 1526 logotypeType OBJECT IDENTIFIER, 1527 info LogotypeInfo } 1529 LogotypeReference ::= SEQUENCE { 1530 refStructHash SEQUENCE SIZE (1..MAX) OF HashAlgAndValue, 1531 refStructURI SEQUENCE SIZE (1..MAX) OF IA5String } 1532 -- Places to get the same LogotypeData 1533 -- image or audio object 1535 -- Note: The referenced LogotypeData binary file contains a 1536 -- DER-encoded LogotypeData type 1538 HashAlgAndValue ::= SEQUENCE { 1539 hashAlg AlgorithmIdentifier{DIGEST-ALGORITHM, {...}}, 1540 hashValue OCTET STRING } 1542 -- Other logotype type OIDs 1544 id-logo OBJECT IDENTIFIER ::= { iso(1) identified-organization(3) 1545 dod(6) internet(1) security(5) mechanisms(5) pkix(7) 20 } 1547 id-logo-loyalty OBJECT IDENTIFIER ::= { id-logo 1 } 1549 id-logo-background OBJECT IDENTIFIER ::= { id-logo 2 } 1551 id-logo-certImage OBJECT IDENTIFIER ::= { id-logo 3 } 1553 END 1554 1556 Appendix B. Examples 1558 B.1. Example from RFC 3709 1560 The following example displays a logotype extension containing one 1561 Issuer logotype using direct addressing. The issuer logotype image 1562 is of the type image/gif. The logotype image is referenced through 1563 one URI and the image is hashed with SHA-1. This example is 1564 unchanged from RFC 3709, except that shallow indenting is used to 1565 keep the example within traditional margins. The use of SHA-1 was 1566 reasonable at the time that RFC 3709 was published, but many better 1567 choices are available today. 1569 The values on the left are the ASN.1 tag (in hexadecimal) and the 1570 length (in decimal). 1572 30 106: SEQUENCE { 1573 06 8: OBJECT IDENTIFIER logotype (1 3 6 1 5 5 7 1 12) 1574 04 94: OCTET STRING, encapsulates { 1575 30 92: SEQUENCE { 1576 A1 90: [1] { 1577 A0 88: [0] { 1578 30 86: SEQUENCE { 1579 30 84: SEQUENCE { 1580 30 82: SEQUENCE { 1581 16 9: IA5String 'image/gif' 1582 30 33: SEQUENCE { 1583 30 31: SEQUENCE { 1584 30 7: SEQUENCE { 1585 06 5: OBJECT IDENTIFIER sha1 (1 3 14 3 2 26) 1586 : } 1587 04 20: OCTET STRING 1588 : 8F E5 D3 1A 86 AC 8D 8E 6B C3 CF 80 6A D4 48 18 1589 : 2C 7B 19 2E 1590 : } 1591 : } 1592 30 34: SEQUENCE { 1593 16 32: IA5String 'http://logo.example.com/logo.gif' 1594 : } 1595 : } 1596 : } 1597 : } 1598 : } 1599 : } 1600 : } 1601 : } 1602 : } 1604 B.2. Issuer Logotype Example 1606 The following example displays a logotype extension containing one 1607 Issuer logotype using direct addressing. The issuer logotype image 1608 is of the type image/jpeg. The logotype image is referenced through 1609 one URI and the image is hashed with SHA-256. 1611 The values on the left are the ASN.1 tag (in hexadecimal) and the 1612 length (in decimal). 1614 30 124: SEQUENCE { 1615 06 8: OBJECT IDENTIFIER logotype (1 3 6 1 5 5 7 1 12) 1616 04 112: OCTET STRING, encapsulates { 1617 30 110: SEQUENCE { 1618 A1 108: [1] { 1619 A0 106: [0] { 1620 30 104: SEQUENCE { 1621 30 102: SEQUENCE { 1622 30 100: SEQUENCE { 1623 16 10: IA5String 'image/jpeg' 1624 30 49: SEQUENCE { 1625 30 47: SEQUENCE { 1626 30 11: SEQUENCE { 1627 06 9: OBJECT IDENTIFIER 1628 : sha-256 (2 16 840 1 101 3 4 2 1) 1629 : } 1630 04 32: OCTET STRING 1631 : 1E 8F 96 FD D3 50 53 EF C6 1C 9F FC F0 00 2E 53 1632 : B4 9C 24 9A 32 C5 E9 0C 2C 39 39 D3 AD 6D A9 09 1633 : } 1634 : } 1635 30 35: SEQUENCE { 1636 16 33: IA5String 'http://logo.example.com/logo.jpeg' 1637 : } 1638 : } 1639 : } 1640 : } 1641 : } 1642 : } 1643 : } 1644 : } 1645 : } 1647 B.3. Embedded Image Example 1649 The following example displays a logotype extension containing one 1650 Subject logotype using direct addressing. The subject logotype image 1651 uses image/svg+xml-compressed. The logotype image is embedded in the 1652 certificate extension with a "data:" URI and the image is hashed by 1653 SHA-256. This technique produces a large certificate extension, but 1654 offers reduced latency and improved privacy. 1656 The values on the left are the ASN.1 tag (in hexadecimal) and the 1657 length (in decimal). 1659 30 2160: SEQUENCE { 1660 06 8: OBJECT IDENTIFIER logotype (1 3 6 1 5 5 7 1 12) 1661 04 2146: OCTET STRING, encapsulates { 1662 30 2142: SEQUENCE { 1663 A2 2138: [2] { 1664 A0 2134: [0] { 1665 30 2130: SEQUENCE { 1666 30 2126: SEQUENCE { 1667 30 2122: SEQUENCE { 1668 16 24: IA5String 'image/svg+xml-compressed' 1669 30 49: SEQUENCE { 1670 30 47: SEQUENCE { 1671 30 11: SEQUENCE { 1672 06 9: OBJECT IDENTIFIER 1673 : sha-256 (2 16 840 1 101 3 4 2 1) 1674 : } 1675 04 32: OCTET STRING 1676 : C5 AC 94 1A 0A 25 1F B3 16 6F 97 C5 52 40 9B 49 1677 : 9E 7B 92 61 5A B0 A2 6C 19 BF B9 D8 09 C5 D9 E7 1678 : } 1679 : } 1680 30 2041: SEQUENCE { 1681 16 2037: IA5String 1682 : 'data:image/svg+xml-compressed;base64,H4sICIGpy2E' 1683 : 'AA2xvZ28tY29weS5zdmcApVbbbhs3EH3nV0y3Lw2Q9fK2JLe' 1684 : 'wHDROUBRo2iBxW+RRlTa2UFkypIWV5ut7zlB2UqF9cuLlUkt' 1685 : 'yLmfOzPD8xafbtdyPu/1qu5k17sw2sp/mm+V8vd2Ms2azbV5' 1686 : 'cmPNvXv16efXh7WvZ31/L299e/vzTpTRt1/0RLrvu1dUref/' 1687 : '7j+KtdXawsete/9IYaW6m6e77rjscDmeHcLbdXXdX7zpu6t6' 1688 : '9vmxxon08AREdRDt7tpyWDRRSz7+tgp2b/ew/hEKI5WGoPKy' 1689 : 'W082s8SmeWf13NzVyM66ub6ZZk+xXH+9X4+Hl9tOssWLly35' 1690 : '53ARpd7txP+7uxx/2d+NiejefVttZ8+nNavkBj9yO40RLb8d' 1691 : 'pvpxP8wtzuRvn07iUP/+Wu+20my9GcWfOPpfDbjVN44YLb8d' 1692 : 'p3Mn7cb3aXGNCAICCc+a8+yLo/FpwfLP/uN3dzhqdriH5uwf' 1693 : 'bnj9a+Uz2i/maK66utA+zZ435uFqvZ823R38Q1t32Lw3pZqT' 1694 : 'hd/PpRpaz5o2LNkocvCzaIm0vrQvSpog359lLy3my0ga+e3H' 1695 : 'p+B4InjVFPD9awdhnrGEFW30Sl/Pnpvta2QBVxUEVxFbJ2VU' 1696 : 'FfYC01pUs+O4GK84V/k6CHUFyhvhiDVQF8Y5aPDbmnsrXbS7' 1697 : '4DANjguwgENZLPwjUYVTRJQgEpiLR0ctiWj+Ig8rCvZAArxK' 1698 : 'ExEEWMJLqMA1F+ggnsQDXgpQeomJPCVhtCRycNrAWxgAI+g1' 1699 : 'Qsr6IUxlomBswjydYBEgOeVCDoRreBjiFjX2SdSA60BP5DgQ' 1700 : 'M63xoPlWHbNq+egAEeAzxyNAdCQz+sDEMOhaGisKJdSlS6gt' 1701 : 'WWm4M1rQwP0egEBIhhFLoXuCJhR4mT5RJBaiLKqqFROUEzYr' 1702 : '1idG0gahwCzEnk+AMJLdp0FevQQ6VZ+SKOwGlOIJOh1MVjo0' 1703 : 'eB6DRA10SRpSY6il/eFFKAm+MKSIWNFqSo4OFnORfwH5wJHC' 1704 : 'MNM0qlDRlcIwUEkDlgiSBhiEpBgMKOx5FdAYqI3KYewKKkAI' 1705 : 'tTABTkp5khI86kgbOgRywEBR0VGcwAjf8t9wqvdUMG6gLAbI' 1706 : '0QQ8CbzCTtCSn/DEhCbm++duQaiRG1mQkdWHnminHA+r5wpL' 1707 : 'vsJbCALUKsDW5NAj43J+AD5vpfamUzJqiRJACmCWwIMhQq4H' 1708 : 'mYGKaiiJPmIvpS80UzTtAjdSraApQZogslgFcJHw0y5WoEXD' 1709 : 'Yr/aTqfxk2qhcg3z6ETQL+S18llvHOZQvlEOVEVpzqCozE9V' 1710 : '6JZhh/lCslg7mUFY4AR7IlcApmgV6gz3DCSDe56fQ0SRS7el' 1711 : '0NJWO8mQ6mkc6ylPpaL7QUZ5IR/M/dEwoJiEp+L6iT4cdSyI' 1712 : 'p4ljDkoaZpQlgMoz0ApahjTiTWbZYu9v+MUqVjY61j2Bxr68' 1713 : 'bPF3uS1232qAyAQDMhr4MRyVZq5l2QcuwgY/oTozbgoIKycH' 1714 : '+yQxhzQsPJQ/ne9OmRKvYH1AeKA/EQRtzrmaYUiHUhpJOW4b' 1715 : 'reSaxZ/TVc3ZAQJKOagAJiw6pRHVkBMIBa5E+SUMWi0ZNW1R' 1716 : 'fn/xQXywHXyMHN5G8WF6gZ2IVjANHMIJQ1lAJQE8MJjZHJiU' 1717 : 'tQZAWzmkisDywTVWSqLkkQG2NNB3wwyaerqRGLNKpvwUOhaQ' 1718 : 'FiYcqviSjvp1n8WnRRzXFs9IXDxiiDd8HU/ROoAGn9+QgTPE' 1719 : 'Vu6HaN6i0VPuv1SCzwyZeHwBA1EjFYoAk2jJ3OFeJ5Gp1E+3' 1720 : 'Dlf3Aj70bbvmag5oyKHunVyGPq6+EnvTua/JUn3iadMHlqUa' 1721 : 'psK2T8SwCBJUF1JnEmhu0ntBthJoQpZqumsBk5mA1hRc0LR5' 1722 : 'ZFerdjksaCqt3IUWXcXW16vb6xdWyHLTgCaKXWKUKK1kOp9H' 1723 : 'K5B3ELjSdXb0loB5RYtS01L6h9yTPW51Wpqwgosr5I927aw6' 1724 : '401+YfwDria4WoQwAAA==' 1725 : } 1726 : } 1727 : } 1728 : } 1729 : } 1730 : } 1731 : } 1732 : } 1733 : } 1735 B.4. Embedded Certificate Image Example 1737 The following example displays a logotype extension containing one 1738 Certificate Image logotype using direct addressing. The Certificate 1739 Image logotype uses image/svg+xml-compressed. The logotype image is 1740 embedded in the certificate extension with a "data:" URI and the 1741 image is hashed by SHA-256. This example contains the image from 1742 Appendix B of RFC 6170, however, the media type used here is explicit 1743 about the use of GZIP compression [RFC1952]. 1745 The values on the left are the ASN.1 tag (in hexadecimal) and the 1746 length (in decimal). 1748 30 2910: SEQUENCE { 1749 06 8: OBJECT IDENTIFIER logotype (1 3 6 1 5 5 7 1 12) 1750 04 2896: OCTET STRING, encapsulates { 1751 30 2892: SEQUENCE { 1752 A3 2888: [3] { 1753 30 2884: SEQUENCE { 1754 30 2880: SEQUENCE { 1755 06 8: OBJECT IDENTIFIER '1 3 6 1 5 5 7 20 3' 1756 A0 2866: [0] { 1757 30 2862: SEQUENCE { 1758 30 2858: SEQUENCE { 1759 16 24: IA5String 'image/svg+xml-compressed' 1760 30 49: SEQUENCE { 1761 30 47: SEQUENCE { 1762 30 11: SEQUENCE { 1763 06 9: OBJECT IDENTIFIER 1764 : sha-256 (2 16 840 1 101 3 4 2 1) 1765 : } 1766 04 32: OCTET STRING 1767 : 83 14 B3 26 9B D3 8B 0B 2A E6 6E 42 74 E2 A7 57 1768 : 7A 40 B7 E1 2E 53 42 44 CC 7C AE 14 68 1B 0E B6 1769 : } 1770 : } 1771 30 2777: SEQUENCE { 1772 16 2773: IA5String 1773 : 'data:image/svg+xml-compressed;base64,H4sICLXutU0' 1774 : 'AA0NlcnRJbWFnZURlbW8uc3ZnANVaW2/bOBZ+n19BqBigwdo' 1775 : 'S7xK9jmeapB0EWHQHzez2WZZoR1tZMiQ5jvvr95CSL7Gl1Em' 1776 : '8C9d9iERSPOd85+O5EB3+9jhL0YMuyiTPLh3iYgfpLMrjJJt' 1777 : 'eOv/661M/cFBZhVkcpnmmL50sd34b/TIsH6YoiS+da11UySS' 1778 : 'Jwkqj21k41Q6CDbNyUMSTS+e+quYDz1sul+6SuXkx9YhSysP' 1779 : 'Uo7QPK/rlKqvCx35Wvmu+a/uGYow9EOigh0Qvr/LHSwcjjDj' 1780 : 'GiGHQ914n0/sKlMf4Vwctk7i6X7/sGEYdNA5L/WeRT5IUDKm' 1781 : 'SbLVWNoo2cqNCh1XyoKN8Nsuz0iqwVW8Qb1fOF0Vqp+PI06m' 1782 : 'e6awqPeISzxn9goYzXYVxWIUWpfWLCMwcGoLpgy83n8wzGkb' 1783 : 'R4GtefENmMBznC7DEroKpOBpM8mIWVqPEYGtA+BvoMfS2E5u' 1784 : 'F1Wqu7R6FLvNFEelWReNolpiV3l2VpGntMW9nk6RKdf0+9Br' 1785 : 'FrMbeVuWhtzbHvMR6UlobPyVpBWjXBk7six2vH5nCwY6nXCo' 1786 : '5xb7YusvFVPqCOGh16fSxSxglmPkScLfvmDDmC4FlDc1wov8' 1787 : 'IF2WZhNlVumgEPRliimDD3PhGPyTgUUMC6lKqKAjxaptq1bo' 1788 : 'UJvQFsvi+LOJyxZkPE/vCwHuAmXmoj1AarnRBatzqkbv7cK5' 1789 : 'Ls2ORfwM/vsOG5lURZqXxOnDXPKZw5t5jVzIhFKO0B6D6hAR' 1790 : 'SXDR6Fzqq7H7mQeJAOQiUSPvFIrUHOfuui3zrFI5dYVeAmpc' 1791 : 'OcOb9u63vLjae4kYX4yRifYPrTa2SlMigYdO+cEWeGADMLZL' 1792 : 'H96SH4R9xRYApl6q3Y02f+NzlRAl+cZSKhB6qSIVa80fsqMn' 1793 : 'WOqZJpmsXwAPoyNaQ95uNIGasKPwhxGzQzOXzMIIzBKabmLI' 1794 : 'il470zfSjWWn+kvpvLQ9g1l3yRIc8gukz0uysEcakcDfy3KM' 1795 : 'k+l0SOXlOopltJL7EPtUlzZfP4tnM70k8xkKCySt92MwfIXP' 1796 : 'oTe0pnu4dYbp7hJ/kxWySN0ey0o/1qbiCsxDXJMWWo37QekB' 1797 : 'cAUFPSGkPCnUJF5wwBacDK5cGlEp4BC2lYoJcrNNGVc7DzIq' 1798 : 'xT4CKsPlrAG8mL8whRejiQe9EmImIAoz3sds9NxP4RZEzugq' 1799 : 'zb7c3Q89u3WQKY9aegbsA/AUJB/bJs6pfJt9BHFEuk5DWITz' 1800 : 'OH5uZSThLUsDjQ5GE6RMsyihMTaQLfA6BIiAQMAhnHHN1sd6' 1801 : '1WtUhDVJiuhkrdBXd740+hLB9Vm1HjQe4ywLOBLWOMMiyQAX' 1802 : 'NB8sm9Gx2qdGgGkMG6wY8aLfqgH4dfnmrVc+pPrE/Z/QnZOs' 1803 : '8C1Okb2/ggwLdxlDC1D6DFPZDD98txv8xQf5TEc7Ax6ZyaDf' 1804 : '6BC4SylWKCMqtizp80+UMchATal63qHq0M3ZTs83Ob/XO6LY' 1805 : 'sFzpGVY5+iLxdWvwY+NaKoR/0iJIXL3dBjT2hG+wO+NXm53X' 1806 : 'StSh1eogfeojV35BTOaqh/cmPUe2Mdp91pQp2CjWOO2k7Oam' 1807 : 'hjU1HB3DLGm66n6iajz4bqn2oICmNFxDR/x2mC5s+rKhlkUA' 1808 : '3Ne3P8lgP0qJfjf9uvu+HWXSfFwNoH4uqGUmTadYMtOc7yjE' 1809 : 'Ed9EUhkwEEOcDSHKQ+yhnSvUYRH8miQo2FK5TCjWZZGWKB8i' 1810 : 'HPud16wApnCvTOzjIFAj9TQdCxa+ddOTizaa1xJvD0qMrKx+' 1811 : 'Ydaj6iwJQG0vaSdYWpTv4HwVRAP3Z6ONjOJunEIeKRVmhujp' 1812 : 'A2+wPmQR9WFQAFhh9bGQzFEXX+WwOnXq8pV35P2Acdn0pGeb' 1813 : 'cMg7OgQKaEdOKEAkFlk/9HuEKGBVwucc4AjnJ/LBYU09hVwW' 1814 : 'Y1F0HlBUC2lbyIuYF58O8p+adMwUt9YAoX/IwRtAC9NAdBAy' 1815 : 'GuEB3VR59u8/TGYx9/Xjz8bPB/Z/F9B0SghBK+4xxfiwtr0G' 1816 : 'XECqedQQ9PRVpEAQ+26MidbGSmPm8RwRzcQsT17EPSmoorH3' 1817 : '+av4Jcj78O/vIp/uzMEkHKAE6/F7VHHSj8HddR0Q3ymcGZfR' 1818 : 'VjwfmOnNn3GuWR+FzhcPmPqiptHcayacT28T8j3Cs0/LQCwo' 1819 : '6J2iYxP4R58AsobjFegusoJhuq7VNS2evRPcqASvQki+gbkB' 1820 : 'YwETNPt/1A2pT6UErR1zMzUITZRvF5Lp5basO1fk2U4aBSjk' 1821 : 'ji8quL3cDyW7TpI3unxezMcSTNhQJhfpGctKgKN2Amo7/7Sh' 1822 : 'Sev4oXicPSYS+6GkCm9a1Qw3VEchCUA+z5HtTcbQhK6F14YF' 1823 : 'Up+Yn7WgmzwpZCDf5DDiXT9B7U6RdHAHpdb7IqmLVjqZSLnT' 1824 : 'W61zjQ7/G7D3hm9E846uTDZoNMADmLlm7IG2ieXfUtu1US9T' 1825 : 'eNGUHibE9Nv//2jRJGZfQmK3v7ykJJOv1IXjBsDCPpmgWppe' 1826 : '6sHxR3KVSQKqp+WIqammuJbtqkxZmMHry4oS/9pLhdCXKq8u' 1827 : 'R0R+LDEqCKRxqc5VXdvPvIP+ggwR0RkyBfO9iKZvrWGAKVdz' 1828 : '31cuocvoO/qemClFMYEFEH7oI+vpkek4s4bCMBqK+5mHQUlD' 1829 : 'pE/oylpy+2/6pWXK31PEYagP04epV1cE50UMy6IQZeQM7+Ol' 1830 : '74Z+eHfpHNc7OjffQ/HeV0X8BopoDkGEkAAA=' 1831 : } 1832 : } 1833 : } 1834 : } 1835 : } 1836 : } 1837 : } 1838 : } 1839 : } 1840 : } 1842 B.5. Full Certificate Example 1844 The following example contains a certificate for Alice; it is 1845 essentially a renewal of the certificate that appears in [RFC9216]. 1846 Of course, the serial number and issue dates are different. In 1847 addition, Alice's certificate now has a logotype extension. The 1848 extension contains URLs for two community logotype images, both at 1849 fictional URLs. The extension also contains URLs for two subject 1850 logotype images, both at fictional URLs. An implementation would 1851 display at most three of these images, both of the community logotype 1852 images and one of the subject logotype images. Direct addressing is 1853 used for all of the images, and the images are hashed by SHA-256. 1855 -----BEGIN CERTIFICATE----- 1856 MIIFnTCCBIWgAwIBAgITN0EFee11f0Kpolw69Phqzpqx1zANBgkqhkiG9w0BAQ0F 1857 ADBVMQ0wCwYDVQQKEwRJRVRGMREwDwYDVQQLEwhMQU1QUyBXRzExMC8GA1UEAxMo 1858 U2FtcGxlIExBTVBTIFJTQSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAgFw0yMjA2 1859 MTUxODE4MThaGA8yMDUyMDkyNzA2NTQxOFowOzENMAsGA1UEChMESUVURjERMA8G 1860 A1UECxMITEFNUFMgV0cxFzAVBgNVBAMTDkFsaWNlIExvdmVsYWNlMIIBIjANBgkq 1861 hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtPSJ6Fg4Fj5Nmn9PkrYo0jTkfCv4TfA/ 1862 pdO/KLpZbJOAEr0sI7AjaO7B1GuMUFJeSTulamNfCwDcDkY63PQWl+DILs7GxVwX 1863 urhYdZlaV5hcUqVAckPvedDBc/3rz4D/esFfs+E7QMFtmd+K04s+A8TCNO12DRVB 1864 DpbP4JFD9hsc8prDtpGmFk7rd0q8gqnhxBW2RZAeLqzJOMayCQtws1q7ktkNBR2w 1865 ZX5ICjecF1YJFhX4jrnHwp/iELGqqaNXd3/Y0pG7QFecN7836IPPdfTMSiPR+peC 1866 rhJZwLSewbWXLJe3VMvbvQjoBMpEYlaJBUIKkO1zQ1Pq90njlsJLOwIDAQABo4IC 1867 fDCCAngwDAYDVR0TAQH/BAIwADAXBgNVHSAEEDAOMAwGCmCGSAFlAwIBMAEwHgYD 1868 VR0RBBcwFYETYWxpY2VAc21pbWUuZXhhbXBsZTATBgNVHSUEDDAKBggrBgEFBQcD 1869 BDAOBgNVHQ8BAf8EBAMCBsAwHQYDVR0OBBYEFLv2zLItHQYSHJeuKWqQENMgZmZz 1870 MB8GA1UdIwQYMBaAFJEwjnwHFwyn8QkoZTYaZxxodvRZMIIByAYIKwYBBQUHAQwE 1871 ggG6MIIBtqCB3zCB3KBtMGswaRYKaW1hZ2UvanBlZzAxMC8wCwYJYIZIAWUDBAIB 1872 BCCv/BAWRstWJbSZfeWJPq46hG9aAtOC1tqO1O74fL0d7TAoFiZodHRwOi8vd3d3 1873 LmV4YW1wbGUubmV0L2ltYWdlcy9sb2dvLmpwZ6BrMGkwZxYJaW1hZ2UvZ2lmMDEw 1874 LzALBglghkgBZQMEAgEEIIiQgYGt+2auL2bQSaBNjqDsTqhkQjhbNkq/LIvS6elm 1875 MCcWJWh0dHA6Ly93d3cuZXhhbXBsZS5vcmcvbG9nby1pbWFnZS5naWaigdGggc4w 1876 gcswYxYJaW1hZ2UvZ2lmMDEwLzALBglghkgBZQMEAgEEIGpYUC5ZZ/nd0Yr+vQ2x 1877 /mClExvfD7K+8LVzRVC6G78ZMCMWIWh0dHA6Ly93d3cuc21pbWUuZXhhbXBsZS9s 1878 b2dvLmdpZjBkFgppbWFnZS9qcGVnMDEwLzALBglghkgBZQMEAgEEIL3Le3VybYwb 1879 M6Qs3qx5ctpK2fJ5hApYWGrOLwKA6telMCMWIWh0dHA6Ly93d3cuc21pbWUuZXhh 1880 bXBsZS9sb2dvLmpwZzANBgkqhkiG9w0BAQ0FAAOCAQEAqwgkXOqK9JDy3ZCyC+Zu 1881 xXX+SaPc7LUEruUif4KFvFUoMOdWyelUeDxZpgOA/6uMdavtAWy31/ObDtJ3CV1U 1882 RXHXUC84ActoNaCAZIozlM0RWtquV5QMFcsLWl4zT/znfYZF8nf9wX3xap6XJ0i4 1883 w0a5MnHGoCdb8hnjVZ7qoKBiQyAmVsW7KZDvQf3nYkRCrwaHb5zdUNB2uf0MhCRh 1884 6sy4FuSJogrOTOd1yf1l+/FF9r8qD35gGQm9NRYsT04TZ2bf0z5+kwmukrG701sJ 1885 TiXiWMnwp/UuoZRc7xjCCxmUUCbAdufC1FX7fdbjfHizuPQO78OAq/KhkVZuy/Qv 1886 Aw== 1887 -----END CERTIFICATE----- 1889 The following displays the logotype extension from Alice's 1890 certificate. The values on the left are the ASN.1 tag (in 1891 hexadecimal) and the length (in decimal). 1893 30 438: SEQUENCE { 1894 A0 223: [0] { 1895 30 220: SEQUENCE { 1896 A0 109: [0] { 1897 30 107: SEQUENCE { 1898 30 105: SEQUENCE { 1899 16 10: IA5String 'image/jpeg' 1900 30 49: SEQUENCE { 1901 30 47: SEQUENCE { 1902 30 11: SEQUENCE { 1903 06 9: OBJECT IDENTIFIER sha-256 (2 16 840 1 101 3 4 2 1) 1904 : } 1905 04 32: OCTET STRING 1906 : AF FC 10 16 46 CB 56 25 B4 99 7D E5 89 3E AE 3A 1907 : 84 6F 5A 02 D3 82 D6 DA 8E D4 EE F8 7C BD 1D ED 1908 : } 1909 : } 1910 30 40: SEQUENCE { 1911 16 38: IA5String 'http://www.example.net/images/logo.jpg' 1912 : } 1913 : } 1914 : } 1915 : } 1916 A0 107: [0] { 1917 30 105: SEQUENCE { 1918 30 103: SEQUENCE { 1919 16 9: IA5String 'image/gif' 1920 30 49: SEQUENCE { 1921 30 47: SEQUENCE { 1922 30 11: SEQUENCE { 1923 06 9: OBJECT IDENTIFIER sha-256 (2 16 840 1 101 3 4 2 1) 1924 : } 1925 04 32: OCTET STRING 1926 : 88 90 81 81 AD FB 66 AE 2F 66 D0 49 A0 4D 8E A0 1927 : EC 4E A8 64 42 38 5B 36 4A BF 2C 8B D2 E9 E9 66 1928 : } 1929 : } 1930 30 39: SEQUENCE { 1931 16 37: IA5String 'http://www.example.org/logo-image.gif' 1932 : } 1933 : } 1934 : } 1935 : } 1936 : } 1937 : } 1938 A2 209: [2] { 1939 A0 206: [0] { 1940 30 203: SEQUENCE { 1941 30 99: SEQUENCE { 1942 16 9: IA5String 'image/gif' 1943 30 49: SEQUENCE { 1944 30 47: SEQUENCE { 1945 30 11: SEQUENCE { 1946 06 9: OBJECT IDENTIFIER sha-256 (2 16 840 1 101 3 4 2 1) 1947 : } 1948 04 32: OCTET STRING 1949 : 6A 58 50 2E 59 67 F9 DD D1 8A FE BD 0D B1 FE 60 1950 : A5 13 1B DF 0F B2 BE F0 B5 73 45 50 BA 1B BF 19 1951 : } 1952 : } 1953 30 35: SEQUENCE { 1954 16 33: IA5String 'http://www.smime.example/logo.gif' 1955 : } 1956 : } 1957 30 100: SEQUENCE { 1958 16 10: IA5String 'image/jpeg' 1959 30 49: SEQUENCE { 1960 30 47: SEQUENCE { 1961 30 11: SEQUENCE { 1962 06 9: OBJECT IDENTIFIER sha-256 (2 16 840 1 101 3 4 2 1) 1963 : } 1964 04 32: OCTET STRING 1965 : BD CB 7B 75 72 6D 8C 1B 33 A4 2C DE AC 79 72 DA 1966 : 4A D9 F2 79 84 0A 58 58 6A CE 2F 02 80 EA D7 A5 1967 : } 1968 : } 1969 30 35: SEQUENCE { 1970 16 33: IA5String 'http://www.smime.example/logo.jpg' 1971 : } 1972 : } 1973 : } 1974 : } 1975 : } 1976 : } 1978 Appendix C. Changes Since RFC 3709 and RFC 6170 1980 This appendix summarizes the changes since RFC 3709. The changes 1981 are: 1983 * Combine RFC 3709 and RFC 6170 into one document, and encourage 1984 implementers to support the "data" URI scheme (data:...) that was 1985 originally specified in RFC 6170. Merging RFC 3709 and RFC 6170 1986 lead to many editoral changes throughout the document. 1988 * Drop SHA-1 as the mandatory-to-implement hash algorithm, and 1989 encourage use of the one-way hash function that is employed by the 1990 certificate signature algorithm. 1992 * RFC 3709 required client applications to support both direct and 1993 indirect addressing. This requirement is changed to SHOULD 1994 support both direct and indirect addressing to allow 1995 implementations to be more privacy preserving. 1997 * Update the reference for language tags to be RFC 5646 instead of 1998 the now obsolete RFC 3066. 2000 * Update the reference for the URI Generic Syntax to be RFC 3986 2001 instead of the now obsolete RFC 2396. 2003 * Update the reference for the application/pdf media type to be RFC 2004 8118 instead of the now obsolete RFC 3778. 2006 * No longer require support for the FTP scheme (ftp://...) URI. 2008 * Require support for the HTTP scheme (http://...) URI and the HTTPS 2009 scheme (https://...) URI. 2011 * Require support for the compressed SVG image format with the 2012 image/svg+xml+gzip media type. 2014 * Media types MUST follow the ABNF [RFC5234] that is provided in 2015 Section 4.2 of [RFC6838]. This change resolves Errata ID 2679. 2017 * Remove the requirement that the LogotypeData file name have a file 2018 extension of ".LTD". This change resolves Errata ID 2325. 2020 * Encourage, instead of requiring, each logotype to be represented 2021 by at least one image. 2023 * Encourage the inclusion of text-based audio data suitable for 2024 processing by a text-to-speech software using the MIME type of 2025 "text/plain;charset=UTF-8". 2027 * Require that the logotype extension not contain more than one 2028 certificate image logotype. 2030 * Privacy-related topics that were previously discussed in the 2031 Security Considerations section are now covered in a separate 2032 Privacy Considerations section. Additional topics are covered in 2033 both sections. 2035 * Provide ASN.1 modules for both the older syntax [OLD-ASN1] and the 2036 most recent ASN.1 syntax [NEW-ASN1]. 2038 * Provide additional references. 2040 * Provide additional examples. 2042 * Several editorial changes to improve clarity. 2044 Authors' Addresses 2046 Stefan Santesson 2047 IDsec Solutions AB 2048 Forskningsbyn Ideon 2049 SE-223 70 Lund 2050 Sweden 2051 Email: sts@aaa-sec.com 2053 Russ Housley 2054 Vigil Security, LLC 2055 516 Dranesville Road 2056 Herndon, VA, 20170 2057 United States of America 2058 Email: housley@vigilsec.com 2060 Trevor Freeman 2061 Amazon Web Services 2062 1918 8th Ave 2063 Seattle, WA, 98101 2064 United States of America 2065 Email: frtrevor@amazon.com 2067 Leonard Rosenthol 2068 Adobe 2069 345 Park Avenue 2070 San Jose, CA, 95110 2071 United States of America 2072 Email: lrosenth@adobe.com