安裝open ssl 並生成公私鑰

1.下載php

 OpenSSL 官方網站下載 Windows 的 OpenSSL 安裝包 進行安裝。java

我的百度網盤連接:https://pan.baidu.com/s/1jHNs2k2 密碼:08w0linux

linux 安裝  open ssl  命令   sudo apt-get install opensslc++

2.生成 RSA 私鑰及公鑰shell

  2.1  Linux 用戶(以 Ubuntu 爲例)網站

  $ openssl # 進入 OpenSSL 程序 ui

  OpenSSL> genrsa -out rsa_private_key.pem 1024 # 生成私鑰 加密

  OpenSSL> pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out rsa_private_key_pkcs8.pem # Java開發者須要將私鑰轉換成 PKCS8 格式    OpenSSL> rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem # 生成公鑰 spa

  OpenSSL> exit # 退出 OpenSSL 程序命令行

  2.2  Windows 用戶在 cmd 窗口中進行如下操做:

  C:\Users\Hammer>cd C:\OpenSSL-Win32\bin %進入 OpenSSL 安裝目錄%

  C:\OpenSSL-Win32\bin>openssl.exe %進入 OpenSSL 程序%   首先找打你所安裝的openssl.exe目錄

  OpenSSL> genrsa -out rsa_private_key.pem 1024 %生成私鑰%

  OpenSSL> pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out rsa_private_key_pkcs8.pem %備註:Java 開發者須要將私鑰轉換成 PKCS8 格式%

  OpenSSL> rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem %生成公鑰%

  OpenSSL> exit %退出 OpenSSL 程序%

 

注意:對於使用 Java 和 .NET 的開發者,將 pkcs8 在 console 中輸出的私鑰去除頭行、尾行、回車換行和空格,做爲開發者私鑰,對於 PHP 的開發者來講,無需進行 pkcs8 命令行操做。

  通過以上步驟,開發者能夠在當前文件夾中(Windows 用戶在 C:\OpenSSL-Win32\bin)看到 rsa_private_key.pemrsa_public_key.pem 兩個文件,前者爲私鑰,後者爲公鑰。開發者將私鑰保留,將公鑰提交給支付寶網關,用於信息加密及解密。如下爲使用 OpenSSL 生成的私鑰文件和公鑰文件示例。

密鑰示例

標準的私鑰文件示例(PHP 使用)

-----BEGIN RSA PRIVATE KEY----- MIICXgIBAAKBgQD5XhINYn8H846imTJVTtUTJUTSeg8aVBp21v51j+bCGtXYATin Nig+Mu829L3M3WxV6UIkVxjeepd0xEmAxJnhKlA0v1/6pFsKO8pzHbygKISqmwFL NSCVcIHafIOeaIAJFuHRZzwOi0MxKYVMRBviqUiF+52Nj9F/A0eTvAXL7QIDAQAB AoGBAOpTi4MoW1aNeCsy6ilfuroS+2kNacPD5FpoDRVL8/vSW8Bu5V27dnV8R23M 7c3lBDh2yMB9V9E4Qbpn+OoX1L/2r6OOi8T0w293GYgClCVgLVP90PUAD6/fW9UY mtgrjmJSKRh6H67V0IUpOsY9eidl0V1po/GGvNDNgUgkFwwBAkEA/9LzPxg5acDC hqZXDchJtBxc/nzEpUWoZk0EKU3PvkH8DejsaggFe8MDtqJNxRD9liAi7fw7Hqts 0/bnMc+oXQJBAPmJ+70j9RronLsn+I/N3IXBaQi1zGTeppviA0ST+7uTD35iAPoL GBGyvyIkk3I0T48H6o50tqEcISxhRzi9ONECQQC7qzfwqEet8c+CUdJ49N5Et63s rwDfMVuZOJR97Gwi6WsLlTyhiCLlqKk3uJcOoyk0kXyuUyPXmvAqCu2NmAWtAkEA isKy7LNBCcyN0vjgHD8yQGKToJdPaEvzQ72DabAMjHqzY+jleCWRJc5KwJasMxZp ozSYtsyp/Z7hx4b0jtWR8QJAWSXcg9gZs0qtt1Xwu2XI/r/f/8TjbPLGT0nbfu0Y Baqfpf2bkq9UjIwzVW9TmVJ/RZbvh8ege4Ff9UDw/eVoHA== -----END RSA PRIVATE KEY----- 

PKCS8 處理後的私鑰文件示例(Java 和 .NET 使用)

-----BEGIN PRIVATE KEY----- MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAPleEg1ifwfzjqKZ MlVO1RMlRNJ6DxpUGnbW/nWP5sIa1dgBOKc2KD4y7zb0vczdbFXpQiRXGN56l3TE SYDEmeEqUDS/X/qkWwo7ynMdvKAohKqbAUs1IJVwgdp8g55ogAkW4dFnPA6LQzEp hUxEG+KpSIX7nY2P0X8DR5O8BcvtAgMBAAECgYEA6lOLgyhbVo14KzLqKV+6uhL7 aQ1pw8PkWmgNFUvz+9JbwG7lXbt2dXxHbcztzeUEOHbIwH1X0ThBumf46hfUv/av o46LxPTDb3cZiAKUJWAtU/3Q9QAPr99b1Ria2CuOYlIpGHofrtXQhSk6xj16J2XR XWmj8Ya80M2BSCQXDAECQQD/0vM/GDlpwMKGplcNyEm0HFz+fMSlRahmTQQpTc++ QfwN6OxqCAV7wwO2ok3FEP2WICLt/Dseq2zT9ucxz6hdAkEA+Yn7vSP1Guicuyf4 j83chcFpCLXMZN6mm+IDRJP7u5MPfmIA+gsYEbK/IiSTcjRPjwfqjnS2oRwhLGFH OL040QJBALurN/CoR63xz4JR0nj03kS3reyvAN8xW5k4lH3sbCLpawuVPKGIIuWo qTe4lw6jKTSRfK5TI9ea8CoK7Y2YBa0CQQCKwrLss0EJzI3S+OAcPzJAYpOgl09o S/NDvYNpsAyMerNj6OV4JZElzkrAlqwzFmmjNJi2zKn9nuHHhvSO1ZHxAkBZJdyD 2BmzSq23VfC7Zcj+v9//xONs8sZPSdt+7RgFqp+l/ZuSr1SMjDNVb1OZUn9Flu+H x6B7gV/1QPD95Wgc -----END PRIVATE KEY----- 

公鑰文件示例

-----BEGIN PUBLIC KEY----- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD5XhINYn8H846imTJVTtUTJUTS eg8aVBp21v51j+bCGtXYATinNig+Mu829L3M3WxV6UIkVxjeepd0xEmAxJnhKlA0 v1/6pFsKO8pzHbygKISqmwFLNSCVcIHafIOeaIAJFuHRZzwOi0MxKYVMRBviqUiF +52Nj9F/A0eTvAXL7QIDAQAB -----END PUBLIC KEY----- 

來源 :  https://b.zmxy.com.cn/technology/openDoc.htm?relInfo=RSA_INFO_DOC

相關文章
相關標籤/搜索