骏马金龙 (新博客:www.junmajinlong.com)

网名骏马金龙,钟情于IT世界里的各种原理和实现机制,强迫症重症患者。爱研究、爱翻译、爱分享。特借此一亩三分田记录自己成长点滴!!!

openssl genrsa

分类: OpenSSL , Linux 基础篇

openssl系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html


genrsa用于生成RSA私钥,不会生成公钥,因为公钥提取自私钥,如果需要查看公钥或生成公钥,可以使用openssl rsa命令。

使用man genrsa查询其用法。

openssl genrsa [-out filename] [-passout arg] [-des] [-des3] [-idea] [numbits]

选项说明:

-out filename     :将生成的私钥保存至filename文件,若未指定输出文件,则为标准输出。

-numbits            :指定要生成的私钥的长度,默认为1024。该项必须为命令行的最后一项参数。

-des|-des3|-idea:指定加密私钥文件用的算法,这样每次使用私钥文件都将输入密码,太麻烦所以很少使用。

-passout args    :加密私钥文件时,传递密码的格式,如果要加密私钥文件时单未指定该项,则提示输入密码。传递密码的args的格式见openssl密码格式

例如:

(1).生成512位的rsa私钥,输出到屏幕。

复制代码
[root@xuexi tmp]# openssl genrsa 512
Generating RSA private key, 512 bit long modulus
..................++++++++++++
.........++++++++++++
e is 65537 (0x10001)
-----BEGIN RSA PRIVATE KEY-----
MIIBOwIBAAJBAMDIpW+o0E/XLUHB9XYgNcbLuiAA/wToy0v3GEIdtycWiK1ikXfo
XYf2PCd5ynFtNl7D8jXekr2wgnySNostXSkCAwEAAQJAdMmYnzovaA681fdAUl1U
9qd4i+bOlxTIA68fPP5vc/d+Kqk+fQlHsTmXo0ZpvdLig1v+5EsjoOlbNqkyjTVC
YQIhAPXuK5rPHlYIcmcSWrJNmmACSUz8NZb56cS/4Uq0f289AiEAyK1laGNVGIsg
ROLJqgTRP7vHHhXcQj3RhX9G/3oJBF0CIDtoEAJyW7qeibwaM+x0UIE2rCw7lFpm
/jA3xZ09IrdlAiEArvZW6stoHuz15nlgX+axVYLvWPCwR+TD70OH8ChDAlUCIQDi
LpanU8DwkkGU2KO/5jeDgUtA6jUICNkvPf5Ri5Yqag==
-----END RSA PRIVATE KEY-----
复制代码

(2).生成512位的rsa私钥,输出到指定的文件genrsa.txt。

复制代码
[root@xuexi tmp]# openssl genrsa -out genrsa.txt 512

[root@xuexi tmp]# cat genrsa.txt
-----BEGIN RSA PRIVATE KEY-----
MIIBOgIBAAJBALKdL1RuPeEVlptzzbBYQM6ItPUXwQtVgPYpJH4cHX6UcoIlNaCt
zV+4fUAjH8ZZxdThsnuCJ9BQRgezTsFv4mUCAwEAAQJAd9le89FRNiItP7vxrb1a
Jvu2KKs6vmcuNH6g3PnylIbaI62vKavTVwcq/5VGqLPXwJWeaQVvLefHAEMnOVLF
oQIhAN7q7QB1JMOGBARnVcM9by/0XtJxkHgmZjwSzLEkJNsdAiEAzR8TodfzT0i/
NmnaykyUWtszKtdcsJfbMFZl872XOekCIQDZwfwK+mQTbBL4iklJE/ZNjhYi1TUf
acNs46B5Wql2MQIgMFzPaC1edKcWTmIO7/u2TuW33rYAaLKlP3RffWSKL2ECIHKF
7avQDhh84y+kdVf4CqJ+DE/N+SZcqZi/lMDs41BG
-----END RSA PRIVATE KEY-----
复制代码

(3).加密私钥文件,加密的密码为123456。

复制代码
[root@xuexi tmp]# openssl genrsa -out genrsa.txt -des3 -passout pass:123456 512

[root@xuexi tmp]# cat genrsa.txt
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,8775D04B98C9C9EE

zx8ehH7qey+588/UVCKu37NFzMvYCBJr9jrryhg7AJtU9eKxFlDIAVNVvNqgG8k+
a5H4a7TCmHB15coFJH52tpmqdGdfo5+758QEgax/YLTPrlBufatb7ZOOpexvJMUe
oenkdYmgzUOj6WRrBUapzwwdhukXu3fpqxmke5ARBSgzsL7amvTLhSt+8ZmhITj6
Rjr55T9rFvCUUCCMKLVYzHgfrTrMTxidv4VsprO1TQ+W//fJOqFqIGJZfbqVLXsb
/0w1vsmzgB0o0k1KHZVj7L4kTGd+j/2nUtc2eaaZUkUdWTu3OflXObg0JVW2a1pG
e67UfEQ0/xhDzFIz1yDyg0v7wozKOSh9c2etsn+NOJHNa7IBsAWX/7Ufz0uxCBuX
0PkJynaFEU6YMoN5RDdDAjnlcwWHqoEbd2RhyYgja+0=
-----END RSA PRIVATE KEY-----
复制代码

其实一般情况下能用到的选项也就"-out"和"numbits"

 

转载请注明出处:https://www.cnblogs.com/f-ck-need-u/p/6089730.html

如果觉得文章不错,不妨给个打赏,写作不易,各位的支持,能激发和鼓励我更大的写作热情。谢谢!

posted @   骏马金龙  阅读(7312)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示

感谢您的支持

扫描二维码打赏

支付宝打赏