怎么把已有的RSA公私钥转换成PKCS8格式

怎么把已有的RSA公私钥转换成PKCS8格式

1,下载OpenSSL工具

1)、Linux用户(以Ubuntu为例) 


sudo apt-get install openssl 

2)、Windows用户 
开发者可以在OpenSSL官方网站下载Windows的OpenSSL安装包进行安装。

二、RSA私钥及公钥生成

1) Linux用户(以Ubuntu为例) 
$ openssl 进入OpenSSL程序 
OpenSSL> genrsa -out rsa_private_key.pem 1024 生成私钥 
OpenSSL> pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt Java开发者需要将私钥转换成PKCS8格式 
OpenSSL> rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem 生成公钥 
OpenSSL> exit ## 退出OpenSSL程序 

2) 
Windows用户

1.找到刚才安装的OpenSSL,打开其下的bin文件夹,双击openSSL.exe文件,执行程序,
2,输入命令: genrsa -out rsa_private_key.pem 1024 ,并回车得到生成成功的结果,如下图:
怎么把已有的RSA公私钥转换成PKCS8格式
此时,我们可以在bin文件夹中看到一个文件名为rsa_private_key.pem的文件,用记事本方式打开它,可以看到—–BEGIN RSA PRIVATE KEY—–开头,—–END RSA PRIVATE KEY—–结尾的没有换行的字符串,这个就是原始的私钥。
3,生成的原始私钥并不是我们想要转换的私钥,那么就要替换rsa_private_key.pem文件中的私钥了.

怎么把已有的RSA公私钥转换成PKCS8格式
打开rsa_private_key.pem文件,如上图所示,红框中的内容是生产的原始私钥,把它替换成我们所想转的RSA私钥,

4,把RSA私钥转换成PKCS8格式

输入命令:
pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt
,并回车当前界面中会直接显示出生成结果,这个结果就是PKCS8格式的私钥,如下图:

怎么把已有的RSA公私钥转换成PKCS8格式
右键点击openssl窗口上边边缘,选择编辑→标记,选中要复制的文字(如上图), 
此时继续右键点击openssl窗口上边边缘,选择编辑→复制, 就把PKCS8格式的私钥复制出来了.到此就结束了.

5、生成RSA公钥

输入命令:rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem,并回车,得到生成成功的结果,此时,我们可以在bin文件夹中看到一个文件名为rsa_public_key.pem的文件,用记事本方式打开它,可以看到—–BEGIN PUBLIC KEY—–开头,—–END PUBLIC KEY—–结尾的没有换行的字符串,这个就是公钥。 



****************************************************文章参考来源是蚂蚁金服https://cshall.alipay.com/enterprise/knowledgeDetail.htm?knowledgeId=201602033418
 小编只做了少量实践修改.*******************************************
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106333.html原文链接:https://javaforall.net

(0)
上一篇 2021年7月17日 下午12:00
下一篇 2021年7月17日 下午1:00


相关推荐

  • 惠普台式电脑安装系统按哪个键_hp不识别u盘装系统

    惠普台式电脑安装系统按哪个键_hp不识别u盘装系统当我们使用U盘给电脑装系统时,需要进入BIOS设置从USB启动,不过设置BIOS太麻烦了,而且大多数电脑现在都支持快捷键启动,如惠普笔记本,那么惠普usb装系统按哪个键呢?接下来小编就跟大家讲解一下,希望能够帮助到大家。惠普usb装系统步骤阅读1、将U盘插在电脑的USB接口,开机并不断按下启动U盘快捷键f12。2、在进入系统启动菜单中选择有USB字样的选项并回车。3、重启电脑,选择YunQiShi…

    2022年8月13日
    9
  • fastcgi java_fastcgi是什么

    fastcgi java_fastcgi是什么1.概述FastCGI全称快速通用网关接口(FastCommonGatewayInterface)。FastCGI实际上是增加了一些扩展功能的CGI、是CGI的改进,描述了客户端和Web服务器程序之间传输数据的一种标准。FastCGI像是一个常驻(long-live)型的CGI,FastCGI致力于减少Web服务器与CGI程序之间进行互动的开销,从而使Web服务器可以同时处理更多的…

    2022年7月27日
    7
  • Struts2的基本原理与实现

    Struts2的基本原理与实现Struts2 是什么 Struts2 是一个基于 MVC 设计模式的 Web 应用框架 它本质上相当于一个 servlet 在 MVC 设计模式中 Struts2 作为控制器 Controller 来建立模型与视图的数据交互 Struts2 是 Struts 的下一代产品 是在 struts1 和 WebWork 的技术基础上进行了合并的全新的 Struts2 框架 其全新的 Struts2 的体系结构与 Struts1 的体

    2026年3月20日
    3
  • Wi-Fi 2.4G 和 5G 信道列表

    Wi-Fi 2.4G 和 5G 信道列表美洲(FCC)2.412~2.462GHz:11个信道5.15~5.35GHz,5.725~5.825GHz;12个信道中国2.412~2.472GHz:13个信道5.725~5.825GHz:4个信道ETSI2.412~2.472GHz:13个信道5.15~5.35GHz:8个信道5470

    2022年6月6日
    39
  • css清除浮动的五种方法图片_万能清除浮动法

    css清除浮动的五种方法图片_万能清除浮动法css清除浮动有哪五种方法呢?如何使用他们呢

    2025年6月6日
    6
  • java c socket通信 中文乱码解决「建议收藏」

    java c socket通信 中文乱码解决「建议收藏」前言(扯淡)作为一个一直从事Java的人来说,突然做C++很多地方都是乱撞墙,就发送的这个乱码就让人感到十分头秃,昨天跟老板对话,老板说不行咱就花钱找别人做。。。能力别质疑的感觉真是让人糟心啊–不扯太多,程序员节快乐,大家一起头秃吧。。虽然我并不想秃。问题言归正传,c++接收信息是gb2312,Java发数据是UTF-8,我Java接收数据没有问题,但是发给C++就遇到乱码问题…

    2022年7月13日
    21

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号