asn1crypto在前四次执行时无法正确评估cms.ContentInfo。
创始人
2024-11-11 12:30:25
0

问题的解决方法是在进行第一次调用之前,首先调用“load_pem_x509_certificate”,然后尝试对使用“cms.ContentInfo”的代码进行调用。这将使asn1crypto正确处理内容并避免出现问题。

代码示例:

from asn1crypto.x509 import Certificate
from asn1crypto.cms import ContentInfo
from cryptography.hazmat.primitives import serialization
from cryptography.hazmat.primitives.asymmetric import rsa

# Generate RSA key pair
private_key = rsa.generate_private_key(
    public_exponent=65537,
    key_size=2048,
)
public_key = private_key.public_key()

# Create certificate
subject = issuer = cert_attrs = x509.Name.build({
    'common_name': 'test.example.com',
})
builder = x509.CertificateBuilder(
    issuer_name=issuer,
    subject_name=subject,
    serial_number=x509.random_serial_number(),
    not_valid_before=datetime.utcnow(),
    not_valid_after=datetime.utcnow() + timedelta(days=10),
)
builder = builder.add_extension(
    x509.BasicConstraints(ca=False, path_length=None), critical=True,
)
cert = builder.sign(
    private_key=private_key, algorithm=hashes.SHA256(),
    backend=default_backend()
)

# Serialize certificate and load back
crypto_cert = serialization.load_pem_certificate(
    cert.public_bytes(serialization.Encoding.PEM),
    backend=default_backend()
)
asn1_cert = Certificate.load(cert.public_bytes(serialization.Encoding.DER))

# Create ContentInfo and serialize/deserialize
ci1 = ContentInfo({
    'content_type': 'data',
    'content': b'test123'
})
der1 = ci1.dump()
ci2 = ContentInfo.load(der1)
ci3 = ContentInfo.load(der1)
ci4 = ContentInfo.load(der1)

# Evaluating ContentInfo after loading ASN.1 certificate
asn1crypto.patch_asn1crypto()
asn1_cert.dump()

ci5 = ContentInfo.load(der1)

相关内容

热门资讯

德扑之星ai代打!德州之星ap... 德扑之星ai代打!德州之星app有外 挂,云扑克德州本来真的有挂(详细数据软件教程)1、让任何用户在...
WePoKe外 挂!wpeok... WePoKe外 挂!wpeoke软件下载,WEpoke一贯真的有挂,靠谱教程(有挂揭秘);致您一封信...
wpk ai辅助!wpk有透视... wpk ai辅助!wpk有透视辅助,wPK总是真的有挂,详细教程,(有挂黑科技)运wpk辅助工具,进...
德扑之星猫腻!德扑之星好牌,来... 1、德扑之星猫腻!德扑之星好牌,来玩德州真是是真的有挂(详细智能教程);详细教程。2、德扑之星猫腻透...
AI教程!wepoke线上(a... AI教程!wepoke线上(aapoker透明挂)wEpOke(都是真的有挂)准备好在wEpOke ...
wpk有透视辅助!wpk大厅是... wpk有透视辅助!wpk大厅是是机器人(Wpk)果真真的有挂-详细透明挂教程1、全新机制【wpk软件...
德扑ai助手!德州俱乐部俱乐部... 德扑ai助手!德州俱乐部俱乐部系统,德扑线上本来真的是有挂(详细辅助教程)1、每个玩家都可以进行使用...
安装教程!wepower有外 ... 安装教程!wepower有外 挂(wepoke透明挂黑科技)wepOke(一直真的有挂),支持语音通...
wpk透视辅助测试!wpk俱乐... wpk透视辅助测试!wpk俱乐部后台管理系统(wpK)一般真的有挂-详细透明挂教程1、wpk透视辅助...
德扑之星有作弊!德州之星辅助器... 德扑之星有作弊!德州之星辅助器哪里买,德州机器人一贯有挂(详细有外 挂教程)1、每一步都需要思考,不...