Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了linux – openssl总是加密私钥吗?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

使用openssl 0.9.8创建新的自签名证书密钥时,有一个-nodes参数可用于告诉openssl不加密它创建的私钥.例如: openssl req -x509 -nodes -days 365 \ -subj '/C=US/ST=Florida/L=Jupiter/CN=test.com' \ -newkey rsa:1024 -keyout mykey.pem -out m
使用openssl 0.9.8创建新的自签名证书密钥时,有一个-nodes参数可用于告诉openssl不加密它创建的私钥.例如:
openssl req -x509 -nodes -days 365 \
    -subj '/C=US/ST=Florida/L=Jupiter/CN=test.com' \
    -newkey rsa:1024 -keyout mykey.pem -out mycert.pem

但是使用新的openssl v1.0.1,似乎忽略了-nodes参数.据我所知,私钥始终是加密的.我使用openssl错了吗?@R_859_10675@用不同的参数吗?

-nodes参数记录为:

if this option is specified then if a private
key is created it will not be encrypted

资料来源:http://www.openssl.org/docs/apps/req.html#item__nodes

更多详情请问:

使用openssl 0.9.8,密钥证书可以直接导入我们拥有的其他第三方设备,这些设备需要未加密的密钥和证书.这没有任何问题.

但是当使用openssl 1.0.1时,这些第三方设备会抱怨密钥无效.确切的错误消息是:

ERROR: Private key for 'My Cert' does not appear to be a valid
RSA private key in PEM format.

这是一个封闭的源系统,它不提供其他详细信息.我今天通过玩它发现的是,如果我通过这个命令运行v1.0.1私钥:

openssl rsa -in mykey.pem -out decryptedkey.pem

…那么此时第三方系统导入证书和解密密钥没有问题.当我在v1.0.1键上运行此命令时:

openssl rsa -text -in mykey.pem

…私钥的文本与v1.0.1 mykey.pem文件中的文本不同.这就是我认为密钥以某种方式加密的原因.

解决方法

看起来认格式在以后的版本中已更改.早期版本似乎产生PKCS#1 RSAPrivateKey格式,如表所示
-----BEGIN RSA PRIVATE KEY-----

并且更高版本生成PKCS#8 PrivateKeyInfo格式,如表示

-----BEGIN PRIVATE KEY-----

当你打开rsa -in mykey.pem -out decryptedkey.pem时你将#8转换为#1

大佬总结

以上是大佬教程为你收集整理的linux – openssl总是加密私钥吗?全部内容,希望文章能够帮你解决linux – openssl总是加密私钥吗?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。