【问题标题】:Create CSR using existing private key使用现有私钥创建 CSR
【发布时间】:2012-03-17 07:14:06
【问题描述】:

我想要做的是,创建一个 CSR 并使用受密码保护的私钥(密钥)。

在 OpenSSL 中,我可以使用如下密码创建私钥:

openssl genrsa -des3 -out privkey.pem 2048

有什么方法可以使用我刚刚创建的密钥并使用该密钥生成 CSR?

如果没有,我可以通过某种方式生成 CSR 以及受密码保护的私钥吗?

【问题讨论】:

    标签: ssl openssl certificate


    【解决方案1】:

    这是the documentation of OpenSSL req的第二个例子:

    创建一个私钥,然后从中生成证书请求:

    openssl genrsa -out key.pem 2048
    openssl req -new -key key.pem -out req.pem
    

    请注意,如果您直接使用req 执行此操作(请参见第三个示例),如果您不使用-nodes 选项,您的私钥也将被加密:

    openssl req -newkey rsa:2048 -keyout key.pem -out req.pem
    

    (尽管文档说了什么,但它与第二个示例并不完全相同,因为它不使用-des3,但无论如何你都会这样做。)

    【讨论】:

    • '''openssl req -new -key key.pem -out req.pem''' 在更新证书时非常有用。
    • 为了帮助我保持直截了当,我使用以下命名约定:<domain.net>.key<domain.net>.csr<domain.net-foo-issuer>.crt<domain.net-foo-issuer>.pem 用于链等的扩展名,我从 The Most Common OpenSSL Commands 中采用。
    • 正如@DanielSokolowski 所指出的,虽然我引用的 OpenSSL 文档使用 1024 位密钥,但现在使用更大的密钥(例如 2048 或更高版本)当然值得。
    猜你喜欢
    • 2012-12-03
    • 2023-03-06
    • 1970-01-01
    • 2014-03-11
    • 1970-01-01
    • 2018-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多