Skip to main content

1. Introduction (简介)

本规范是互联网X.509公钥基础设施 (Public Key Infrastructure, PKI) 标准系列的一部分.

本规范为互联网PKI定义了证书 (Certificates) 和证书撤销列表 (Certificate Revocation Lists, CRLs) 的格式和语义的配置文件 (Profile). 描述了在互联网环境中处理证书路径 (Certification Paths) 的过程. 最后, 在附录中为所有已定义或引用的数据结构提供了ASN.1模块.

第2章描述了互联网PKI的需求和影响本文档范围的假设. 第3章介绍了架构模型, 并描述了其与以前的IETF和ISO/IEC/ITU-T标准的关系. 特别是, 描述了本文档与IETF PEM规范和ISO/IEC/ITU-T X.509文档的关系.

第4章定义了X.509版本3证书的配置文件, 第5章定义了X.509版本2 CRL的配置文件. 这些配置文件包括识别在互联网PKI中可能有用的ISO/IEC/ITU-T和ANSI扩展. 配置文件使用1988年的抽象语法标记一 (Abstract Syntax Notation One, ASN.1), 而非最新ISO/IEC/ITU-T标准中使用的1997年ASN.1语法.

第6章包括证书路径验证过程. 这些过程基于ISO/IEC/ITU-T的定义. 实现必须 (REQUIRED) 得出相同的结果, 但不必 (not required) 使用指定的过程.

公钥材料和数字签名的识别和编码过程定义在 [RFC3279], [RFC4055] 和 [RFC4491] 中. 本规范的实现不必 (not required) 使用任何特定的加密算法. 但是, 使用 [RFC3279], [RFC4055] 和 [RFC4491] 中识别的算法的符合性实现必须 (MUST) 按照这些规范中描述的方式识别和编码公钥材料和数字签名.

最后, 提供了三个附录来帮助实现者. 附录A包含本规范中定义或引用的所有ASN.1结构. 如上所述, 材料使用1988年ASN.1表示. 附录B包含关于本规范中使用的ASN.1标记法中较不熟悉特性的说明. 附录C包含符合性证书和符合性CRL的示例.

本规范与RFC 3280的差异

本规范废止 (obsoletes) [RFC3280]. 与RFC 3280的差异总结如下:

  • 增强的国际化名称支持: 第7章中规定了对国际化名称的增强支持, 包括编码和比较国际化域名 (Internationalized Domain Names), 国际化资源标识符 (Internationalized Resource Identifiers, IRIs) 和可分辨名称 (Distinguished Names) 的规则. 这些规则与当前RFC中建立的比较规则保持一致, 包括 [RFC3490], [RFC3987] 和 [RFC4518].

  • 传统文本编码方案: 第4.1.2.4节和第4.1.2.6节纳入了 [RFC4630] 中规定的继续使用传统文本编码方案的条件. 在已建立的PKI中使用时, 转换到UTF8String可能会基于名称链接失败或名称约束的不正确处理而导致拒绝服务.

  • 移除privateKeyUsagePeriod扩展: RFC 3280中的第4.2.1.4节规定了privateKeyUsagePeriod证书扩展但废弃了其使用, 该节已被移除. 在互联网PKI中, 既不废弃也不推荐使用此ISO标准扩展.

  • 策略映射扩展: 第4.2.1.5节推荐 (recommends) 将策略映射 (Policy Mappings) 扩展标记为关键 (critical). RFC 3280要求 (required) 将策略映射扩展标记为非关键 (non-critical).

  • 策略约束扩展: 第4.2.1.11节要求 (requires) 将策略约束 (Policy Constraints) 扩展标记为关键. RFC 3280允许将策略约束扩展标记为关键或非关键.

  • AIA CRL扩展: 添加了 [RFC4325] 中规定的授权信息访问 (Authority Information Access, AIA) CRL扩展, 作为第5.2.7节.

  • CRL扩展处理规则: 第5.2节和第5.3节分别澄清了处理无法识别的CRL扩展和CRL条目扩展的规则.

  • 移除holdInstructionCode扩展: RFC 3280中的第5.3.2节规定了holdInstructionCode CRL条目扩展, 该节已被移除.

  • 路径验证算法: 第6章中规定的路径验证算法不再跟踪证书链中证书策略扩展的关键性. 在RFC 3280中, 此信息返回给依赖方.

  • 安全考虑: 安全考虑章节讨论了在CRL分发点 (CRL Distribution Points), 授权信息访问 (Authority Information Access) 或主体信息访问 (Subject Information Access) 扩展中使用https或类似方案可能产生的循环依赖风险.

  • 名称歧义风险: 安全考虑章节讨论了与名称歧义相关的风险.

  • CA操作变更: 安全考虑章节引用RFC 4210, 用于发出CA操作变更信号的过程.

附录A中的ASN.1模块与RFC 3280保持不变, 除了将ub-emailaddress-length从128更改为255, 以与PKCS #9 [RFC2985] 保持一致.

RFC 2119关键词

本文档中的关键词"MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY"和"OPTIONAL"应按照 [RFC2119] 中描述的方式解释.

  • MUST / REQUIRED / SHALL: 必须 (绝对要求)
  • MUST NOT / SHALL NOT: 禁止 (绝对禁止)
  • SHOULD / RECOMMENDED: 应该 (强烈建议但非必需)
  • SHOULD NOT / NOT RECOMMENDED: 不应该 (强烈不建议但非禁止)
  • MAY / OPTIONAL: 可以 (允许但可选)