OKPay钱包(中国)

    文章横幅PC版
    文章横幅iPad版
    文章横幅手机版

    数字证书有效性校验

    TIME:2019-03-15 12:00  click: 277 次 来源: 未知

     

    用户在用数字证书加密和验证数字签名时,硬要要先验证证书的有效性。

    证书有效性的验证主要包括以下步骤:

    1.验证CA签名

    ①把待验证证书设置为当前证书。

    ②根据当前证书中签发者信息查询签发者证书,并使用签发者证书验证当前证书中的数字签名是否正确。

    ③如果不正确,则待验证证书无效。

    ④如果正确且签发者证书是预先确定的可信任CA证书,则说明待验证证书的CA签名正确;否则,将签发者证书设置为当前证书,重复步骤②~④。

    2.验证证书有效期

    ①如果待验证证书中not Before在当前日期之后,则该证书未生效。

    ②如果待验证证书中not After在当前日期之前,则该证书已过期。

    ③否则,该证书处于有效期内。

    3.验证证书状态

    (1)基于CRL验证证书状态

    ①根据待验证证书中扩展项CRLDistributionPoints信息取得CRL地址,并根据该地址下载CRL文件。

    ②检查CRL文件是否在有效期内,如果不在则需要重新下载。

    ③验证CRL中数字签名是否正确,若不正确则重新下载。

    ④如果CRL中包括待验证证书的序列号,则说明该证书状态为无效;否则说明该证书状态为有效。

    (2)基于OCSP验证证书状态

    ①把待验证证书的序列号组织成OCSP请求包。

    ②把OCSP请求包发送给OCSP服务器。

    ③从OCSP服务器取得OCSP响应包。

    ④解析OCSP响应包取得该证书的当前状态。

    4.验证证书其他属性

    ①验证证书密钥用途:KeyUsage、ExtKeyUsage、NetscapeCertType。

    ②验证证书策略:CertificatePolicie。

    ③其他专用属性。

    上一篇:SSl/TLS原理介绍 下一篇:信息的抗抵赖性