Я пытаюсь повторить эту команду OpenSSL с M2CryptoПроверьте подписанное сообщение с M2Crypto для самостоятельного сертификата
openssl smime -verify -in local_files/auth_data.pem.pk7 -inform PEM -certfile certificate.crt -noverify
Моего кода выглядит следующим образом:
smime = M2Crypto.SMIME.SMIME()
x509_store = M2Crypto.X509.X509_Store()
x509_store.load_info(ca_file)
smime.set_x509_store(x509_store)
x509_stack = M2Crypto.X509.X509_Stack()
x509_cert = M2Crypto.X509.load_cert(cert_file)
x509_stack.push(x509_cert)
smime.set_x509_stack(x509_stack)
p7 = M2Crypto.SMIME.load_pkcs7_bio(M2Crypto.BIO.MemoryBuffer(cipher_text))
decrypted_data = smime.verify(p7)
Но я получаю эту ошибку в последняя строка:
PKCS7_Error: certificate verify error
Я не могу заставить M2Crypto вести себя как OpenSSL с '-noverify' флагом.
Я попытался загрузить тот же сертификат в X509_Store, но это был тот же результат.