2016-06-09 70 views
0

我對python相當陌生,但對crypto模塊有基本的瞭解。但是,我試圖從遠程機器(即Safenet)導入RSA密鑰對,以運行簽名數據的一些性能測試。我在Python中構建框架,我還沒有找到很多明確的例子。例如:從遠程機器導入RSA密鑰對

from Crypto.PublicKey import RSA 
f = open('path/to/pair/00000103000003A2','r') 
r = RSA.importKey(f.read(), passphrase='123456') # Index out of range error 
print(r) 

這是關於我得到打開密鑰對。我可以將密鑰對導入我的個人計算機,以便它可以進入我可以訪問的目錄。

+0

你能舉個例子嗎? –

+0

這將是我的密鑰庫的路徑。 'C:\ Users \ Name \ Company \ 00000103000003A2.p12' @Artjom B – DJ2

+0

pycrypto不支持PKCS#12。您必須先將其轉換爲 –

回答

0

我在別處找到了答案。

from OpenSSL import crypto 

passwd = 'The password of your created .p12 file' 
p12 = crypto.load_pkcs12(open("Path to p12 file.p12 ",'rb').read(),passwd) 
print(p12.get_certificate()) #Prints object location 
print(p12.get_privatekey())  #Prints object location 
p12.get_ca_certificates() 

下面是將對象位置轉換爲PEM格式字符串的鏈接。 PyOpenSSL convert certificate object to .pem file