SSL/TLS 证书管理key、c​​rt 和 pem

问题描述

我有一个关于 TLS/SSL(自签名证书)的问题

我正在尝试通过使用 TLS/SSL 使用多种工具(ncat、socat)打开连接。 当然,首先我需要生成证书。 (Key是KEY,Cert是CERT,PEM是编码格式)。我找到了两种不同的方法

1) openssl req -new -x509 -keyout test-key.pem -out test-cert.pem.

2) openssl req -newkey rsa:2848 -nodes -keyout test.key -x589 -out test-cert.crt
   cat test-key.key test-cert.crt > test-pem.pem

我的问题:

  1. 为什么在一天结束时我们将 CERT 与 KEY 结合起来? CERT 不应该已经有 KEY 了吗?
  2. 为什么在大多数教程中,如果 cert 已经有密钥,我们(通过 socat/ncat 上的侦听器)发送密钥和证书?

(假设我们不验证证书)

感谢支持

解决

解决方法

CERT 不应该已经有 KEY 了吗?

证书里面有公钥。密钥文件是私有密钥。公钥对其他人可见(证书的其余部分也是如此),私钥应保密。