admin管理员组文章数量:1574122
openssl在windows上生成RSA密钥、DSA密钥
- 生成RSA密钥
- 生成RSA私钥
- 生成RSA公钥
- 将RSA私钥转换成 PKCS8 格式
- 生成DSA密钥
- 生成DSA参数
- 生成DSA私钥
- 生成DSA公钥
- 将DSA私钥转换成 PKCS8 格式
如果你的机器上还没有编译安装openssl,请参考我的这篇文章 VS2013 编译安装openssl及工程配置用VS2013编译安装。
生成RSA密钥
用管理员身份运行D:\LeoApp\openssl-1.0.2t\openssl_install\bin下的openssl.exe文件
请注意,如果不用管理员运行,生成过程可能会提示**“unable to write random state”**错误
生成RSA私钥
genrsa -out rsa_private_key.pem 1024
在文件夹中就生成了pem格式的RSA私钥文件rsa_private_key.pem
使用文本编辑器打开,内容如下:
-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQCtAAxhs5v9bHbleQz7ZgDkghcypVP8zK56giKp4KS+tYS0sgdY
Ui5jzykp05qFEQleE8VdN86wPdEFaDp1wZ19MbS7vbDCAwAC5yvgRYOcMlPQLLmQ
VZv9elT9lBrZ3KujHXDl4p/lQYuGeJcthvoAY5aa+U+JmoRYzXT8b7v/kQIDAQAB
AoGBAJfVtgg96gd3HbbzEijG8rubTZ7eqaLzRaMx+hhcmFrk1077/SRQJHTnCbqz
BCgLtswB0DOrWlUmPABh5QUa5AvemhqLBJh7JWfPq0VyXuRA4lmpUw3IQbFNFa9V
ErytP5h3LIs3eukh/zeC9fB4aZUFMtRzXCc43hVVjiKVws2NAkEA1KJpkHImfrVc
orYI61DcqsLjt4nhp3uR2OW7QLTiOWwhmANvYNuBSbKlQ003az2WRTqqFom76oB9
vTofIJxmqwJBANBIV85r9TsRss8l9+gIIB2B8vYw790iAuSoeJS3bf7MPi7eyhhv
rXMd49sEirT0ptTkXY/wHRw6ZMvlbZw4orMCQG4hkLuX5AhMtyYvUn9O6nwnZPpz
F8U/Y1ML6eihx2omb1/kp5NrHZOmS6KII+QPif1hXSc/P20+D+IqcGTbnPECQQDL
KnX0FZydJNNtepTKUfq5rcOIYA3pfz6hOrB8KDz0ONhDMfCiS3U+gB59yn1eq/J8
YdHeEJLksRUXStFTfG8/AkA47JlIeMEzquPZG56VVMQy0TWDPmUE5eUERLXCnZco
MTfL5vP1Wg0U6zExdafC3EVbiTc5rqg0FDp0J3I1DQNi
-----END RSA PRIVATE KEY-----
使用时,要把开头的 -----BEGIN RSA PRIVATE KEY----- 和结尾的 -----END RSA PRIVATE KEY----- 去掉。
生成RSA公钥
rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
同样的,使用时要把开头的 -----BEGIN PUBLIC KEY----- 和结尾的
-----END PUBLIC KEY---- 去掉。
将RSA私钥转换成 PKCS8 格式
pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out rsa_private_key_pkcs8.pem
如果上述生成命令不添加-out rsa_private_key_pkcs8.pem,则转换后的内容直接打印出来,如下图所示:
生成DSA密钥
生成DSA参数
dsaparam -out dsa_param.pem 1024
用记事本打开dsa_param.pem,内容如下:
-----BEGIN DSA PARAMETERS-----
MIIBHgKBgQCsSQ9K/QUaRv/z2LC63f/FeeDDhKiahF1/5T8iRcjxiofZwDblVOrz
efxLABn+CkXNxqQAX+IedFya9pQFe7j/og5gvlrYG4n3XykNnUVylBMYibyEn8Vh
zyWKjWa0K5tCNjy+gcpFtQvRtC94KWutIVf7miibx/AfsC099crk9wIVAJXzEp/S
HvqXS14+svXkHPLsAME/AoGAASIsvrZV+DWAL6nz6LiBm2LRrcwMmWwdSAo/XgWs
uHE2DON1yclI3ODlVxZy/1ymLVAcT876PhsB4b8WsXX525wKsO2tV/niedz7PfwV
f4qNMOS7Z5IY1flh2jIIFhwst0Jqmli3cD51R51xZDEly/V2lcIPQ3y61N1djpUO
bT4=
-----END DSA PARAMETERS-----
生成DSA私钥
gendsa -out dsa_private_key.pem dsa_param.pem
bang!出现错误!
解决办法就是将这个生成程序重启一下,然后重新生成私钥:
生成DSA公钥
dsa -in dsa_private_key.pem -pubout -out dsa_public_key.pem
将DSA私钥转换成 PKCS8 格式
pkcs8 -topk8 -inform PEM -in dsa_private_key.pem -outform PEM -nocrypt -out dsa_private_key_pkcs8.pem
版权声明:本文标题:openssl在windows上生成RSA密钥、DSA密钥 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1725672441a1035759.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论