2016-12-06 2 views

Antwort

1

finde ich eine Lösung auf Frage: How do you verify an RSA SHA1 signature in Python?

Unterhalb der Demo ist das überprüfen zu tun Arbeit:

import base64 

from M2Crypto import BIO, RSA, EVP 

ori = "content of origin string" 
sig = "content of signature string" 

with open("./public.pem") as f: 
    pem = f.read() 
    bio = BIO.MemoryBuffer(pem) 
    rsa = RSA.load_pub_key_bio(bio) 

    pubkey = EVP.PKey() 
    pubkey.assign_rsa(rsa) 
    pubkey.reset_context(md="sha256") 
    pubkey.verify_init() 
    pubkey.verify_update(ori) 
    print pubkey.verify_final(base64.b64decode(sig)) # 1 means verify OK 
1

Haben Sie versucht pyopenssl?

OpenSSL.crypto.verify(certificate, signature, data, digest) 
+0

Der erste Parameter Zertifikat ist ein X509-Instanz auf den privaten Schlüssel entspricht, erzeugt die Signatur, wie kann ich die X509-Instanz generieren, wenn ich nur den öffentlichen Schlüssel habe? –

Verwandte Themen