【问题标题】:Parsing CRL using OpenSSL使用 OpenSSL 解析 CRL
【发布时间】:2019-03-08 13:01:32
【问题描述】:

使用下面的代码 sn-p 我可以从 CRL 证书中获取 CRL 对象:

import OpenSSL

with open('/Users/goutamdas/Desktop/Certificate/My_Certs/crl_ocsp.pem', 'r') as _crl_file:
    crl = "".join(_crl_file.readlines())
print(crl)

crl_object = OpenSSL.crypto.load_crl(OpenSSL.crypto.FILETYPE_PEM, crl)
print("obj: ", crl_object)

现在我想从这个 CRL 文件中解析以下 2 个日期,看起来 OpenSSL 没有提供任何相关的提取方法。任何建议我如何做到这一点。

    Last Update: Sep 17 18:01:34 2018 GMT
    Next Update: Oct 17 18:01:34 2018 GMT

【问题讨论】:

    标签: openssl certificate pyopenssl


    【解决方案1】:

    通过pyopenssl 公开的类是有限的,您通常最好从cryptography 模块切换到更强大的类,该模块在后台使用。例如,对于 CRL,您可以通过记录在 here 中的 to_cryptography() 方法访问类 cryptography.x509.CertificateRevocationList。它公开了您正在寻找的属性。继续你所做的:

    ccrl_object = crl_object.to_cryptography()
    print(ccrl_object.last_update)
    print(ccrl_object.next_update)
    

    产生类似于

    的东西
    2005-02-06 12:00:00
    2005-02-05 12:00:00
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-26
      • 2019-01-29
      • 1970-01-01
      • 2015-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-20
      相关资源
      最近更新 更多