使用下面的代码片段,我可以从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
答案 0 :(得分:0)
通过pyopenssl
公开的类是有限的,通常最好从幕后使用的cryptography
模块切换到功能更强大的类。例如,对于CRL,您可以通过记录在cryptography.x509.CertificateRevocationList
中的to_cryptography()
方法访问类here。它公开了您要查找的属性。继续您的操作:
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