我正在使用Python中的密码库,我有一个CRL对象。下面是设置:
from cryptography import x509
from cryptography.hazmat.backends import default_backend
from cryptography.x509.oid import ExtensionOID, NameOID, AuthorityInformationAccessOID
# Need to set default backend for cryptography as our version is low:
default_backend = default_backend()
crl_file = path_to/some_crl_file.crl
crl = x509.load_pem_x509_crl(crl_file, default_backend)
print(crl.extensions)我收到以下扩展的输出:
<Extensions([<Extension(oid=<ObjectIdentifier(oid=2.5.29.20, name=cRLNumber)>, critical=False, value=<CRLNumber(17)>)>, <Extension(oid=<ObjectIdentifier(oid=2.5.29.35, name=authorityKeyIdentifier)>, critical=False, value=<AuthorityKeyIdentifier(key_identifier=b"\xe4\xaf+&q\x1a+H'\x85/Rf,\xef\xf0\x89\x13q>", authority_cert_issuer=None, authority_cert_serial_number=None)>)>])>然后,我得到CRL编号如下:
print(crl.extensions.get_extension_for_oid(ExtensionOID.CRL_NUMBER).value)这将输出<CRLNumber(17)>。如何获得它,以便从中接收int值17?
发布于 2022-06-14 20:45:46
我发誓有人回答了我的回答,但也许是我想出来的。
不管是谁。我再看了一遍,用以下方法解决了这个问题:
print(crl.extensions.get_extension_for_oid(ExtensionOID.CRL_NUMBER).value.crl_number)
我需要在值的末尾添加.crl_number。
https://stackoverflow.com/questions/72356576
复制相似问题