似乎以下两个命令(来自 LibreSSL 的 openssl)都会生成私钥。它们之间有区别吗?如果不是,为什么有两种生成私钥的方法?谢谢。
openssl genrsa -out key.pem 1024
openssl genpkey -algorithm rsa -out privkey.pem -pkeyopt rsa_keygen_bits:1024
两种方式都会创建 RSA 密钥,尽管格式不同。genrsa
输出 PKCS#1 格式的 RSA 密钥,同时genpkey
输出一个更通用的容器,可以管理不同类型的密钥(如 ECC)。有关更多信息,请参阅“BEGIN RSA PRIVATE KEY”和“BEGIN PRIVATE KEY”之间的差异。
请注意,genpkey 的文档明确指出应该使用此工具而不是特定于算法的 genrsa:
鼓励使用 genpkey 程序而不是算法特定的实用程序,因为可以使用其他算法选项和 ENGINE 提供的算法。