前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >OCSP请求/响应ASN.1编码注释

OCSP请求/响应ASN.1编码注释

作者头像
用户10799047
修改2023-10-19 15:33:54
2910
修改2023-10-19 15:33:54
举报
文章被收录于专栏:

OCSP请求:

代码语言:text
复制
   OCSPRequest     ::=     SEQUENCE {
       tbsRequest                  TBSRequest,  --待签名请求
       optionalSignature   [0]     EXPLICIT Signature OPTIONAL}  --可选的签名项
       
   TBSRequest      ::=     SEQUENCE {
       version             [0]     EXPLICIT Version DEFAULT v1,  --版本号
       requestorName       [1]     EXPLICIT GeneralName OPTIONAL,  --请求者名
       requestList                 SEQUENCE OF Request,  --请求查询证书列表
       requestExtensions   [2]     EXPLICIT Extensions OPTIONAL}  --请求可扩展项
       
          Signature       ::=     SEQUENCE {
            signatureAlgorithm      AlgorithmIdentifier,  --签名算法标识
            signature               BIT STRING,  --签名值
            certs               [0] EXPLICIT SEQUENCE OF Certificate OPTIONAL}  --证书

   Version         ::=             INTEGER  {  v1(0) }

   Request         ::=     SEQUENCE {
       reqCert                     CertID,  --请求查询的证书
       singleRequestExtensions     [0] EXPLICIT Extensions OPTIONAL }  --单个证书查询请求

   CertID          ::=     SEQUENCE {
       hashAlgorithm       AlgorithmIdentifier,  --摘要算法标识
       issuerNameHash      OCTET STRING,  -- 证书颁发者DN的Hash
       issuerKeyHash       OCTET STRING,  -- 证书颁发者公钥的Hash
       serialNumber        CertificateSerialNumber }  --证书序列号

OCSP响应:

代码语言:text
复制
   OCSPResponse ::= SEQUENCE {
      responseStatus         OCSPResponseStatus,  --OCSP响应状态
      responseBytes          [0] EXPLICIT ResponseBytes OPTIONAL }  --可选的响应结果

   OCSPResponseStatus ::= ENUMERATED {
       successful            (0),  -- 证书有效
       malformedRequest      (1),  -- 非法请求
       internalError         (2),  -- 颁发者内部错误
       tryLater              (3),  -- 稍后再试
                                   -- (4)保留
       sigRequired           (5),  -- 需要请求的签名值
       unauthorized          (6)   -- 请求未经授权
   }

      ResponseBytes ::=       SEQUENCE {
       responseType   OBJECT IDENTIFIER,  --响应类型
       response       OCTET STRING }  --响应内容

这里的response是一个BasicOCSPResponse对象的DER编码:

代码语言:text
复制
   BasicOCSPResponse       ::= SEQUENCE {
      tbsResponseData      ResponseData,  --待签名响应数据
      signatureAlgorithm   AlgorithmIdentifier,  --签名算法标识
      signature            BIT STRING,  --签名值
      certs            [0] EXPLICIT SEQUENCE OF Certificate OPTIONAL }  --证书

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档