(3) openssl genrsa(生成rsa私钥)
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的格式见https://www.cnblogs.com/liliyang/p/9738929.html
例如:
(1).生成512位的rsa私钥,输出到屏幕
[root@localhost tmp]# openssl genrsa 512
Generating RSA private key, 512 bit long modulus
..........++++++++++++
...++++++++++++
e is 65537 (0x10001)
-----BEGIN RSA PRIVATE KEY-----
MIIBOgIBAAJBALuTz3ryd8qew0smTSuCKoA0G7/psj1HXLu5di8AZN+8wlJxSOYH
R1S0EXqIlpOE4ajkGDVacsdV38aQyqxY5tUCAwEAAQJAXD9W3Bn+O5FUbdLKRMlg
6We29eySEXzU6CVPL9I7yaOL0OFslvWbHXY9Zvn871lNkCpthwutJ6UsbCUKHo37
SQIhAPZfFLSQfvmePHj59+dIMs/qeVIPZWCnq0yC3KaF4hZzAiEAwuiAdC2cHNLY
KKP2sDR5kfJU/zru03m0XEHdfWp4c5cCIAb++jKKa+CguqzgxEZgCXlX+iv3XfSZ
rkaU7LkZ0iq7AiEAt9wXgICd6VrD6eJyDNoTbCeLIpD3RapjBzxisbJEGdUCIGlp
WBcMHlRG5rqk+T+ONaA2wJY7lw0N8V/BuaDVtNor
-----END RSA PRIVATE KEY-----
(2).生成512位的rsa私钥,输出到指定的文件genrsa.txt
[root@localhost tmp]# openssl genrsa -out genrsa.txt 512
[root@localhost tmp]# cat genrsa.txt
-----BEGIN RSA PRIVATE KEY-----
MIIBOwIBAAJBAM+hBmDPXongltEIy6Zkk+YhNNpGZKHzCLjWeQpd6qTSgVrST+kO
Ci1bNI/D6Lm5kYk6YNQfxzkb58JoaGhPF3MCAwEAAQJAYWnPMESaul2g5NoXki3G
JkaWIYK9XC5GfVJC39ZIbKNtphy3Cqw5FfVn7YEg/Dl1Tn/ZyWoLCapyc1Z/TRqB
oQIhAP46ZHnj3bvQJ8mK5NtyBPv1uVjicpva78ukjXtwOJ8FAiEA0RN84R2BiLnc
v3wFQ1HPJbY6ud8PvhHlaBlieuji9hcCIATGdgKwHAceFtE7UacpkhxldjDMOBjj
WOO7WIj8B6Q9AiEAn+l15IC66KawDs1/AQR7me6NcEkKM2hgvIRd7IBfx7UCIQDR
J3sGcE0mIICOTtmW2FgdvOuf2UmVO9MDXfZv6chdww==
-----END RSA PRIVATE KEY-----
(3).加密私钥文件,加密的密码为123456
[root@xuexi tmp]# openssl genrsa -out genrsa.txt -des3 -passout pass:123456 512 #这里使用了-des3算法对私钥文件加密,如果不使用-passout选项指定密码,
会进入交互式,提示输入密码
Generating RSA private key, 512 bit long modulus
...++++++++++++
............++++++++++++
e is 65537 (0x10001)
[root@xuexi tmp]# cat genrsa.txt
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,E9BB63C62F16598B
PJ0fTX8ywxeAfyJwMOucep6cU6Rb38MgoxWQ8VzS+iUfp5KEMdxWa24IkgQmu+Nl
uzZiuuMzvxV7yQr69xVq8VArW5jOhGyNsUSgtwUD6XsoBGerEjjHLj7C4tlLumbx
AtGCE+WmJcG3il3FgTmK4DdkwkdQmVfJt0tbpVXcl0l7iVuIMLu+oN7tuIvIcA0B
0uuWaVCYLrhCvp6zGJnPKNFbmM4YDjVwjl/Bei9iuAV7dmZhprWqfYB/oSMvEMLd
KMHmNHq38vjCGgPS9Oi7leKsMWf7PoXvT59yDm/2z0EwxJnzfOAGe2u+KqjKoRUT
yXVMfmAVeb5sZS5c57ZPmqu+MBqagVa2pwQkgVRS1sILPYSGCdmN6cJA6jztjRAD
Uz4XbIDtPe0G5Eq+OhSPc8pU33M3BVcKaNU1ulyjojM=
-----END RSA PRIVATE KEY-----
一般情况下能用到的选项也就"-out"和"numbits"
(3) openssl genrsa(生成rsa私钥)的更多相关文章
- 使用OpenSSL为支付宝生成RSA私钥
通过openssl工具生成RSA的公钥和私钥(opnssl工具可在互联网中下载到,也可以点此下载无线接口包,里面包含此工具)打开openssl文件夹下的bin文件夹,执行openssl.exe文件: ...
- openssl mac中使用终端生成RSA私钥和公钥文件
RSA密钥生成命令生成RSA私钥openssl>genrsa -out rsa_private_key.pem 1024生成RSA公钥openssl>rsa -in rsa_private ...
- windows 下 openssl 生成RSA私钥公钥以及PKCS8
生成RSA私钥 打开bin文件夹下面的openssl.exe,输入genrsa -out rsa_private_key.pem 1024 把RSA私钥转换成PKCS8格式 输入命令pkcs8 -to ...
- 使用openssl命令剖析RSA私钥文件格式
原文 https://blog.csdn.net/zhymax/article/details/7683925 Openssl提供了强大证书功能,生成密钥对.证书,颁发证书.生成crl.验证证书.销毁 ...
- mac中使用终端生成RSA私钥和公钥文件
1.打开终端输入:cd Desktop/ //进入桌面 2.OpenSSL //打开 OpenSSL 3.生成私钥pem, 执行命令 genrsa -out rsa_private_ke ...
- 生成 RSA 私钥及公钥
$ openssl # 进入 OpenSSL 程序 OpenSSL> genrsa -out rsa_private_key.pem 1024 # 生成私钥 OpenSSL> pkcs8 ...
- 使用mac终端生成RSA私钥和公钥文件
89:~ zhangwenquan$ 89:~ zhangwenquan$ openssl OpenSSL> genrsa -out rsa_private_key.pem 1024 Gener ...
- C++调用openssl库生成RSA加密秘钥对
直接上代码.默认生成的是pkcs#1格式 // ---- rsa非对称加解密 ---- // #define KEY_LENGTH 1024 // 密钥长度 #define PUB_KEY_FILE ...
- OPENSSL中RSA私钥文件(PEM格式)解析【一】
http://blog.sina.com.cn/s/blog_4fcd1ea30100yh4s.html 在PKCS#1 RSA算法标准中定义RSA私钥语法为: RSAPrivateKey ::= S ...
随机推荐
- bzoj 4503: 两个串【脑洞+FFT】
真实脑洞题 因为通配符所以导致t串实际有指数级别个,任何字符串相关算法都没有用 考虑一个新的匹配方法:设a串(模板串)长为n,从m串的i位置开始匹配:\( \sum_{i=0}^{n-1}(a[j]- ...
- AFN清除图片缓存 以及菊花转圈
AFNetworking网络库已经提供了很好的图片缓存机制,效率是比较高的,但是我发现没有直接提供清除缓存的功能,可项目通常都需要添加 清除功能的功能,因此,在这里我以UIImageView+AFNe ...
- Window下完全卸载删除Nodejs
如何从Windows中删除Node.js: 1.从卸载程序卸载程序和功能. 2.重新启动(或者您可能会从任务管理器中杀死所有与节点相关的进程). 3.寻找这些文件夹并删除它们(及其内容)(如果还有). ...
- Educational Codeforces Round 18 B
Description n children are standing in a circle and playing the counting-out game. Children are numb ...
- JDBC全部分析
2.1.搭建实验环境 1.在mysql中创建一个库,并创建user表和插入表的数据. SQL脚本如下: 1 create database jdbcStudy character set utf8 c ...
- ASP.NET Core Action 读取流
以前mvc5 action可以直接使用 var stream = HttpContext.Current.Request.InputStream; 读取流,在Core中有所不同,可以使用以下方式读取 ...
- Netty实现WebSocket
package com.qmtt.server; import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; ...
- 使用cordova把h5应用打包成apk
由于h5应用开发不是本例重点,因此直接提供一个最简单的h5应用代码,此应用使用vue-cli框架开发 此h5应用叫vue1,用webstrom打开vue1,进行npm install安装引用 vue1 ...
- 架包Error inflating class错误
当引用架包后,出现Error inflating class错误时通常要检测架包是否正确引用: 1.首先将你所需要的架包拷贝到工程目录下: 2.右击工程,选择Build Path-->confi ...
- The lion king 经典句型摘录
What am I going to do with him? Everything the light touches is our kingdom. But I thought a king ca ...