⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 draft-ietf-pkix-new-part1-asn1-01.txt

📁 PKIX的RFC英文文档
💻 TXT
📖 第 1 页 / 共 3 页
字号:
PKIX Working Group                         R. Housley (RSA Laboratories)Internet Draft                                            W. Polk (NIST)draft-ietf-pkix-new-part1-asn1-01.txt                         April 2002Expires in six months                        Update for Appendix A in                    draft-ietf-pkix-new-part1-12.txtStatus of this Memo   This document is an Internet-Draft and is in full conformance with   all provisions of Section 10 of RFC2026.  Internet-Drafts are working   documents of the Internet Engineering Task Force (IETF), its areas,   and its working groups.  Note that other groups may also distribute   working documents as Internet-Drafts.   Internet-Drafts are draft documents valid for a maximum of six months   and may be updated, replaced, or obsoleted by other documents at any   time.  It is inappropriate to use Internet- Drafts as reference   material or to cite them other than as "work in progress."     The list of current Internet-Drafts can be accessed at     http://www.ietf.org/1id-abstracts.html     The list of Internet-Draft Shadow Directories can be accessed at     http://www.ietf.org/shadow.html   Copyright (C) The Internet Society (2002).  All Rights Reserved.Abstract   As all members of the PKIX Working Group know, draft-ietf-pkix-new-   part1-12.txt is with the RFC Editor.  However, an error in the ASN.1   modules was discovered.  The authors are working with the RFC Editor   to ensure that the corrected ASN.1 modules are included in the final   text, and we are publishing this Internet-Draft to distribute the   corrected ASN.1 modules as quickly as possible.   This Internet-Draft contains only the updated Appendix.Housley & Polk                                                  [Page 1]INTERNET DRAFT                                                April 2002Appendix A.  Psuedo-ASN.1 Structures and OIDs   This section describes data objects used by conforming PKI components   in an "ASN.1-like" syntax.  This syntax is a hybrid of the 1988 and   1993 ASN.1 syntaxes.  The 1988 ASN.1 syntax is augmented with 1993   UNIVERSAL Types UniversalString, BMPString and UTF8String.   The ASN.1 syntax does not permit the inclusion of type statements in   the ASN.1 module, and the 1993 ASN.1 standard does not permit use of   the new UNIVERSAL types in modules using the 1988 syntax.  As a   result, this module does not conform to either version of the ASN.1   standard.   This appendix may be converted into 1988 ASN.1 by replacing the   definitions for the UNIVERSAL Types with the 1988 catch-all "ANY".A.1 Explicitly Tagged Module, 1988 SyntaxPKIX1Explicit88 { iso(1) identified-organization(3) dod(6) internet(1)  security(5) mechanisms(5) pkix(7) id-mod(0) id-pkix1-explicit(18) }DEFINITIONS EXPLICIT TAGS ::=BEGIN-- EXPORTS ALL ---- IMPORTS NONE ---- UNIVERSAL Types defined in 1993 and 1998 ASN.1-- and required by this specificationUniversalString ::= [UNIVERSAL 28] IMPLICIT OCTET STRING        -- UniversalString is defined in ASN.1:1993BMPString ::= [UNIVERSAL 30] IMPLICIT OCTET STRING      -- BMPString is the subtype of UniversalString and models      -- the Basic Multilingual Plane of ISO/IEC/ITU 10646-1UTF8String ::= [UNIVERSAL 12] IMPLICIT OCTET STRING      -- The content of this type conforms to RFC 2279.-- PKIX specific OIDsid-pkix  OBJECT IDENTIFIER  ::=         { iso(1) identified-organization(3) dod(6) internet(1)                    security(5) mechanisms(5) pkix(7) }Housley & Polk                                                  [Page 2]INTERNET DRAFT                                                April 2002-- PKIX arcsid-pe OBJECT IDENTIFIER  ::=  { id-pkix 1 }     -- arc for private certificate extensionsid-qt OBJECT IDENTIFIER ::= { id-pkix 2 }     -- arc for policy qualifier typesid-kp OBJECT IDENTIFIER ::= { id-pkix 3 }     -- arc for extended key purpose OIDSid-ad OBJECT IDENTIFIER ::= { id-pkix 48 }     -- arc for access descriptors-- policyQualifierIds for Internet policy qualifiersid-qt-cps      OBJECT IDENTIFIER ::=  { id-qt 1 }      -- OID for CPS qualifierid-qt-unotice  OBJECT IDENTIFIER ::=  { id-qt 2 }      -- OID for user notice qualifier-- access descriptor definitionsid-ad-ocsp         OBJECT IDENTIFIER ::= { id-ad 1 }id-ad-caIssuers    OBJECT IDENTIFIER ::= { id-ad 2 }id-ad-timeStamping OBJECT IDENTIFIER ::= { id-ad 3 }id-ad-caRepository OBJECT IDENTIFIER ::= { id-ad 5 }-- attribute data typesAttribute ::=  SEQUENCE {      type          AttributeType,      values   SET OF AttributeValue }            -- at least one value is requiredAttributeType       ::=  OBJECT IDENTIFIERAttributeValue      ::=  ANYAttributeTypeAndValue         ::=  SEQUENCE {     type AttributeType,     value     AttributeValue }-- suggested naming attributes: Definition of the following--   information object set may be augmented to meet local--   requirements.  Note that deleting members of the set may--   prevent interoperability with conforming implementations.-- presented in pairs: the AttributeType followed by the--   type definition for the corresponding AttributeValueHousley & Polk                                                  [Page 3]INTERNET DRAFT                                                April 2002--Arc for standard naming attributesid-at OBJECT IDENTIFIER ::= { joint-iso-ccitt(2) ds(5) 4 }-- Naming attributes of type X520nameid-at-name              AttributeType ::= { id-at 41 }id-at-surname           AttributeType ::= { id-at 4 }id-at-givenName         AttributeType ::= { id-at 42 }id-at-initials          AttributeType ::= { id-at 43 }id-at-generationQualifier AttributeType ::= { id-at 44 }X520name ::= CHOICE {      teletexString     TeletexString   (SIZE (1..ub-name)),      printableString   PrintableString (SIZE (1..ub-name)),      universalString   UniversalString (SIZE (1..ub-name)),      utf8String        UTF8String      (SIZE (1..ub-name)),      bmpString         BMPString       (SIZE (1..ub-name)) }-- Naming attributes of type X520CommonNameid-at-commonName        AttributeType ::= { id-at 3 }X520CommonName ::= CHOICE {      teletexString     TeletexString   (SIZE (1..ub-common-name)),      printableString   PrintableString (SIZE (1..ub-common-name)),      universalString   UniversalString (SIZE (1..ub-common-name)),      utf8String        UTF8String      (SIZE (1..ub-common-name)),      bmpString         BMPString       (SIZE (1..ub-common-name)) }-- Naming attributes of type X520LocalityNameid-at-localityName      AttributeType ::= { id-at 7 }X520LocalityName ::= CHOICE {      teletexString     TeletexString   (SIZE (1..ub-locality-name)),      printableString   PrintableString (SIZE (1..ub-locality-name)),      universalString   UniversalString (SIZE (1..ub-locality-name)),      utf8String        UTF8String      (SIZE (1..ub-locality-name)),      bmpString         BMPString       (SIZE (1..ub-locality-name)) }-- Naming attributes of type X520StateOrProvinceNameid-at-stateOrProvinceName AttributeType ::= { id-at 8 }Housley & Polk                                                  [Page 4]INTERNET DRAFT                                                April 2002X520StateOrProvinceName ::= CHOICE {      teletexString     TeletexString   (SIZE (1..ub-state-name)),      printableString   PrintableString (SIZE (1..ub-state-name)),      universalString   UniversalString (SIZE (1..ub-state-name)),      utf8String        UTF8String      (SIZE (1..ub-state-name)),      bmpString         BMPString       (SIZE(1..ub-state-name)) }-- Naming attributes of type X520OrganizationNameid-at-organizationName  AttributeType ::= { id-at 10 }X520OrganizationName ::= CHOICE {      teletexString     TeletexString                          (SIZE (1..ub-organization-name)),      printableString   PrintableString                          (SIZE (1..ub-organization-name)),      universalString   UniversalString                          (SIZE (1..ub-organization-name)),      utf8String        UTF8String                          (SIZE (1..ub-organization-name)),      bmpString         BMPString                          (SIZE (1..ub-organization-name))  }-- Naming attributes of type X520OrganizationalUnitNameid-at-organizationalUnitName AttributeType ::= { id-at 11 }X520OrganizationalUnitName ::= CHOICE {      teletexString     TeletexString                          (SIZE (1..ub-organizational-unit-name)),      printableString   PrintableString                          (SIZE (1..ub-organizational-unit-name)),      universalString   UniversalString                          (SIZE (1..ub-organizational-unit-name)),      utf8String        UTF8String                          (SIZE (1..ub-organizational-unit-name)),      bmpString         BMPString                          (SIZE (1..ub-organizational-unit-name)) }-- Naming attributes of type X520Titleid-at-title             AttributeType ::= { id-at 12 }Housley & Polk                                                  [Page 5]INTERNET DRAFT                                                April 2002X520Title ::= CHOICE {      teletexString     TeletexString   (SIZE (1..ub-title)),      printableString   PrintableString (SIZE (1..ub-title)),      universalString   UniversalString (SIZE (1..ub-title)),      utf8String        UTF8String      (SIZE (1..ub-title)),      bmpString         BMPString       (SIZE (1..ub-title)) }-- Naming attributes of type X520dnQualifierid-at-dnQualifier       AttributeType ::= { id-at 46 }X520dnQualifier ::=     PrintableString-- Naming attributes of type X520countryName (digraph from IS 3166)id-at-countryName       AttributeType ::= { id-at 6 }X520countryName ::=     PrintableString (SIZE (2))-- Naming attributes of type X520SerialNumberid-at-serialNumber      AttributeType ::= { id-at 5 }X520SerialNumber ::=    PrintableString (SIZE (1..ub-serial-number))-- Naming attributes of type X520Pseudonymid-at-pseudonym         AttributeType ::= { id-at 65 }X520Pseudonym ::= CHOICE {   teletexString     TeletexString   (SIZE (1..ub-pseudonym)),   printableString   PrintableString (SIZE (1..ub-pseudonym)),   universalString   UniversalString (SIZE (1..ub-pseudonym)),   utf8String        UTF8String      (SIZE (1..ub-pseudonym)),   bmpString         BMPString       (SIZE (1..ub-pseudonym)) }-- Naming attributes of type DomainComponent (from RFC 2247)id-domainComponent      AttributeType ::=                          { 0 9 2342 19200300 100 1 25 }DomainComponent ::=     IA5String-- Legacy attributespkcs-9 OBJECT IDENTIFIER ::=       { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 9 }Housley & Polk                                                  [Page 6]INTERNET DRAFT                                                April 2002id-emailAddress          AttributeType ::= { pkcs-9 1 }EmailAddress ::=         IA5String (SIZE (1..ub-emailaddress-length))-- naming data types --Name ::= CHOICE { -- only one possibility for now --      rdnSequence  RDNSequence }RDNSequence ::= SEQUENCE OF RelativeDistinguishedNameDistinguishedName ::=   RDNSequenceRelativeDistinguishedName  ::=                    SET SIZE (1 .. MAX) OF AttributeTypeAndValue-- Directory string type --DirectoryString ::= CHOICE {      teletexString      TeletexString   (SIZE (1..MAX)),      printableString         PrintableString (SIZE (1..MAX)),      universalString         UniversalString (SIZE (1..MAX)),      utf8String              UTF8String      (SIZE (1..MAX)),      bmpString               BMPString       (SIZE (1..MAX)) }-- certificate and CRL specific structures begin hereCertificate  ::=  SEQUENCE  {     tbsCertificate       TBSCertificate,     signatureAlgorithm   AlgorithmIdentifier,     signature            BIT STRING  }TBSCertificate  ::=  SEQUENCE  {     version         [0]  Version DEFAULT v1,     serialNumber         CertificateSerialNumber,     signature            AlgorithmIdentifier,     issuer               Name,     validity             Validity,     subject              Name,     subjectPublicKeyInfo SubjectPublicKeyInfo,     issuerUniqueID  [1]  IMPLICIT UniqueIdentifier OPTIONAL,                          -- If present, version MUST be v2 or v3     subjectUniqueID [2]  IMPLICIT UniqueIdentifier OPTIONAL,                          -- If present, version MUST be v2 or v3     extensions      [3]  Extensions OPTIONAL                          -- If present, version MUST be v3 --  }Version  ::=  INTEGER  {  v1(0), v2(1), v3(2)  }Housley & Polk                                                  [Page 7]INTERNET DRAFT                                                April 2002CertificateSerialNumber  ::=  INTEGERValidity ::= SEQUENCE {     notBefore      Time,     notAfter       Time  }Time ::= CHOICE {     utcTime        UTCTime,     generalTime    GeneralizedTime }UniqueIdentifier  ::=  BIT STRINGSubjectPublicKeyInfo  ::=  SEQUENCE  {     algorithm            AlgorithmIdentifier,     subjectPublicKey     BIT STRING  }Extensions  ::=  SEQUENCE SIZE (1..MAX) OF ExtensionExtension  ::=  SEQUENCE  {     extnID      OBJECT IDENTIFIER,     critical    BOOLEAN DEFAULT FALSE,     extnValue   OCTET STRING  }-- CRL structuresCertificateList  ::=  SEQUENCE  {     tbsCertList          TBSCertList,     signatureAlgorithm   AlgorithmIdentifier,     signature            BIT STRING  }TBSCertList  ::=  SEQUENCE  {     version                 Version OPTIONAL,                                  -- if present, MUST be v2     signature               AlgorithmIdentifier,     issuer                  Name,     thisUpdate              Time,     nextUpdate              Time OPTIONAL,     revokedCertificates     SEQUENCE OF SEQUENCE  {          userCertificate         CertificateSerialNumber,          revocationDate          Time,          crlEntryExtensions      Extensions OPTIONAL                                         -- if present, MUST be v2                               }  OPTIONAL,     crlExtensions           [0] Extensions OPTIONAL }                                         -- if present, MUST be v2-- Version, Time, CertificateSerialNumber, and Extensions were-- defined earlier for use in the certificate structureHousley & Polk                                                  [Page 8]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -