macOS 生成 RSA 公钥和私钥

栏目: 编程工具 · 发布时间: 5年前

内容简介:如果你没有安装在 macOS 终端输入下面命令,会生成1024位的私钥,如下:执行成功后,在当前目录会生成

如果你没有安装 openssl ,请先使用 brew 安装它。

生成 RSA 私钥

在 macOS 终端输入下面命令,会生成1024位的私钥,如下:

openssl genrsa -out rsa_private.pem 1024

执行成功后,在当前目录会生成 rsa_private.pem 文件了。

注意:这里生成的是 PKCS1 格式的文件,也称之为传统的私钥格式。

生成 RSA 公钥

得到私钥后,执行如下命令可以得到公钥,命令如下:

openssl rsa -in rsa_private.pem -out rsa_public.pem -pubout

执行成功后,在当前目录会生成 rsa_public.pem 的文件,这个就是公钥。

格式转换

有些后端服务需要 PKCS8 格式的密钥,可以使用 openssl 工具把 PKCS1PKCS8 进行互转。

PKCS 全称是 Public-Key Cryptography Standards ,是由 RSA 实验室与其它安全系统开发商为促进公钥密码的发展而制订的一系列标准。

把 RSA 私钥转 PKCS1 转换为 PKCS8 格式,执行如下:

openssl pkcs8 -topk8 -inform PEM -in rsa_private.pem -outform PEM -nocrypt -out rsa_private_pkcs8.pem

把 RSA 私钥 PKCS8 格式转换为 PKCS1 格式,执行如下:

openssl rsa -in rsa_private_pkcs8.pem -out pkcs1.pem

以上生成的 RSA(pem) 文件,可以使用 vim、vscode 等文本编辑器打开查看。

无论是 PKCS1 还是 PKCS8 ,它们都是 PEM 编码存储的格式。

PEM 格式

PEM 格式既是对 DER 编码转码为 Base64 字符格式,通过解码,将会还原为 DER 格式。即 PEM 是建立在 DER 编码之上的一种格式。

总之,PEM 是明文格式,可以包含证书或者是密钥,其内容通常是以类似 —–BEGIN …—– 开头,以 —–END …—– 为结尾的这样的格式,如下示例:

-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQDX+VXh+9zZBC3jRLcLyGGygb/vuiQj13x9ElH9pQmUg29UJ0q1
hcSFuoKmt4id8jyj82fI2PMISzoGucqQFm9HXIV65UcgeUx7REDhgZOBmSCWZ2lW
e2Fnf/htyiy9YVEN4jL7H+b67cIcEDHgYZLtPvSZgyr0UyOMC+E40kTcnQIDAQAB
AoGBAKKsYD7l6VPgrPuY31LVrJi62ComB2Cjx1WhffZR3+RoF2vImNtkB0E+2Xff
l9x3/6ry1IMove3KTzadrHBZJZi1Y6lmHE95uv0O4p16ETnqvKzO8MkcH3qVQe1Z
EyNd/wXr4A8DW3ZlNP/QIPOgzK949yTiP53wapiRwExEf7nhAkEA7CbbdoslRzhQ
9YY1Sdbmc7NHpZdKhkgZwOVJZBoRwfHtSnFcpQUlOzLGCOxP+tGn5mpzhmpDFeUR
bv7mgaQvtQJBAOogUtiJbffk0p3uu7r5nCBmC6BqbG8yVqBVk+r/gS5iHBeBQVyp
FGYYLPQ9daHWluNku07MhqarPcXytEk7ekkCQDBjofK/fmsCkixNTNwNiflJUiVO
W/n6CjTphslZQhIGNb5cTkSOMlvYApZPffACR+pCA9wWKBrzbkgVOTx1XUUCQQDE
KJLg47wkLy6brhLss6ewqW7iV3hEfhuAOFM3WB1mvEKnGt+lf/AcXfMEK54sGzvO
h2475jaG3ABkoiWVGeUpAkAgckc/Pf7KVRF/mDVruMJBbJLYL4H4s78nssFQ4d9V
yXKsIM/AHUxZ5ZKiC7vtEtaGrTLAiuIuQZzBgGpSHX/e
-----END RSA PRIVATE KEY-----

以下是证书文件名称,来自维基百科 X.509 的截图。

macOS 生成 RSA 公钥和私钥

要始终保持学习的激情~

macOS 生成 RSA 公钥和私钥


以上所述就是小编给大家介绍的《macOS 生成 RSA 公钥和私钥》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

.NET本质论 第1卷:公共语言运行库

.NET本质论 第1卷:公共语言运行库

博克斯 (BoxDon) / 张晓坤 / 中国电力出版社 / 2004-1 / 48.00元

本书由10章组成,探讨了CLR即公共语言运行库,涵盖了基本类型、实例、方法调用和消息、AppDomain、安全、以及CLR外部世界。一起来看看 《.NET本质论 第1卷:公共语言运行库》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具