How to load in Python-RSA a public RSA key from a file generated with openssl? -
i generated private , public key following commands:
openssl genrsa -out private_key.pem 512 openssl rsa -in private_key.pem -pubout -out public_key.pem i tried load them python script using python-rsa:
import os import rsa open('private_key.pem') privatefile: keydata = privatefile.read() privkey = rsa.privatekey.load_pkcs1(keydata,'pem') open('public_key.pem') publicfile: pkeydata = publicfile.read() pubkey = rsa.publickey.load_pkcs1(pkeydata) random_text = os.urandom(8) #generate signature signature = rsa.sign(random_text, privkey, 'md5') print signature #verify token try: rsa.verify(random_text, signature, pubkey) except: print "verification failed" my python script fails when tries load public key:
valueerror: no pem start marker "-----begin rsa public key-----" found
python-rsa uses pem rsapublickey format , pem rsapublickey format uses header , footer lines: openssl notes
-----begin rsa public key----- -----end rsa public key-----
output public part of private key in rsapublickey format: openssl examples
openssl rsa -in key.pem -rsapublickey_out -out pubkey.pem
Comments
Post a Comment