在Linux下如何使用openssl生成RSA公鑰和私鑰對


        在《Java實現RSA密鑰對並在加解密、加簽驗簽中應用的實例》中,我們有用Java代碼生成RSA密鑰對,其實在Linux操作系統中,用openssl也是很容易生成密鑰對的。

一.如果在ubuntu上要使用openssl的話需要先進行安裝

  命令如下:

sudo apt-get install openssl   

  安裝完成就可以使用openssl了。

 

二.進入openssl的交互界面,在命令行了輸入openssl即可

1.生成RSA私鑰

  該命令會生成1024位的私鑰,生成成功的界面如上所示。

genrsa -out rsa_private_key.pem 1024

        此時我們就可以在當前路徑下看到rsa_private_key.pem文件了,如下所示:

2.把RSA私鑰轉換成PKCS8格式

        輸入命令如下命令回車

pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt

  得到生成功的結果,這個結果就是PKCS8格式的私鑰,如下圖:


3.生成RSA公鑰

        輸入如下命令並回車

rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

  得到生成成功的結果,如下圖:


        此時,我們可以看到一個文件名為rsa_public_key.pem的文件,打開它,可以看到-----BEGIN PUBLIC KEY-----開頭,-----END PUBLIC KEY-----結尾的沒有換行的字符串,這個就是公鑰,如下所示:


 

附:但在有些時候,我們需要的公鑰不是上面格式的,如下所示的公鑰格式是sftp時需要的格式


  此時,我們需要通過如下Linux命令生成:

ssh-keygen -t rsa -f key
ssh-keygen -e -f key.pub > key_ss2.pub 

  具體使用實例如下所示:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM