zoukankan      html  css  js  c++  java
  • 在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 

      具体使用实例如下所示:

  • 相关阅读:
    十万个为什么
    安装VmwareTools遇到的问题
    CentOS7没有ifconfig命令怎么办
    ftp/ http/ https/ tcp的关系
    C/S和B/S架构
    Nginx 安装以及验证教程
    osi七层模型
    在linux上安装tenginx
    Awvs、Snort的下载安装
    Laravel——DI(依赖注入)
  • 原文地址:https://www.cnblogs.com/wangjinxiang/p/10618629.html
Copyright © 2011-2022 走看看