1、道自ICS 35.040 L 80 和国国家标准11: _,.、中华人民GB/T 29243-2012 信息安全技术数字证书代理认证路径构造和代理验证规范Information security technology-Specifications of delegated certification path construction and delegated validation for digital certificate 2013-06-01实施2012-12-31发布发布中华人民共和国国家质量监督检验检菠总局中国国家标准化管理委员会也飞J叫什沪的叫门路可/川咆MGB/T 29243
2、一2012目次前言E引言.N 1 范围.2 规范性引用文件-3 术语和定义.4 缩略语.2 5 代理服务.25.1 服务基本模式.2 5.2 代理认证路径构造.2 5.3 代理验证.3 5.4 代理服务策略.3 6 代理服务协议要求.4 6.1 概述.4 6.2 代理认证路径构造协议要求.4 6.3 代理验证协议要求.56.4 策略查询协议要求.6 7 代理服务协议.6 7.1 基本请求/响应消息.6 7.2 策略配置请求/响应消息.26 附录A(资料性附录代理服务基本原理.31 A.1 概述.31 A. 2 数字证书代理认证路径构造.31 A.3 数字证书代理验证.31I 前_._ 在=E司
3、本标准按照GB/T1. 1-2009给出的规则起草。本标准由全国信息安全标准化技术委员会(SAC/TC260)提出并归口,本标准起草单位:中国科学院数据与通信保护研究教育中心。本标准主要起草人z夏鲁宁、王琼霄、荆继武、林琦锵、向继。本标准为首次制定。GB/T 29243-2012 皿GB/T 29243-2012 I 随着中华人民共和国电子签名法的推广,我国的电子认证服务业和PKI系统的建设应用也进入了新的发展阶段。同时,随着互联网的进一步发展,更多类型的终端接人网络。对于某些类型的终端,如手机、传感器等,由于其计算或通信资源的限制,难以独立完成证书认证路径构造或证书验证,需要PKI系统提供代
4、理服务来协助完成上述两种任务。对于PKI依赖方来说,证书认证路径构造和证书验证是必要的过程,但是该过程中所需要的证书查找、撤销信息查找、证书/CRL验证计算等,需要较大的带宽和计算资源消耗,在计算或通信资源受限的环境下会有不同程度的困难b代理技术是解决上述困难的重要方法,将证书认证路径构造或证书验证委托给代理服务器,能够大大减轻PKI客户端的计算负担和通信消耗。代理认证路径构造和代理验证是两种安全等级不一样的代理服务。对于代理认证路径构造,代理服务器返回验证该证书所需要的完整路径(包括证书链、CRL、OCSP通信消息等),然后由客户端自己进行验证。这种方式下可以明显减少客户端的通信消耗,且不要
5、求客户端信任服务器;对于代理验证,代理服务器直接返回被验证的证书是否有效。这种方式F客户端的计算负担和通信消起都明显减少,但客户端应信任代理服务器。为了满足不同交易的安全等级需求,一般要求PKI系统同时提供这两种不同的服务。本标准将定义代理认证路径构造和代理验证两种服务的概念和协议要求,并根据协议要求给出一种标准化的客户端和服务器交互的代理服务协议。N GB/T 29243-2012 1 范围信息安全技术数字证书代理认证路径构造和代理验证规范本标准规定了数字证书代理认证路径构造和代理验证两种服务的概念和协议要求,以及满足协议要求的代理服务协议。本标准适用于PKI系统运营机构的代理认证路径构造和
6、代理验证服务的实现和应用。2 规范性引用文件下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB/T 16263.1 2006 信息技术ASN.1编码规则第1部分=基本编码规则(BE町、正则编码规则(CER)和非典型编码规则(DER)规范GB/T 16264.8-2005 信息技术开放系统互连目录第8部分z公钥和属性证书框架RFC3852 密码消息语法(CryptographicMessage Syntax,CMS) 3 术语和定义3. 1 3.2 3.3 3.4 3.5 3.6 GB/
7、T 16264.8-2005界定的以及以下术语和定义适用于本文件。数字证书代理验证delegated validation for digital certificate 由代理服务器为PKI依赖方实现数字证书验证的过程。代理验证delegated validation 在本标准范围内,与数字证书代理验证同义。数字证书代理认证路径构造del电.atedcertification path construction for digital certificate 由代理服务器为PKI依赖方实现数字证书认证路径构造的过程。代理认证路径构造delegated certification path c
8、onstruction 在本标准范围内,与数字证书代理认证路径构造同义。代理验证策略del唔;atedvalidation policy 表达代理验证应如何执行的一系列规则。代理认证路径构造策略delegated certification path construction policy 表达代理认证路径构造应如何执行的一系列规则。1 G/T 29243-2012 4 缩暗语下列缩略语适用于本文件。ASN.l 抽象语法标记1(Abstract Syntax Notation One) CA 证书认证机构(CertificationAuthority) CRL 证书撤销员l表(Certific
9、ateRevocation List) FTP 文件传输协议(FileTransfer Protocol) HTTP 超文本传输协议(HyperTextTransfer Protocol) LDAP 轻量级目录访问协议(LightweightDirectory Access Protocol) MAC 消息鉴别码(Me阻碍eAuthentication Code) OCSP 在线证书状态协议(OnlineCertificate Status Protocol) OID 对象标识符(Obj四tIdentifier) PDA 个人数字助理(PersonalDigital Assistant) PK
10、I 公钥基础设施(PublicKey Infrastructure) PKIX IETF的安全领域的公钥墓础设施工作组(Public-K町Infrastructurefor X. 509) 5 代理服务5. 1 服务基本模式本标准定义的代理服务采用客户机/服务器模式,通过请求/响应消息对进行,即客户端依照自身需要,构建请求淌息,并发往服务器端;服务器端接收容户踹的请求消息,提取出请求消息中的具体服务要求并进行相应的处理,最后将处理结果通过响应消息返国给客户端,这就是一次代理服务的全过程。附录A给出了关于代理服务基本原理的细节表述。在实际环撞中,客户端与服务器端的通信过程可能会受到各种类型的攻击
11、,比如伪造消息、篡改消息等,这可能会给代理服务带来严重的影响。因而在客户端与服务器端通信的过程中,应对消息进行保护。通常情况下,可以采取的方式有数字签名和消息鉴别码(MAC),客户端和服务器端根据实际需要选择消息保护类型。根据服务器端的可信程度的不同,将其划分为可信、不必可信两种情况e每种情况下,服务器端可以提供相应信任程度的代理服务。本标准中规定了两种不同类型的代理服务z代理认证路径构造和代理验证。下面对两种代理服务分别进行说明。5.2 代理认证路径构造在代理认证路径构造服务中,服务器端对于客户端不必是可信的。在代理认证路径构造服务中,客户端在请求消息中提交需要构造认证路径的终端实体证书或对
12、证书的引用,并可选地包含要求采用的代理认证路径构造策略(参见5.的。服务器端接收到客户端的请求消息后,提取其中的证书和要求采用的代理认证路径构造策略,进行证书认证路径的构造z如果客户端的请求消息中没有包含对代理认证路径构造策略的要求,则服务器端依照自身的默认代理认证路径构造策略进行证书认证路径构造。通过响应消息,服务器端将构造好的证书认证路径或者错误信息返回给客户端。在代理认证路径构造服务中,客户端对于服务器端返回的证书认证路径构造结果需要进一步验证,才能确定证书的有效性。GB/T 29243-2012 5.3 代理验证在代理验证服务中,服务器端对于客户端是可信的。在代理验证服务中,客户端需要
13、在请求消息中包含待验证的终端实体证书或对证书的引用,并可选地包含要求采用的代理验证策略(参见5.4.2)。服务器端接收到客户端的请求消息后,提取出其中的待验证证书和客户端要求采用的代理验证策略,根据这些信息进行证书认证路径的构造以及证书验证,并将验证结果或错误信息通过响应消息返回给客户端。如果客户端请求消息中未包含对代理验证策略的要求,则服务器端采用默认的代理验证策略为客户端提供代理验证服务。5.4 代理服务策略5.4.1 代理认证路径构造策略代理认证路径构造策略是一系列规则,用于表达代理认证路径构造应如何执行。代理认证路径构造策略是代理验证策略(参见5.4.2)的一个子集,可以直接引用代理验
14、证策略来表达代理认证路径构造策略,也可以从代理验证策略中提取一些主要元素(如信任铺)而形成代理认证路径构造策略。代理认证路径构造服务的客户端需要自行验证证书,因此它可以在本地应用一些对证书认证路径的验证要求,从而使代理认证路径构造策略更为简单。代理认证路径构造策略由以下三部分构成za) 对证书认证路径的要求:b) 对撤销的要求;c) 对终端实体证书的要求。这些要求的含义与代理验证策略所定义的一致,参见5.4.2。5.4.2 代理验证策略代理验证策略是一系列规则,用于表达代理验证应如何执行。代理验证策略可以包含若干个信任锚。一个信任锚由一个公钥、一个CA名称及一个有效期来定义,并可选地包含其他约
15、束。通常使用CA的自签名证书来表示一个信任锚。对每个信任锚可能会定义其他的约束,例如证书策略约束或命名约束。代理验证策略可以指定针对证书认证路径的另外一些条件,如可为证书认证路径的验证算法提供特定的输人值。代理验证策略还可以指定应用于终端实体证书的其他条件,例如对终端实体命名格式提出要求。为了成功完成证书验证,一个终端实体与一个信任锚之间应能够找到一个有效的证书认证路径。这意味着路径中的任何证书都没有过期或被撤销,且所有应用于证书认证路径的约束都应得到满足。代理验证策略由以下三个部分构成za) 证书认证路径要求证书认证路径要求包括一系列信任锚,这些信任铺被用于构造证书认证路径z还包括一些用于证
16、书验证的初始条件,这些条件在GB/T16264. 82005中定义。b) 证书撤销要求证书撤销信息可以通过CRL、增量CRL或OCSP响应获得。证书撤销要求针对终端实体证书及CA证书指定。对终端实体证书的撤销要求可能与对CA证书的撤销要求不同,例如对终端实体证书要求其撤销信息尽可能是最新版本,因此可能需要一个OCSP响应z而对CA证书,CRLs可能就已经足够了。代理验证策略应指明获取撤销信息的方式,可能采用的方式有以下几种=3 GB/T 29243-2012 1) 收集完整的CRLs;2) 使用OCSP查询撤销信息,并获得OCSP响应z3) 收集增量CRLs(deltaCRLs)及相关的完整的
17、CRLs;O 收集任何可用的撤销信息;5) 无需收集撤销信息。c) 终端实体证书要求代理验证策略可以要求终端实体证书包含特定的扩展,例如要求终端实体证书中包含证书用途扩展。6 代理服务协议要求6. 1 概述本章指定了对客户端与代理服务器之间通信协议的设计要求,本标准的第7章给出了一种满足本章定义的协议要求的代理服务协议,第三方组织也可以遵照本标准设计其他代理服务协议。如果第三方组织遵照本标准设计代理服务协议,则应满足本章所指定的协议要求。代理服务器所提供的两种服务中,存在三种请求/响应对,用于客户端与服务器之间的通信,以完成相应的代理服务功能。a) 代理认证路径构造请求/响应对z客户端向代理服
18、务器发出代理认证路径构造请求,从而可以从服务器获得用于本地证书验证的全部信息,如终端实体证书、CA证书、完整的CRLs、增量CRLs和OCSP信息等。服务器参照客户端要求的或自身默认的代理认证路径构造策略执行代理认证路径构造并通过响应返回已构造的证书认证路径或错误信息。b) 代理验证请求/响应对z客户端向代理服务器发出代理验证请求,代理服务器参照客户端要求的或自身默认的代理验证策略执行代理验证,并通过响应消息返回验证结果或错误信息。c) 策略查询请求/响应对z客户端向代理服务器发出请求,服务器返回其所支持的代理认证路径构造策略或代理验证策略。6.2 代理认证路径构造协议要求代理认证路径构造协议
19、允许客户端请求服务器收集当前时间下可用的用于本地证书验证的数据元素。根据代理认证路径构造策略,这些数据可以通过各种不同的协议(如LDAP,HTTP,FTP或OCSP)或者通过向多个服务器请求来获得。返回的信息可以用于在当前时间下对一个或多个证书的验证。客户端应能够明确指定除证书认证路径之外,他们是否还需要终端实体证书和/或CA证书的撤销信息。若代理认证路径构造服务器不支持客户端请求中指定的代理认证路径构造策略,服务器应返回错误信息。代理认证路径构造服务器响应包含0个、1个或多个证书认证路径。每个路径由一组证书构成,从待验证的终端实体证书开始,以信任铺结束。若信任锚是一个自签名证书,则不包含在证
20、书认证路径中。此外,若有需求,每个证书相关的撤销信息应在响应中返回。默认情况下,代理认证路径构造服务器应为代理认证路径构造请求中的每个终端实体证书返回单个证书认证路径。返回的路径可能需要满足一些客户端提出的要求,如客户端可能要求特殊的证书扩展或名称格式。因此,代理认证路径构造服务器应具有能够为代理认证路径构造请求中的每个终端实体证书获取不止一个证书认证路径的方法。认证路径构造应按照代理认证路径构造策略进行。代理认证路径构造响应应对以下任一种状态进行说明z4 GB/T 29243-2012 a) 根据代理认证路径构造策略,一个或多个证书认证路径被构造,且具备全部被要求的撤销信息zb) 根据代理认
21、证路径构造策略,一个或多个证书认证路径被构造,仅具有部分被要求的撤销信息;c) 根据代理认证路径构造策略,一个或多个证书认证路径被构造,不具备任何被要求的撤销信息zd) 根据代理认证路径构造策略,无法构造证书认证路径zd 路径构造失败,有错误产生。若无错误产生,返回的响应消息由一个或多个证书认证路径组成。若有需求,证书认证路径中的每个证书相关的撤销信息也包含在响应消息中。为使客户端能够确认响应中的全部元素都是由期望的代理认证路径构造服务器完成的,可能需要一个可鉴别的响应,例如服务器可能对响应签名或通过底层安全协议实现鉴别。这种鉴别是可选的。6.3 代理验证协议要求6.3. 1 基本协议代理验证
22、协议中,根据代理验证策略,服务器可以为客户端验证一个或多个证书的有效性。若代理服务器不支持客户端指定的代理验证策略,服务器应返回一个错误信息。若客户端未指定代理验证策略,服务器响应消息中应说明处理请求所采用的代理验证策略。有些代理验证策略的部分参数是可设置的,协议应允许客户端在请求中包含对这些策略相关参数的设置。客户端请求可以指定任意的验证时间,服务器应对客户端请求的验证时间获取相应的撤销状态信息。代理验证服务器可能使用各种资源获得撤销状态信息,如OCSP、CRLs、增量CRLs以及来自其他代理服务器的响应消息。在请求所指定的验证时间,若撤销状态信息不可用,服务器应在响应消息中说明证书元效,服
23、务器也可以在响应中包含其他信息说明具体原因。客户端请求中应包含待验证的证书或证书的引用。代理验证服务器处理客户端请求时应具有待验证的证书,若客户端请求中只提供了对待验证证书的引用,服务器应获取待验证证书并确认它是客户端请求中证书引用所对应的证书。代理验证服务器应在响应消息中包含待验证证书或对它的引用。代理验证响应消息应说明以下状态信息的任一种情况za) 根据代理验证策略,证书有效zb) 根据代理验证策略,证书元效zc) 根据代理验证策略,证书的有效性不可知zd) 由于某些错误,证书的有效性无法确定。若证书元效,服务器响应中应说明具体原因za) 代理验证服务器元法确定证书的有效性,因为无法构造证
24、书认证路径。b) 代理验证服务器成功地构造了一个证书认证路径,但是根据GB/T16264. 8-2005中的验证算法,此路径元效。c) 证书在当前验证时间无效。若稍后有另一个请求,证书可能被判定为有效的。在证书的一个有效期之前或是证书被挂起的时候,会产生这种情况。协议应能够防止重放攻击,重放攻击的防范应不能依赖于同步时钟。代理验证服务器应能够将客户端在请求中提供的文本域复制到服务器响应中。代理验证响应应与对应的请求绑定,这样客户端能够确认请求中的全部参数在服务器构建响应时都被充分考虑。应允许客户端在请求消息中要求服务器响应包含其他信息,以便不信任代理验证服务GB/T 29243-2012 器的
25、依赖方能够确信证书有效性验证被正确地执行。若客户端请求附加此类信息,当证书被验证有效时,响应消息中应包含这些信息E证书验证元效或无法确定证书状态时,响应消息中可以不包含这些信息。在某些情况下,代理验证响应会被转发给其他依赖方,此时为了确保响应与请求的绑定,响应应是自包含的,即响应中包含了对应的请求消息。可以通过将请求中的重要内容复制到响应中实现。为使客户端能确信证书验证是由期望的代理验证服务器完成,代理验证响应应是可鉴别的,但错误信息(如请求格式错误、或未知的验证策略等)除外。为使客户端能够向信任相同代理验证服务器的第三方证明证书的验证是正确执行的,代理验证响应应被数字签名,错误信息除外。代理
26、验证服务器的证书应证明代理验证服务器的合法性。代理验证服务器可以要求客户端鉴别。因此,代理验证请求也应可鉴别。6.3.2 中继、重定向、组播在某些网络环境中,尤其是有防火墙的网络中,代理验证服务器可能无法获得所需的全部信息。代理验证服务器可能被配置为可以使用一个或多个其他代理验证服务器提供的信息来满足服务需求。在这种情况下,客户端不知道被请求的服务器使用了其他代理验证服务器的服务,被客户端请求的服务器作为客户端向其他服务器请求服务。与原始客户端不同,代理验证服务器具有适当的计算和存储资源,能够使用中继、重定向或组播机制。要满足上述需求,协议需要包含可选域和/或扩展以支持中继、重定向或组播机制的
27、使用。代理验证客户端并不需要实现对这些机制的支持。若协议支持这些特性,协议应包含条款以使不支持这些特性的代理验证服务器及客户端能够使用基本的服务。a) 若代理验证服务器支持中继,代理服务器应提供检测环路的机制。b) 若协议为代理验证服务器提供将一个请求转发给其他代理验证服务器的能力,协议同时应支持转发信息的机制。c) 请求和响应中的可选参数也可以支持中继、重定向或组播机制。若代理验证客户端忽略这些可选参数,协议应能为客户端正常提供代理验证服务。若代理验证服务器忽略这些可选参数,也应能够正常提供代理验证服务。6.4 策略查询协议要求使用策略查询请求/响应对,代理认证路径构造或代理验证客户端应能够
28、获得对代理认证路径构造策略或代理验证策略的引用,包括默认代理认证路径构造策略或代理验证策略。策略查询响应可以包含对预定义的策略或是预知的策略的引用。7 代理服务协议7. 1 基本请求/响应消息7. 1. 1 概述代理服务协议遵照第6章的要求设计。客户端需要向服务器端发送请求消息,服务器端接收到客户端的请求消息后,根据客户端请求服务类型的不同,做相应的处理,并将处理结果通过响应消息返回给客户端。协议以统一的方式处理代理验证和代理路径构造,因此这两种服务均采用本节所描述的基本请求/响应消息格式。基本请求/响应消息应采用GB/T16263.1-2006定义的DER编码方式进行编码。6 7.1.2 客
29、户端请求消息7. 1. 2. 1 害户端请求消息格式GB/T 29243-2012 客户端请求消息封装在CVRequest结构中。在发送时,CVRequest封装在Contentlnfo中,其ASN.1描述如下。ContentInfo contentType id-ct-scvp-cert ValRequest,一(1.2.840.113549.1.9. 16. 1. 10) content CVRequest 如果客户端不对请求消息予以保护,则ContentInfo的content宇段就是CVRequest结构。如果客户端对请求予以保护,则content宇段是SignedData结构或Aut
30、henticatedData结构,其中封装了CVRequesto这两类结构的ASN.1描述参见RFC38520在这种情况下,SignedData或AuthenticatedData的EncapsulatedContentInfo字段的内容如下z-eContentType值为id-ct-scvp-certValRequest; 一-eContent值为DER编码后的CVRequestoCVRequest的ASN.1描述如下,其中所有标签均为隐式标签。CVRequest: =SEQUENCE cvRequest Version INTEGER DEFAULT 1 , Query, GeneralN
31、ames OPTIONAL, OCTET STRING OPTIONAL, GeneralName OPTIONAL, GeneralName OPTIONAL, Extensions OPTIONAL, Algorithmldentifier OPTIONAL, OBJECT IDENTIFIER OPTIONAL, requestorText 7J UTF8String (SIZE O. .256) OPTIONAL 其中各个字段的含义由7.1.2. 27. 1. 2.11描述。query requestorRef oJ requestNonce lJ requestorName 2J r
32、esponderName 3J requestExtensions 4J signatureAlg 5J hashAlg 6J 7. 1. 2. 2 cvRequestVersion 表示请求的版本号。相应的服务器端响应消息中的版本号应与请求消息中的版本号一致。在本标准的本版本中cvReq uest Version宇段的值应为1,以后的更新版本可能会指定其他值。7.1.2.3 query 表示客户端请求中的查询信息,其类型Query的ASN.1描述如下,其中所有标签均为隐式标签。Query: =SEQUENCE gu 6t VA E C -G .,gu -MLU且VAFL ee uh qc 一
33、注意z标签oJ不使用一wantBack validationPolicy responseFlags serverContextInfo CertReferences, CertChecks, lJ WantBack OPTIONAL, V alida tionPolicy, ResponseFlags OPTIONAL, 2J OCTET STRING OPTIONAL, 7 GB/T 29243-2012 validationTime intermediateCerts revlnfos 3J GeneralizedTime OPTIONAL, 4J CertBundle OPTIONAL
34、, 5J Revocationlnfos OPTIONAL, producedAt 6J GeneralizedTime OPTIONAL, queryExtensions 7J Extensions OPTIONAL Query类型中各个字段的含义由以下a)k)描述。a) queriedCerts 表示客户端请求进行路径构造或者验证的证书。queriedCerts宇段可以包含多个证书,每个代表一个请求主体。如果包含多个证书,那么所有证书的查询请求都是相同的。其类型CertReferences的ASN.1描述如下,其中所有标签均为隐式标签。CertReferences: =CHOICE pkc
35、Refs acRefs 1) pkcRefs oJ SEQUENCE SIZE (1. MAX) OF PKCReference, lJ SEQUENCE SIZE (1. MAX) OF ACReference pkcRefs字段表示引用的公钥证书,其类型PKCReference的ASN.1描述如下,其中所有标签均为隐式标签。PKCReference: 1 =CHOICE cert 0 J Certifcate. pkcRef lJ SCVPCertID 其中,cett字段表示公钥证书,pkcRef字段表示对公钥证书的引用标识。这表明可以将证书实体直接放在quetiedCerts中,也再以将
36、对这个证书的引用放在其中。如呆queriedCerts芋段包含多个公钥证书,可以一些使用证书实体,另一些使用证书寻|用。2) acRefs acRefs宇段表示引用到的属性证书,其类型ACReference的ASN.l描述如下,其中所有标签均为隐式标签。ACReferencc: =CHOICE attrCert 2J AttributeCertificate, acRef 3J SCVPCertID 其中,attrCert宇段表示属性证书,acRef字段表示属性证书的引用标识。这表明可以将证书实体直接放在queriedCerts中,也可以将对这个证书的引用放在其中。如果qucriedCerts
37、宇段包含多个属性证书,可以一些使用证书实体,另一些使用证书引用。3) 证书引用标识对于公钥证书或属性证书的引用标识,其类型SCVPCertID的ASN.1描述如下。SCVPCertID: =SEQUENCE certHash OCTET STRING, issuerSerial SCVPIssuerSerial, hashAlgorithm Algorithmldentifier DEF AUL T algorithm sha-1 其中,certHash字段表示对证书的散列值;issuerSerial字段表示公钥证书或者属性证书的签发者和序列号;hashAlgorithm宇段表示采用的散列算法
38、,默认为algorithmsha-1o hashAlgorithm宇段指定的散列算法应是服务器策略配置响应消息(参见7.2.3)的hashAlgorithms宇段所指定的多个散列算法之一。8 SCVPIssuerSerial类型的ASN.1描述如下zSCVPIssuerSerial: =SEQUENCE G/T 29243-2012 lssuer GeneralN ames, serialN um ber CertificateSerialN um ber 其中,issuer字段表示证书的签发者,serialN um ber字段表示证书的序列号。b) checks 表示客户端请求服务器端对qu
39、eriedCerts字段中的证书做哪些方面的处理,其类型CertChecks的ASN.1描述如下zCertChecks: =SEQUENCE SIZE (1. MAX) OF OBJECT IDENTIFIER 对于公钥证书,本标准中定义以下处理z一-id-stc-build-pkc-path:对一个信任锚构造期望的证书路径z一一id-stc-build-valid-pkc-path:对一个信任锚构造期望的证书路径,并验证有效,不要求检查撤销状态;一一-id-stc-build-status-checked-pkc-path:对一个信任锚构造期望的证书路径并验证有效,要求检查撤销状态。提供代理
40、路径构造服务的代理服务器应支持id-stc-build-pkc-path;提供代理验证服务的代理服务器应支持以上三种处理。对于属性证书,本标准中定义以下处理z一一id-stc-build-aa-pa th :对一个属性证书(AC)颁发者的信任锚构造一个期望的证书路径:-一id-stc-build-valid-aa-path:对一个AC颁发者的信任锚构造一个期望的证书路径井验证有效,不要求检查撤销状态z一一id-stc-build-status-checked-aa-path:对一个AC颁发者的信任锚构造一个期望的证书路径并验证有效,要求检查路径中除AC自己的证书外其他证书的撤销状态;id-s
41、tc-s ta tus-check-ac-and-build-sta tus-checked-aa-pa th :对一个AC颁发者的信任锚构造一个期望的证书路径并验证有效,要求检查所有证书的撤销状态,包括AC颁发者。代理服务器是否支持对属性证书的以上处理,是可选的。所有的检查类型都使用OID表示,描述如下zid-stc OBJECT IDENTIFIER: = iso ( 1) identified-organization (3) dod (6) internet (1) securi ty (5) mechanisms (5) pkix (7) 17 id-stc-build-pkc-pa
42、th id-stc-build-valid-pkc-path id-stc-b uild-sta tus-checked-p kc-pa th id-stc-build-aa-pa th id-stc-build-valid-aa-path OBJECT IDENTIFIER: : = id-stc 1 OBJECT IDENTIFIER: : = id-stc 2 OBJECT IDENTIFIER: : = id-stc 3 OBJECT IDENTIFIER: : = id-stc 4 OBJECT IDENTIFIER: : = id-stc 5 id-stc-build-status
43、-checked-aa-path OBJECT IDENTIFIER: : = id-stc 6 id-stc-status-check-ac-and-build-status-checked-aa-path OBJECT IDENTIFIER: : = id白stc7 c) wantBack wantBack宇段可选,表示客户端请求服务器端除返回checks中所定义的处理结果外,还要返回什么内容。其类型WantBack的ASN.1描述如下zWantBack: : =SEQUENCE SIZE O. . MAX) OF OBJECT IDENTIFIER 若存在wantBack项,wantBa
44、ck应包含一系列OIDs。每个OID表示客户端请求服务器返回关于queriedCerts的哪些信息。对于wantBack中指定的每种信息,服务器都应找到相应的结果并返回。例如,请求的checks字段指定构造证书路径(id-stc-build-pkc-path),wantBack要求返回服务器构造的所有证书路径(id-swb-pkc-all-cert-paths)。在这种情况下,响应不会包含证书路径的验证状态,这就是典型的代理路径构造服务。9 GB/T 29243-2012 对公钥证书,定义了以下几种wantBacks:一一id-swb-pkc-cert:请求中的主体证书,即queriedCerts字段所指示的证书;一一id-swb-pkc-best-cert-path:最优的证书路径,路径中每个证书都是被验证有效的F一一id-swb-pkc-revocation-info:证书路径中每个证书的