当前位置: 首页 > 知识库问答 >
问题:

如何使用OpenSSL创建自签名证书

赵选
2023-03-14

我正在为嵌入式Linux设备添加HTTPS支持。我尝试通过以下步骤生成自签名证书:

openssl req -new > cert.csr
openssl rsa -in privkey.pem -out key.pem
openssl x509 -in cert.csr -out cert.pem -req -signkey key.pem -days 1001
cat key.pem>>cert.pem

这是可行的,但我得到一些错误,例如,谷歌Chrome:

共有1个答案

高增
2023-03-14

您可以在一个命令中完成此操作:

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365

如果不想用密码短语保护私钥,还可以添加-nodes(简称no des)。否则,它将提示您输入“至少4个字符”的密码。

days参数(365)可以替换为任何数字以影响到期日期。然后它会提示您输入“国家名称”之类的内容,但您只需点击Enter并接受默认值。

除非您以前将自签名证书导入到浏览器,否则不会与任何第三方验证自签名证书。如果需要更多的安全性,则应使用由证书颁发机构(CA)签名的证书。

 类似资料:
  • 看看PayPal(https://www.PayPal.com/)的安全证书。它说:连接加密:高级加密(TLS_RSA_WITH_AES_256_CBC_SHA,256位密钥)。 现在,我如何创建自己签名的证书,使其具有相同的加密,AES256? 我在OpenSSL中尝试了以下代码: 最后我得到了128位证书。然后我试着: 即使我指定了'-aes256',我最终还是得到了128位证书:连接加密:高

  • 我是不是漏掉了什么?这是构建自签名证书的正确方法吗?

  • 我正在尝试验证使用BearSSL在嵌入式设备上使用OpenSSL创建的ECDSA签名。 首先,我使用OpenSSL创建了一个私钥并提取了公钥: 然后我提取了原始公钥: 我有一个,它只包含,并使用以下命令对此进行签名: 现在,它包含ASN1格式的签名,长度如预期的那样为72个字节: 现在到嵌入部分。我首先包括数据、签名和公钥: 此外,出于偏执,我比较了和我的字符串的md5和,然后再进行进一步的快速检

  • 我们不允许对堆栈溢出提出有关专业服务器或网络相关基础设施管理的问题。您可以编辑问题,使其位于堆栈溢出主题上。 我正在向嵌入式Linux设备添加HTTPS支持。我已尝试使用以下步骤生成自签名证书: 这工作,但我得到一些错误,例如,谷歌Chrome: 这可能不是你要找的网站 站点的安全证书不受信任! 我错过什么了吗?这是构建自签名证书的正确方法吗?

  • 我正在编写一些代码,试图对一些数据进行签名。在将openssl生成的私钥转换为Java密钥库之后,我将Java签名类与SHA256withRSA一起使用。我试图确认openssl中Java类返回的签名,但由于某些原因,我无法让openssl进行验证。我最终需要在iOS Swift 3中实现这个签名验证,但在找到库之前,我想尝试根据openssl标准检查Java签名。 例如,我从我们的登录服务器得到

  • 我想生成一个自签名SSL证书,并将其与Tomcat一起使用。 我怎么能这样呢?