2016-12-06 10 views

答えて

1

私は質問で解決策を見つける:How do you verify an RSA SHA1 signature in Python?

以下

は、検証作業を行うためのデモです:

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

pyopensslを試しましたか?

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

最初のパラメータ証明書が生成された秘密鍵に対応するX509のインスタンスであります署名、私は公開鍵しか持っていないとX509インスタンスを生成する方法はありますか? –

関連する問題