2017-05-24 63 views
2

読み込まれたx509証明書から署名を抽出しようとしています。私は抽出されたものすべて(発行者、件名、PEM、SignatureAlgorithmなど)を持っています。私はこれを探しましたが、不足しています。どんな助けでも大歓迎です!x509証明書から署名を抽出する方法

from OpenSSL import crypto 

certobj = crypto.load_certificate(crypto.FILETYPE_ASN1, cert) 

issuer = certobj.get_issuer() 
subject = certobj.get_subject() 

certDetails = { 
    "SerialNumber": certobj.get_serial_number(), 
    "Signature": None, # <-- This is what I am trying to get! 
    "SignatureAlgorithm": certobj.get_signature_algorithm(), 
    "CertificatePEM": crypto.dump_certificate(crypto.FILETYPE_PEM, certobj), 
    "SubjectPublicKeyPEM": crypto.dump_publickey(crypto.FILETYPE_PEM, certobj.get_pubkey()), 
    "Version": certobj.get_version() 
} 
+0

あなたは公開鍵を探していますか?実際にCAに信頼できるメッセージを送信することができます:['certobj.get_pubkey()'](https://pyopenssl.readthedocs.io/en/latest/api/crypto.html#OpenSSL.crypto.X509 .get_pubkey) – Aaron

+0

@Aaronいいえ、私は 'certDetails.SubjectPublicKeyPEM'に格納された公開鍵を持っています。私は署名値そのものを探しています。 – cmeadows

答えて

0

少しロータリー私は署名にアクセスするために暗号化証明書オブジェクトに証明書を変換:

cryptCert = cert.to_cryptography()

印刷hexlify(cryptCert.signature)

関連する問題