在 Ubuntu 12.04 上创建自签名 DSA 证书的参数?

0 certificate ssl rsa dsa

我想在 Ubuntu 12.04 上创建一个自签名 DSA 证书,以便与网络服务器和 TLS 1.2 (HTTPS) 连接一起使用。

我发现您可以运行以下命令来创建一个 RSA:

openssl genrsa -out server.key 3072
Run Code Online (Sandbox Code Playgroud)

但是我需要以下属性:

  • 使用常规 DSA 算法(非 ECDSA)的 3072 位密钥长度
  • 使用 384 位的 SHA2 加密哈希函数
  • 使用“完美前向保密”选项
  • 指定 AES 256 作为对称密码的第一优先顺序
  • 不需要对私钥进行加密(以允许无人值守的重启)。

有人可以帮助我使用参数来执行上面的以下选项吗?

当一个 TLS 会话被启动时,你如何确保它每次都生成一个新的随机签名值k?这显然对算法的安全性至关重要。或者,OpenSSL 是自动的吗?

我在这里找到了这个 TLS 1.2 密码套件TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 我该如何告诉它使用它?

提前致谢。

tyl*_*erl 6

无论你在做什么,根据你提出这个问题的方式,你很可能做错了。如果你在某处发现一篇博客文章告诉你你需要做这个或那个,不要只是在不知道它说的是什么的情况下跟随它。我之所以这么说是因为您要求的大多数功能与创建自签名 DSA 证书无关。

相反,发布一个问题,询问您实际想要完成的工作。可能解决方案不是您认为的那样。

但是既然你问了,下面是你如何生成一个 3072 位的自签名 DSA 证书:

openssl dsaparam -out params.pem 3072
openssl gendsa -out key.pem params.pem
openssl req -new -key key.pem -out req.pem
openssl x509 -req -in req.pem -signkey key.pem -out certificate.cer
Run Code Online (Sandbox Code Playgroud)