| < draft-ietf-pkix-logotypes-01.txt | draft-ietf-pkix-logotypes-02.txt > | |||
|---|---|---|---|---|
| PKIX Working Group S. Santesson (AddTrust) | PKIX Working Group S. Santesson (AddTrust) | |||
| INTERNET-DRAFT R. Housley (RSA Laboratories) | INTERNET-DRAFT R. Housley (RSA Laboratories) | |||
| Expires August 2002 February 2002 | Expires August 2002 T. Freeman (Microsoft) | |||
| April 2002 | ||||
| Internet X.509 Public Key Infrastructure | Internet X.509 Public Key Infrastructure | |||
| Logotypes in X.509 certificates | Logotypes in X.509 certificates | |||
| <draft-ietf-pkix-logotypes-01.txt> | <draft-ietf-pkix-logotypes-02.txt> | |||
| Status of this Memo | Status of this Memo | |||
| This document is an Internet-Draft and is in full conformance with | This document is an Internet-Draft and is in full conformance with | |||
| all provisions of Section 10 of RFC2026. | all provisions of Section 10 of RFC2026. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF), its areas, and its working groups. Note that other | Task Force (IETF), its areas, and its working groups. Note that other | |||
| groups may also distribute working documents as Internet-Drafts. | groups may also distribute working documents as Internet-Drafts. | |||
| skipping to change at page 1, line 37 ¶ | skipping to change at page 1, line 38 ¶ | |||
| The list of current Internet-Drafts can be accessed at | The list of current Internet-Drafts can be accessed at | |||
| http://www.ietf.org/ietf/1id-abstracts.txt | http://www.ietf.org/ietf/1id-abstracts.txt | |||
| The list of Internet-Draft Shadow Directories can be accessed at | The list of Internet-Draft Shadow Directories can be accessed at | |||
| http://www.ietf.org/shadow.html. | http://www.ietf.org/shadow.html. | |||
| Copyright (C) The Internet Society (2002). All Rights Reserved. | Copyright (C) The Internet Society (2002). All Rights Reserved. | |||
| Abstract | Abstract | |||
| This document contains an initial outline of a standard for attaching | This document specifies a certificate extension for including | |||
| logotypes to certificates. The draft includes background discussions | logotypes in public key certificates and attribute certificates. | |||
| around different aspects of problems and solutions, forming a | ||||
| starting point for the creation of a complete standard. | ||||
| Please send comments on this document to the ietf-pkix@imc.org | Please send comments on this document to the ietf-pkix@imc.org | |||
| mailing list. | mailing list. | |||
| Table of Contents | Table of Contents | |||
| 1 Introduction ................................................. 3 | 1 Introduction ................................................. 3 | |||
| 1.1 Are human recognition concepts relevant ................... 4 | 1.1 Certificate-based Identification .......................... 4 | |||
| 1.2 Combination of verification techiques ..................... 5 | 1.2 Selection of Certificates ................................. 4 | |||
| 2 Different types of logotypes in certificates.................. 5 | 1.3 Combination of Verification Techniques .................... 5 | |||
| 3 Technical solutions .......................................... 6 | 1.4 Terminology ............................................... 6 | |||
| 3.1 General ....................................... 6 | 2 Different types of logotypes in Certificates ................. 6 | |||
| 3.2 Type of certificates ...................................... 7 | 3 Image formats ................................................ 6 | |||
| 3.3 Logotype placement ........................................ 8 | 4 Logotype extension ........................................... 7 | |||
| 3.3.1 Qualifier .............................................. 8 | 5 Type of certificates ......................................... 9 | |||
| 3.3.2 Issuer and Subject Alt Names ........................... 8 | 6 Use in Clients ............................................... 9 | |||
| 3.3.3 New extension .......................................... 9 | 7 Security considerations ...................................... 10 | |||
| 3.3.4 Conclusion ............................................. 10 | 8 References ................................................... 11 | |||
| 4 Use in Clients ............................................... 10 | 9 Intellectual Property Rights ................................. 12 | |||
| 5 Security considerations ...................................... 10 | ||||
| 6 References ................................................... 12 | ||||
| 7 Intellectual Property Right .................................. 12 | ||||
| Appendices | Appendices | |||
| A. ASN.1 definitions ........................................... 13 | A. ASN.1 definitions ........................................... 13 | |||
| B. Author Addresses ............................................ 13 | B. Logotype placement .......................................... 13 | |||
| C. Full Copyright Statement .................................... 13 | B.1 Qualifier ................................................. 13 | |||
| B.2 Issuer and Subject Alt Names .............................. 13 | ||||
| B.3 New extension ............................................. 14 | ||||
| B.4 Conclusion ................................................ 14 | ||||
| C. Author Addresses ............................................ 15 | ||||
| D. Full Copyright Statement .................................... 16 | ||||
| 1 Introduction | 1. Introduction | |||
| The basic function of a certificate is to bind a public key to the | The basic function of a certificate is to bind a public key to the | |||
| identity of an entity (subject). From a strictly technical viewpoint, | identity of an entity (the subject). From a strictly technical | |||
| this goal could be achieved by signing the identity of the subject | viewpoint, this goal could be achieved by signing the identity of the | |||
| together with its public key. However, the art of PKI has developed | subject together with its public key. However, the art of PKI has | |||
| certificates far beyond this functionality in order to meet the needs | developed certificates far beyond this functionality in order to meet | |||
| from modern global networks and heterogeneous IT structures. | the needs of modern global networks and heterogeneous IT structures. | |||
| One driver of the evolution from simple certificate formats to more | Certificate users must be able to determine certificate policies, | |||
| complex structures is the need to distinguish between different | appropriate key usage, assurance level, and name form constraints. | |||
| certificate concepts, such as assurance level, policies, appropriate | Before a relying party can make an informed decision whether a | |||
| key usage, and name form constraints. Before a relying party can make | particular certificate is trustworthy and relevant for its intended | |||
| an informed decision whether a particular certificate is trustworthy | usage, a certificate may be examined from several different | |||
| and relevant for its intended usage, a certificate may be examined | perspectives. | |||
| from several different perspectives. | ||||
| Systematic processing is necessary to determine whether a particular | Systematic processing is necessary to determine whether a particular | |||
| certificate meets the predefined prerequisites for an intended usage. | certificate meets the predefined prerequisites for an intended usage. | |||
| Even though the information objects in certificates are appropriate | Much of the information contained in certificates is appropriate and | |||
| and effective for machine processing, they are poor instruments for a | effective for machine processing; however, this information is not | |||
| corresponding human trust and recognition process. | suitable for a corresponding human trust and recognition process. | |||
| The human prefers to structure information into categories and | Humans prefer to structure information into categories and symbols. | |||
| symbols. Most humans associate complex structures of reality with | Most humans associate complex structures of reality with easy | |||
| easy recognizable logotypes and marks. Humans tend to trust things | recognizable logotypes and marks. Humans tend to trust things that | |||
| that they recognize from previous experiences. Humans may examine | they recognize from previous experiences. Humans may examine | |||
| information to confirm their initial reaction. Very few consumers | information to confirm their initial reaction. Very few consumers | |||
| actually read all terms and conditions they accept when accepting a | actually read all terms and conditions they accept when accepting a | |||
| service, instead they most commonly act in trust based on previous | service, rather they commonly act on trust derived from previous | |||
| experience and recognition. | experience and recognition. | |||
| A big part of this process is branding. Service providers and product | A big part of this process is branding. Service providers and product | |||
| vendors invest a lot of money and resources into creating a strong | vendors invest a lot of money and resources into creating a strong | |||
| relation between positive user experiences and easily recognizable | relation between positive user experiences and easily recognizable | |||
| trademarks and logotypes. | trademarks, servicemarks, and logotypes. | |||
| Branding is also pervasive in identification instruments, including | Branding is also pervasive in identification instruments, including | |||
| identification cards, passports, driver's licenses, credit cards, | identification cards, passports, driver's licenses, credit cards, | |||
| gasoline cards, and loyalty cards. Identification instruments are | gasoline cards, and loyalty cards. Identification instruments are | |||
| intended identify the holder as a particular person or as member of | intended to identify the holder as a particular person or as member | |||
| community. The community may represent the subscribers of a service | of community. The community may represent the subscribers of a | |||
| or any other group. Identification instruments, in physical form, | service or any other group. Identification instruments, in physical | |||
| commonly use logotypes and symbols, solely to enhance human | form, commonly use logotypes and symbols, solely to enhance human | |||
| recognition and trust in the identification instrument itself. | recognition and trust in the identification instrument itself. They | |||
| may also include a registered trademark to allow legal recourse for | ||||
| unauthorized duplication. | ||||
| Since certificates play an equivalent role in electronic exchanges, | Since certificates play an equivalent role in electronic exchanges, | |||
| we examine the inclusion of logotypes in certificates. | we examine the inclusion of logotypes in certificates. We consider | |||
| certificate-based identification and certificate selection. | ||||
| 1.1 Are human recognition concepts relevant? | ||||
| The answer depends the manner in which certiciates are used. Are | 1.1. Certificate-based Identification | |||
| certificates visible or invisible to human users? Will the | ||||
| certificates be used in open environments? | ||||
| If certificates are to be used in open environments and in | The need for human recognition depends on the manner in which | |||
| applications that brings the user in conscious contact with the | certificates are used and whether certificates need to be visible to | |||
| human users. If certificates are to be used in open environments and | ||||
| in applications that bring the user in conscious contact with the | ||||
| result of a certificate-based identification process, then human | result of a certificate-based identification process, then human | |||
| recognition is highly relevant, and it may be a necessity. | recognition is highly relevant, and it may be a necessity. | |||
| Examples of sucha applications include: | Examples of such applications include: | |||
| - Web server identification where a user identifies the owner of the | ||||
| web site. | ||||
| - Peer e-mail exchange in B2B, B2C, and private communications. | ||||
| - Exchange of medical records, and system for medical prescriptions. | ||||
| - Unstructured e-business applications (i.e. non-EDI applications). | - Web server identification where a user identifies the owner | |||
| of the web site. | ||||
| - Peer e-mail exchange in B2B, B2C, and private communications. | ||||
| - Exchange of medical records, and system for medical | ||||
| prescriptions. | ||||
| - Unstructured e-business applications (i.e., non-EDI | ||||
| applications). | ||||
| - Wireless client authenticating to a service provider. | ||||
| Most applications provide the human user with an opportunity to view | Most applications provide the human user with an opportunity to view | |||
| the results of a successful certificate-based identification process. | the results of a successful certificate-based identification process. | |||
| When the user takes the steps necessary to view these results, the | When the user takes the steps necessary to view these results, the | |||
| user is presented with a view of a certificate. This solution has | user is presented with a view of a certificate. This solution has two | |||
| however two major problems. | major problems. First, the function to view a certificate is often | |||
| rather hard to find for a non-technical user. Second, the | ||||
| 1) The function to view a certificate is often rather hard to find | presentation of the certificate is too technical and, it is not user | |||
| for a non-technical user. | friendly. It contains no graphic symbols or logotypes to enhance | |||
| human recognition. | ||||
| 2) The presentation of the certificate is rather technical and not | ||||
| user friendly. Further it contains no graphic symbols and | ||||
| logotypes to enhance human recognition. | ||||
| Many investigations have shown that users of today's applications do | Many investigations have shown that users of today's applications do | |||
| not take the steps necessary to view certificates. This could be due | not take the steps necessary to view certificates. This could be due | |||
| to poor user interfaces. However, many applications are structured to | to poor user interfaces. Further, many applications are structured to | |||
| hide certificates from users. The application designers do not want | hide certificates from users. The application designers do not want | |||
| to expose certificates to users at all. | to expose certificates to users at all. | |||
| 1.2 Combination of verification techiques | 1.2. Selection of Certificates | |||
| Can the concepts of systematic certification path verification and | One situation where software applications must expose human users to | |||
| human recognition be combined in any sensible manner? | certificates is when the user must select a single certificate from a | |||
| portfolio of certificates. In some cases, the software application | ||||
| can use information within the certificates to filter the list for | ||||
| suitability; however, the user must be queried if more than one | ||||
| certificate is suitable. The human user must select one of them. | ||||
| This situation is comparable to a person selecting a suitable plastic | ||||
| card from his wallet. In this situation, substantial assistance is | ||||
| provided by card color, location, and branding. | ||||
| In order to provide similar support for certificate selection, the | ||||
| users need tools to easily recognize and distinguish certificates. | ||||
| Introduction of logotypes into certificates provides the necessary | ||||
| graphic. | ||||
| 1.3. Combination of Verification Techniques | ||||
| The use of logotypes will in many cases affect the users decision to | ||||
| trust and use a certificate. It is therefore important that there is | ||||
| a distinct and clear architectural and functional distinction between | ||||
| the processes and objectives of the systematic certificate | ||||
| verification and human recognition. | ||||
| Systematic certification path verification determines whether the | Systematic certification path verification determines whether the | |||
| end-entity certificate can be verified according to defined policy. | end-entity certificate can be verified according to defined policy. | |||
| The algorithm for this verification is specified in RFC <TBD> | ||||
| [PKIX-1]. | ||||
| The systematic processing provides assurance that the certificate is | The systematic processing provides assurance that the certificate is | |||
| a valid document. It does not indicate whether the subject is | valid. It does not indicate whether the subject is entitled to any | |||
| entitled to any particular information, or whether the subject ought | particular information or whether the subject ought to be trusted to | |||
| to be trusted to perform a particular service. These are access | perform a particular service. These are access control decisions. | |||
| control function decisions. Some access control decisions may be made | Automatic processing will make some access control decisions, but | |||
| by a systematic process, but others, depending on the application | others, depending on the application context, involve the human user. | |||
| context, involve the human user. | ||||
| In some situations, the human user is the sole handler of the post | In some situations, where automated procedures have failed to | |||
| certification path verification access control decisions. In the end, | establish the suitability of the certificate to the task, the human | |||
| the human will decide whether or not to accept an executable email | user is the final arbitrator of the post certificate verification | |||
| attachment, to release personal information, or follow the | access control decisions. In the end, the human will decide whether | |||
| instructions displayed by a web browser. As we have seen, this | or not to accept an executable email attachment, to release personal | |||
| decision will often be based on recognition and previous experience. | information, or follow the instructions displayed by a web browser. | |||
| This decision will often be based on recognition and previous | ||||
| experience. | ||||
| The distinction between systematic processing and human processing | The distinction between systematic processing and human processing is | |||
| is rather straightforward. They can be complementary. While the | rather straightforward. They can be complementary. While the | |||
| systematic process is focused on certification path construction and | systematic process is focused on certification path construction and | |||
| verification, the human acceptance process is focused on recognition | verification, the human acceptance process is focused on recognition | |||
| and related previous experience. | and related previous experience. | |||
| There are some situations where systematic processing and human | There are some situations where systematic processing and human | |||
| processing interfer with each other. These issues are discussed in | processing interfere with each other. These issues are discussed in | |||
| the Security Considerations section. | the Security Considerations section. | |||
| 1.3 Terminology | 1.4. Terminology | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
| document are to be interpreted as described in RFC 2119 [STDWORDS]. | document are to be interpreted as described in RFC 2119 [STDWORDS]. | |||
| 2 Different types of logotypes in certificates | 2. Different Types of Logotypes in Certificates | |||
| This draft suggests standardization of 3 logotype types. | This specification defines the inclusion of three predefined logotype | |||
| types. | ||||
| 1) Concept logotype | 1) Community logotype | |||
| 2) Issuer organization logotype | 2) Issuer organization logotype | |||
| 3) Subject organization logotype | 3) Subject organization logotype | |||
| The concept logotype - is the general mark for a service concept for | The community logotype - is the general mark for a community. It | |||
| entity identification and certificate issuance. Many issuers may use | identifies a service concept for entity identification and | |||
| the concept logotypes to co-brand with a global concept in order to | certificate issuance. Many issuers may use a community logotype to | |||
| gain global recognition of its local service provision. This type of | co-brand with a global community in order to gain global recognition | |||
| concept branding is very common in credit card business where local | of its local service provision. This type of community branding is | |||
| independent card issuers issue cards within a globally branded | very common in the credit card business where local independent card | |||
| concept (such as VISA and MasterCard). | issuers include a globally recognized brand (such as VISA and | |||
| MasterCard). | ||||
| Issuer organization logotype - is a logotype representing the | Issuer organization logotype - is a logotype representing the | |||
| organization identified as part of the issuer name in the | organization identified as part of the issuer name in the | |||
| certificate. | certificate. | |||
| Subject organization logotype - is a logotype representing the | Subject organization logotype - is a logotype representing the | |||
| organization identified in the subject name in the certificate. | organization identified in the subject name in the certificate. | |||
| 3 Technical solution | 3. Image formats | |||
| 3.1 General | ||||
| There is no need to significantly increase the size of the | ||||
| certificate by including logotype image data in a certificate. | ||||
| Rather, a URI identifying the location to the logotype image and a | ||||
| one-way hash of the referenced data is included in the certificate. | ||||
| Applications may enhance processing and off-line functionality by | ||||
| cashing logotype data. | ||||
| The URI defines the file format for the logotype image. | ||||
| The solution explicitly identifies the one-way hash function | ||||
| employed. | ||||
| The general structure for logotype data is: | ||||
| LogotypeData ::= SEQUENCE { | ||||
| typeOfLogotype TypeOfLogotype, | ||||
| hashAlgorithm AlgorithmIdentifier, | ||||
| logotypeDataHash OCTET STRING, | ||||
| logotypeDataUri IA5String OPTIONAL } | ||||
| TypeOflogotype ::= CHOICE { | ||||
| predefinedLogotypeType PredefinedLogotypeType, | ||||
| logotypeTypeID OBJECT IDENTIFIER } | ||||
| PredefinedLogotypeType ::= INTEGER { | This specification defines two image format types: | |||
| subject-organization-logotype(0), | ||||
| issuer-organization-logotype(1) | ||||
| concept-logotype(2) } | ||||
| The predefined logotype types are: | - High Resolution (included by reference) | |||
| - Low Resolution (icon-sized image embedded in the extension) | ||||
| subject-organization-logotype, if used, SHALL be used to include a | Format restrictions: | |||
| logotype of the subject organization. The logotype SHALL be | High Resolution Low Resolution | |||
| consistent with, and require the presence of, an organization name | +-----------------+---------------------+--------------------+ | |||
| stored in the organization attribute in the subject field. | | Image format | JPEG or GIF | JPEG or GIF | | |||
| +-----------------+---------------------+--------------------+ | ||||
| | Size | Max 150 x 50 pixels | 20 x 20 pixels | | ||||
| +-----------------+---------------------+--------------------+ | ||||
| | Color palette | Unlimited | 256 colors (8-bit) | | ||||
| +-----------------+---------------------+--------------------+ | ||||
| issuer-organization-logotype, if used, SHALL be used to include a | A high resolution image SHOULD include a black border. Exceptions are | |||
| logotype of the issuer organization. The logotype SHALL be consistent | such things as arrows or X's. These images SHOULD be fairly flat in | |||
| with, and require the presence of, an organization name stored in the | appearance with little dimensioning or shading. | |||
| organization attribute in the issuer field. | ||||
| Concept-logotype, if used, SHALL be used to include a logotype | There is no need to significantly increase the size of the | |||
| representing the concept under which the issuer claims to issue this | certificate by including image data of logotypes in high quality | |||
| format. Rather, a URI identifying the location to the logotype image | ||||
| and a one-way hash of the referenced data is included in the | ||||
| certificate. | certificate. | |||
| A concept may be shared within a network of certification authority | To enhance functionality for off-line and low bandwidth situations | |||
| (CA) services, provided by one or several independent CA | where reasonable access to high quality logotypes are not available, | |||
| organizations. | the icon-sized version of the logotype may optionally be stored | |||
| directly in the certificate extension. | ||||
| The relationship between the subject organization and the subject | ||||
| organization logotype and the relationship between the issuer and | ||||
| either the issuer organization logotype or the concept logotype, are | ||||
| relationships claimed by the issuer. The policy under which the | ||||
| issuer checks these logotypes is outside the scope of this standard. | ||||
| Any URI pointing to a file containing the logotype data SHALL include | ||||
| a file extension defining the image file format (i.e. .GIF, .TIF, | ||||
| .TIFF, .JPG, .JPEG, etc.). | ||||
| 3.2 Type of certificates | ||||
| Logotypes according to the present model may be used in 3 types of | ||||
| certificates: | ||||
| - Self-signed CA certificates (root certificates) | ||||
| - Intermediate CA certificates | ||||
| - End-entity certificates | ||||
| A reason to constrain inclusion of logotypes to end-entity | ||||
| certificates would be to exclude the aspect of logotypes from path | ||||
| processing issues, where a path validating service would want to | ||||
| check consistency of logotypes in a certification path. | ||||
| However, as discussed above, logotypes are not aimed to be part of | ||||
| certification path validation or any type of systematic processing | ||||
| since its sole purpose is to enhance display of a single particular | ||||
| certificate to a user regardless of its position or function in a | ||||
| certification path. | ||||
| Logotypes should not be an active component in path processing, and | ||||
| logotypes should be allowed in all types of certificates, at the | ||||
| discretion of the CA. | ||||
| 3.3 Logotype placement | ||||
| So far, there have been 3 solutions discussed regarding the placement | ||||
| of the logotype data in certificates. | ||||
| - Inclusion in a policy qualifier | ||||
| - Inclusion in Issuer and Subject Alternative names extensions | ||||
| - Inclusion in a separate private extension | ||||
| 3.3.1 Qualifier | ||||
| This solution would include logotype data as a newly defined policy | ||||
| qualifier. | ||||
| Pros: | ||||
| - This solution provides a mechanism to directly control the use and | ||||
| display of logotypes under a particular policy | ||||
| Cons: | Applications may also enhance processing and off-line functionality | |||
| by cashing the higher quality logotype data. | ||||
| - Current practice and standards (RFC 2459) recommends against use of | 4. Logotype extension | |||
| qualifiers | ||||
| - This is generally considered to be a major hack and stretch of | The logotype extension MAY be included in public key certificates | |||
| semantics, since this type of data doesn't qualify a policy in any | [PKIX-1] or attribute certificates [PKIX-AC]. The logotype extension | |||
| way. | MUST be identified by the following object identifier: | |||
| 3.3.2 Issuer and Subject Alt Names | id-pe-logotypeInfo OBJECT IDENTIFIER ::= {id-pe XX} | |||
| This solution would use the other name form to include; | The logotype extension MUST have the following syntax: | |||
| - issuer and concept logotypes in the issuer alt name extension; | LogotypeInfo ::= SEQUENCE { | |||
| and, | communityLogo [0] LogotypeData OPTIONAL, | |||
| - subject organization logo in the subject alt name extension. | issuerLogo [1] LogotypeData OPTIONAL, | |||
| subjectLogo [2] LogotypeData OPTIONAL, | ||||
| otherLogos [3] SEQUENCE OF OtherLogotypeData OPTIONAL } | ||||
| Pros: | OtherLogotypeData ::= SEQUENCE { | |||
| logotypeTypeID OBJECT IDENTIFIER, | ||||
| logotypeData LogotypeData } | ||||
| - This mechanism could possibly enable cross certifying CAs to deny | LogotypeData ::= SEQUENCE { | |||
| any subordinate CA the right to include logotypes in descending end | highRes LogotypeReference OPTIONAL, | |||
| entity certificates by listing the logotypes name form in | lowRes EmbeddedLogotype OPTIONAL } | |||
| excludedSubtrees. | ||||
| Cons: | LogotypeReference ::= SEQUENCE { | |||
| hashAlgorithm AlgorithmIdentifier, | ||||
| logotypeHash OCTET STRING, | ||||
| logotypeUri IA5String } | ||||
| - Logotypes are not a name form and should not be treated as a | EmbeddedLogotype ::= SEQUENCE { | |||
| displayable name. | imageFileExtn IA5String, -- MUST be "JPEG" or "JPG" or "GIF" | |||
| image OCTET STRING } | ||||
| - It is generally understood that it should be possible to apply | This extension MUST NOT be marked critical. | |||
| general name constraint mechanisms (as described in RFC 2459 as | ||||
| well as son-of-2459) to names in the subject and issuer alt name | ||||
| extension. This is not possible to do with logotypes since it is | ||||
| not a name form. | ||||
| - This split storage of logotype data into 2 different locations, | At least one of the optional elements in the LogotypeInfo structure | |||
| which may make life worse for applications with no interest in | MUST be present. Whenever possible, the use of otherLogos should be | |||
| logotypes. | avoided. | |||
| - It is generally agreed that inclusion of logotype data by no means | The LogotypeReference structure explicitly identifies the one-way | |||
| should be regarded as critical data. This may interfere with the | hash function employed. Implementations MUST support the SHA-1 [FIPS | |||
| criticality policy of the alt name extensions, especially if the | 180-1] algorithm, and implementations MAY support other one-way hash | |||
| certificate has no attributes in the subject field, forcing the | functions. | |||
| subject alt name to be set to critical. | ||||
| - This usage would possibly interfere with the resolution between | The predefined logotype types are: | |||
| IETF and ITU-T regarding use of permitted subtrees. | ||||
| - Since this solution may break current implementations it would | Community Logotype. If communityLogo is present, the logotype MUST | |||
| possibly block adoption of logotypes. | represent the community to which the certificate issuer is a | |||
| member. The communityLogo MAY be present in an end entity | ||||
| certificate or an attribute certificate. The communityLogo MUST | ||||
| NOT be present in a CA certificate. | ||||
| 3.3.3 New extension | Issuer Organization Logotype. If issuerLogo is present, the | |||
| logotype MUST represent the issuer's organization. The logotype | ||||
| MUST be consistent with, and require the presence of, an | ||||
| organization name stored in the organization attribute in the | ||||
| issuer field (for either a public key certificate or attribute | ||||
| certificate). The issuerLogo MAY be present in an end entity | ||||
| certificate, a CA certificate, or an attribute certificate. | ||||
| logotypeInfo EXTENSION ::= { | Subject Organization Logotype. If subjectLogo is present, the | |||
| SYNTAX LogotypeSyntax | logotype MUST represent the subject's organization. The logotype | |||
| IDENTIFIED BY id-pe-logotypeInfo } | MUST be consistent with, and require the presence of, an | |||
| organization name stored in the organization attribute in the | ||||
| subject field (for either a public key certificate or attribute | ||||
| certificate). The subjectLogo MAY be present in an end entity | ||||
| certificate, a CA certificate, or an attribute certificate. | ||||
| id-pe-logotypeInfo OBJECT IDENTIFIER ::= {id-pe XX} | The relationship between the subject organization and the subject | |||
| organization logotype and the relationship between the issuer and | ||||
| either the issuer organization logotype or the community logotype, | ||||
| are relationships claimed by the issuer. The policy under which the | ||||
| issuer checks these logotypes is outside the scope of this standard. | ||||
| LogotypeSyntax ::= SEQUENCE OF LogotypeData | Any URI pointing to a file containing the logotype data MUST include | |||
| a file extension defining the image file format. The file extension | ||||
| is the last three or four letters of the file name, immediately | ||||
| following a period. Implementations MUST support both the JPEG and | ||||
| GIF image formats. The JPEG image format MUST be identifier using a | ||||
| file extension of "JPG" or "JPEG". The GIF image format MUST be | ||||
| identified using the "GIF" file extension. | ||||
| Pros: | The same three file extension strings ("JPG," "JPEG," and "GIF") are | |||
| used to identify the format of embedded images. | ||||
| - This is the cleanest solution. | To ensure that certificates are not greatly enlarged by including | |||
| embedded logotypes, restrictions are imposed on image size and color | ||||
| definition. Embedded images MUST NOT exceed 20 pixels by 20 pixels. | ||||
| Embedded images MUST use a 256-color (8-bit) palette. The size of an | ||||
| image conforming to these restrictions is about 750 octets. | ||||
| - Do not impact on legacy implementations. | 5. Type of certificates | |||
| Cons: | Logotypes MAY be present in three types of certificates: | |||
| - This solution activates the issue whether this extension may be | - CA certificates | |||
| abused by a CA who include logotypes (in EE certificates) that | - End-entity certificates | |||
| violates the intention of a name constraints set by a chaining CA. | - Attribute certificates | |||
| This issue is addressed in the security consideration section | ||||
| below. | ||||
| 3.3.4 Conclusion | CA certificates include self-signed certificates (often used to | |||
| represent trust anchors) or Intermediate CA certificates. | ||||
| We must not destroy current structures. We must not create problems | Some types of logotypes are not permitted in CA certificates. This | |||
| and confusion. | ensures that logotypes are excludes from all aspects of certification | |||
| path processing. As discussed above, logotypes are not intended to be | ||||
| part of certification path validation or any type of systematic | ||||
| processing. The sole purpose of logotypes is to enhance display of a | ||||
| particular certificate, regardless of its position in a certification | ||||
| path. | ||||
| Only the private extension solution satisfies both of these desires. | Logotypes MUST NOT be an active component in certification path | |||
| Therefore, the private extension should be selected. | processing, and they are included in public key certificates and | |||
| attribute certificates at the discretion of the certificate issuer. | ||||
| 4 Use in Clients | 6. Use in Clients | |||
| All PKI implementations require relying party software to have some | All PKI implementations require relying party software to have some | |||
| mechanism to determine whether a trusted CA issues a particular | mechanism to determine whether a trusted CA issues a particular | |||
| certificate. This is an issue for certification path validation, | certificate. This is an issue for certification path validation, | |||
| including consistent policy and name checking. | including consistent policy and name checking. | |||
| After a certificatin path is successfully validated, the replying | After a certification path is successfully validated, the replying | |||
| party must trust the information that the CA includes in the | party must trust the information that the CA includes in the | |||
| certificate, including any certificate extensions. The client | certificate, including any certificate extensions. The client | |||
| software can choose to make use of such information, or the client | software can choose to make use of such information, or the client | |||
| software can ignore it. Current standards do not provide any | software can ignore it. Current standards do not provide any | |||
| mechanism for cross-certifying CAs to constrain subordinate CAs from | mechanism for cross-certifying CAs to constrain subordinate CAs from | |||
| including private extensions (see security considerations). | including private extensions (see the security considerations | |||
| section). | ||||
| Consequently, if relying party software accepts a CA, then it should | Consequently, if relying party software accepts a CA, then it should | |||
| be prepared to (unquestioningly) display the associated logos to its | be prepared to (unquestioningly) display the associated logotypes to | |||
| human user, given that it is configured to do so. | its human user, given that it is configured to do so. | |||
| 5 Security considerations | However, if the relying party software is unable to successfully | |||
| validate a particular certificate, then it MUST NOT display any | ||||
| associated logotype graphics. | ||||
| Logotypes are even worse than names regarding the possibility to | 7. Security considerations | |||
| securely and accurately define what is, and what is not, a legitimate | ||||
| Logotypes are very difficult to securely and accurately define. Names | ||||
| are also difficult in this regard, but logotypes are even worse. It | ||||
| is quite difficult to specify what is, and what is not, a legitimate | ||||
| logotype of an organization. There is a whole legal structure around | logotype of an organization. There is a whole legal structure around | |||
| this issue that doesn't need repetition in this document. | this issue, and it will not be repeated here. However, issuers should | |||
| be aware of the implications of including images associated with a | ||||
| trademark or servicemark before doing so. | ||||
| As logotypes are hard (and sometimes expensive) to verify, this | As logotypes can be difficult (and sometimes expensive) to verify, | |||
| increases the possibility of errors related to falsely assigning | this increases the possibility of errors related to assigning wrong | |||
| wrong logotypes to organizations. | logotypes to organizations. | |||
| This is not a new issue for electronic identification instruments. | This is not a new issue for electronic identification instruments. | |||
| It is already dealt with in numerous of similar situations in the | It is already dealt with in numerous of similar situations in the | |||
| physical world, including physical employee identification cards. | physical world, including physical employee identification cards. | |||
| Secondly, there are situations where identification of logotypes is | Secondly, there are situations where identification of logotypes is | |||
| rather simple and straightforward, such as logotypes for well-known | rather simple and straightforward, such as logotypes for well-known | |||
| industries and institutes. These issues should not stop those service | industries and institutes. These issues should not stop those service | |||
| providers who want to issue logotypes from doing so, where relevant. | providers who want to issue logotypes from doing so, where relevant. | |||
| There is a new problem related to electronic identification | The premise used for the logotype work is that logotype graphics in a | |||
| instruments in the form of certificates. Certification paths may | certificate are trusted only if the certificate is successfully | |||
| impose constraints that are systematically checked during | validated within a valid path. It is however impossible to prevent | |||
| certification path processing, which, in theory, may be violated by | fraudulent creation of certificates by non-validated issuers, | |||
| logotypes. | containing names and logotypes that the issuer has no claim to. Such | |||
| certificates could be created in an attempt to socially engineer a | ||||
| user into accepting a certificate. It is thus imperative that the | ||||
| representation of any certificate that fails to validate is not | ||||
| enhanced in any way by using the logotype graphic. | ||||
| Certification path processing does not, should not, and will never be | Certification paths may also impose name constraints that are | |||
| able to control the inclusion of logotype data in certificates. That | systematically checked during certification path processing, which, | |||
| is, a parent CA may constraint subordinate CAs to only issue | in theory, may be circumvented by logotypes. | |||
| certificates to end-entities within a limited name space. A | ||||
| potentially bad CA may comply with this name constraint and still | ||||
| include a subject organization logotype. The the parent CA has no | ||||
| means of preventing logotype data inclusion since there is no | ||||
| mechanism to prevent subordinate CAs from including new extensions. | ||||
| This is not unique to the logotype extension. No technical means are | Certificate path processing does not constrain the inclusion of | |||
| provides for constraining subordinate CAs to a particular certificate | logotype data in certificates. A parent CA can constrain | |||
| profile. | certification path validation such that subordinate CAs cannot issue | |||
| valid certificates to end-entities outside a limited name space or | ||||
| outside specific certificate polices. A malicious CA can comply with | ||||
| these name and policy requirements and still include inappropriate | ||||
| logotypes in the certificates that it issues. These certificates will | ||||
| pass the certification path validation algorithm, which means the | ||||
| client will trust the logotypes in the certificates. Since there is | ||||
| no technical mechanism to prevent or control subordinate CAs from | ||||
| including the logotype extension or its contents, where appropriate, | ||||
| a parent CA could employ a legal agreement to impose a suitable | ||||
| restriction on the subordinate CA. This situation is not unique to | ||||
| the logotype extension. | ||||
| The controls available to a parent CA to protect itself from rogue | The controls available to a parent CA to protect itself from rogue | |||
| subordinate CAs are nontechnical. They include: | subordinate CAs are non-technical. They include: | |||
| - Contractual agreements of suitable behaviour, including | - Contractual agreements of suitable behavior, including | |||
| terms of liability and severance pay in case of material | terms of liability and severance pay in case of material | |||
| breach. | breach. | |||
| - Control mechanisms and procedures to monitor and | - Control mechanisms and procedures to monitor and | |||
| follow-up behaviour of subordinate CAs. | follow-up behavior of subordinate CAs. | |||
| - Use of certificate policies to declare assurance level | - Use of certificate policies to declare assurance level | |||
| of logotype data as well as to guide applications on how | of logotype data as well as to guide applications on how | |||
| to treat and display logotypes. | to treat and display logotypes. | |||
| - Use of revocation functions to revoke any misbehaving CA. | - Use of revocation functions to revoke any misbehaving CA. | |||
| This issue cannot be given an easy and absolute technical solution. | There is not a simple, straightforward, and absolute technical | |||
| Maybe the correct response is to surrender to the fact that involved | solution. Rather, involved parties must settle some aspects of PKI | |||
| parties must settle some aspects of PKI outside the scope of | outside the scope of technical controls. As such, issuers need to | |||
| technical controls, and to clearly identify and communicate the | clearly identify and communicate the associated risks. | |||
| associated risks. | ||||
| 6 References | 8. References | |||
| [STDWORDS] S. Bradner, "Key words for use in RFCs to Indicate | [FIPS 180-1] Federal Information Processing Standards Publication | |||
| Requirement Levels", March 1997. | (FIPS PUB) 180-1, Secure Hash Standard, 17 April 1995. | |||
| [Supersedes FIPS PUB 180 dated 11 May 1993.] | ||||
| [RFC 2459] R. Housley, W. Ford, W. Polk, and D.Solo, "Internet X.509 | [OLD-PKIX-1] R. Housley, W. Ford, W. Polk, and D. Solo, "Internet | |||
| Public Key Infrastructure: Certificate and CRL Profile", January | X.509 Public Key Infrastructure: Certificate and | |||
| 1999. | CRL Profile", January 1999. | |||
| 7 Intellectual Property Rights | [PKIX-1] R. Housley, W. Ford, W. Polk, and D. Solo, "Internet | |||
| X.509 Public Key Infrastructure: Certificate and | ||||
| CRL Profile", January 1999. | ||||
| {Replace with Son-of-2459 as soon as it is published.} | ||||
| [STDWORDS] S. Bradner, "Key words for use in RFCs to Indicate | ||||
| Requirement Levels", March 1997. | ||||
| 9. Intellectual Property Rights | ||||
| The IETF takes no position regarding the validity or scope of any | The IETF takes no position regarding the validity or scope of any | |||
| intellectual property or other rights that might be claimed to | intellectual property or other rights that might be claimed to | |||
| pertain to the implementation or use of the technology described in | pertain to the implementation or use of the technology described in | |||
| this document or the extent to which any license under such rights | this document or the extent to which any license under such rights | |||
| might or might not be available; neither does it represent that it | might or might not be available; neither does it represent that it | |||
| has made any effort to identify any such rights. Information on the | has made any effort to identify any such rights. Information on the | |||
| IETF's procedures with respect to rights in standards-track and | IETF's procedures with respect to rights in standards-track and | |||
| standards related documentation can be found in BCP-11. Copies of | standards related documentation can be found in BCP-11. Copies of | |||
| claims of rights made available for publication and any assurances of | claims of rights made available for publication and any assurances of | |||
| licenses to be made available, or the result of an attempt made to | licenses to be made available, or the result of an attempt made to | |||
| obtain ageneral license or permission for the use of such proprietary | obtain a general license or permission for the use of such | |||
| rights by implementors or users of this specification can be obtained | proprietary rights by implementers or users of this specification can | |||
| from the IETF Secretariat. | be obtained from the IETF Secretariat. | |||
| The IETF invites any interested party to bring to its attention any | The IETF invites any interested party to bring to its attention any | |||
| copyrights, patents or patent applications, or other proprietary | copyrights, patents or patent applications, or other proprietary | |||
| rights which may cover technology that may be required to practice | rights which may cover technology that may be required to practice | |||
| this standard. Please address the information to the IETF Executive | this standard. Please address the information to the IETF Executive | |||
| Director. | Director. | |||
| APPENDICES | APPENDICES | |||
| A. ASN.1 definitions | A. ASN.1 definitions | |||
| TBD | TBD | |||
| B. Author Addresses | B. Logotype Placement | |||
| This Appendix documents reasons and rationales behind the technical | ||||
| solution selected in this standard. | ||||
| Three alternatives for the placement of the logotypes in a | ||||
| certificate have been considered. They are: | ||||
| 1. Inclusion in a policy qualifier; | ||||
| 2. Inclusion in Issuer and Subject Alternative names extensions; and | ||||
| 3. Inclusion in a separate certificate extension. | ||||
| B.1 Qualifier | ||||
| This alternative would include logotype data as a newly defined | ||||
| policy qualifier. | ||||
| Pros: | ||||
| - This solution provides a mechanism to directly control the use and | ||||
| display of logotypes under a particular policy. | ||||
| Cons: | ||||
| - RFC <TBD> [PKIX-1] recommends against use of qualifiers. | ||||
| - This is generally considered to be a major hack and stretch of | ||||
| semantics, since this type of data doesn't qualify a policy in any | ||||
| way. | ||||
| B.2 Issuer and Subject Alt Names | ||||
| This solution would use the other name form to include the issuer and | ||||
| community logotypes in the issuer alt name extension, and subject | ||||
| organization logo in the subject alt name extension. | ||||
| Pros: | ||||
| - This mechanism could possibly enable cross-certifying CAs to deny | ||||
| any subordinate CA the right to include logotypes in descending end | ||||
| entity certificates by listing the logotypes name form in | ||||
| excludedSubtrees. | ||||
| Cons: | ||||
| - Logotypes are not a name form and should not be treated as a | ||||
| displayable name. | ||||
| - It is generally understood that it should be possible to apply | ||||
| general name constraint mechanisms (as described in RFC 2459 as | ||||
| well as RFC <TBD> [PKIX-1]) to names in the subject and issuer | ||||
| alt name extension. This is not possible to do with logotypes | ||||
| since it is not a name form. | ||||
| - This split storage of logotype data into 2 different locations, | ||||
| which may make life worse for applications with no interest in | ||||
| logotypes. | ||||
| - It is generally agreed that inclusion of logotype data by no means | ||||
| should be regarded as critical data. This may interfere with the | ||||
| criticality policy of the alt name extensions, especially if the | ||||
| certificate has no attributes in the subject field, forcing the | ||||
| subject alt name to be set to critical. | ||||
| - This usage would possibly interfere with the resolution between | ||||
| IETF and ITU-T regarding use of permitted subtrees. | ||||
| - Since this solution may break current implementations it would | ||||
| possibly block adoption of logotypes. | ||||
| B.3 New extension | ||||
| This solution places logotype data in a new extension. | ||||
| Pros: | ||||
| - This is the cleanest solution. | ||||
| - This does not impact on legacy implementations. | ||||
| Cons: | ||||
| - This solution activates the issue whether this extension may be | ||||
| abused by a CA who include logotypes (in EE certificates) that | ||||
| violates the intention of a name constraints set by a chaining CA. | ||||
| This issue is addressed in the security consideration section | ||||
| below. | ||||
| B.4 Conclusion | ||||
| We must not destroy current structures. We must not create problems | ||||
| or confusion. | ||||
| Only the private extension solution satisfies both of these criteria. | ||||
| Therefore, the private extension was selected to carry logotype | ||||
| information. | ||||
| While the syntax and semantics of the X.509 public key certificate | ||||
| were used in this analysis, the logotype private extension can also | ||||
| be included in an X.509 attribute certificate. | ||||
| C. Author Addresses | ||||
| Stefan Santesson | Stefan Santesson | |||
| AddTrust AB | AddTrust AB | |||
| P.O. Box 465 | P.O. Box 465 | |||
| S-201 24 Malmoe | S-201 24 Malmoe | |||
| Sweden | Sweden | |||
| stefan@addtrust.com | stefan@addtrust.com | |||
| Russell Housley | Russell Housley | |||
| RSA Laboratories | RSA Laboratories | |||
| 918 Spring Knoll Drive | 918 Spring Knoll Drive | |||
| Herndon, VA 20170 | Herndon, VA 20170 | |||
| USA | USA | |||
| rhousley@rsasecurity.com | rhousley@rsasecurity.com | |||
| C. Full Copyright Statement | Trevor Freeman | |||
| Microsoft Corporation | ||||
| One Microsoft Way | ||||
| Redmond WA 98052 | ||||
| USA | ||||
| trevorf@microsoft.com | ||||
| D. Full Copyright Statement | ||||
| Copyright (C) The Internet Society (2002). All Rights Reserved. | Copyright (C) The Internet Society (2002). All Rights Reserved. | |||
| This document and translations of it may be copied and furnished to | This document and translations of it may be copied and furnished to | |||
| others, and derivative works that comment on or otherwise explain it | others, and derivative works that comment on or otherwise explain it | |||
| or assist in its implementation may be prepared, copied, published | or assist in its implementation may be prepared, copied, published | |||
| and distributed, in whole or in part, without restriction of any | and distributed, in whole or in part, without restriction of any | |||
| kind, provided that the above copyright notice and this paragraph | kind, provided that the above copyright notice and this paragraph are | |||
| are included on all such copies and derivative works. In addition, | included on all such copies and derivative works. In addition, the | |||
| the ASN.1 modules presented in Appendices A and B may be used in | ASN.1 modules presented in Appendices A and B may be used in whole or | |||
| whole or in part without inclusion of the copyright notice. | in part without inclusion of the copyright notice. However, this | |||
| However, this document itself may not be modified in any way, such | document itself may not be modified in any way, such as by removing | |||
| as by removing the copyright notice or references to the Internet | the copyright notice or references to the Internet Society or other | |||
| Society or other Internet organizations, except as needed for the | Internet organizations, except as needed for the purpose of | |||
| purpose of developing Internet standards in which case the | developing Internet standards in which case the procedures for | |||
| procedures for copyrights defined in the Internet Standards process | copyrights defined in the Internet Standards process shall be | |||
| shall be followed, or as required to translate it into languages | followed, or as required to translate it into languages other than | |||
| other than English. | English. | |||
| The limited permissions granted above are perpetual and will not be | The limited permissions granted above are perpetual and will not be | |||
| revoked by the Internet Society or its successors or assigns. This | revoked by the Internet Society or its successors or assigns. This | |||
| document and the information contained herein is provided on an "AS | document and the information contained herein is provided on an "AS | |||
| IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK | IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK | |||
| FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT | FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT | |||
| NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN | LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL | |||
| WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF | NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY | |||
| MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. | OR FITNESS FOR A PARTICULAR PURPOSE. | |||
| End of changes. 93 change blocks. | ||||
| 327 lines changed or deleted | 445 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||