我試圖將一些.p12文件轉換爲.pem。使用PHP和OpenSSL將P12轉換爲PEM
我的Mac上一切正常,沒有任何交互,因爲我把密碼中的代碼,但是當我使用此代碼:
system('openssl pkcs12 -clcerts -nokeys -out apns-dev-cert.pem -in apns-dev-cert.p12 -passin pass:');
system('openssl pkcs12 -nocerts -out apns-dev-key.pem -in apns-dev-key.p12 -passout pass:1234 -passin pass:');
system('openssl rsa -in apns-dev-key.pem -out apns-dev-key-noenc.pem -passin pass:1234');
system('cat apns-dev-cert.pem apns-dev-key-noenc.pem > apns-dev.pem');
它使空白文件。
我的文件權限是755和密碼分別設置沒什麼經過的所以在這裏這就是爲什麼他們是空白......所有的代碼,而無需系統()在MAC終端工程..
感謝閱讀。希望你能幫到
是否有避免內置['openssl_pkcs12_read'](http://us2.php.net/manual/en/function.openssl-pkcs12-read.php)函數的特殊原因? – Charles 2011-03-24 18:26:03
@Charles如果它的工作,我會使用它,但我不知道如何實現與我想要的。 – user633268 2011-03-24 19:10:47
@user,它返回的數據是一個包含私鑰的數組,這似乎是您要在此處提取的內容。您應該可以使用['openssl_pkey_export_to_file'](http://us3.php.net/manual/en/function.openssl-pkey-export-to-file.php)或['openssl_pkey_export'](http:/ /us3.php.net/manual/en/function.openssl-pkey-export.php)獲取PEM格式的密鑰。 – Charles 2011-03-24 19:31:06