何时在SSL证书申请过程中生成私钥?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了何时在SSL证书申请过程中生成私钥?相关的知识,希望对你有一定的参考价值。
我是SSL和证书注册世界的新手,所以请原谅我的无知。我最近的任务是通过PowerShell自动化我们的证书续订和发布流程,我正试图围绕这个过程。
我知道私钥存储在服务器端,用于加密/解密过程,但我不确定何时生成该私钥。生成CSR时是否会发生这种情况,或者仅在从CA收到并安装证书时才创建私钥?
我做了一些测试,其中我创建了自签名证书,我可以通过OpenSSL找到私钥,但我不确定它来自哪里。任何见解将不胜感激!
生成CSR时是否会发生这种情况
是,在生成CSR时或之前。 CSR的关键组成部分是公钥 - 公钥实际上是构成私钥的信息的一个子集(这就是我们有时将其称为密钥对的原因)。
因此,为了生成CSR,首先需要一个密钥对。
值得注意的是,由于CSR和由此产生的证书仅包含密钥的公共部分,因此可以安全地通过无法保证隐私的渠道进行交换。
Server CA
| |
1. Create key-pair |
| |
2. Create CSR w/pub-key |
| |
3. Send CSR to CA ---------------->|
| |
| 4. Vet ownership claims in CSR
| |
| 5. Issue signed Certificate
| signature must span the pub-key
| |
|<---------------- 6. Send Certificate back
| |
7. Install signed cert |
| |
8. Decrypt traffic using priv key |
| |
| |
请注意,私钥在任何时候都不会离开您的服务器 - 它不是CAT生成器,因此它必须在您生成CSR之前存在
我做了一些测试,其中我创建了自签名证书,我可以通过OpenSSL找到私钥,但我不确定它来自哪里。
值得注意的是,当您使用openssl req
或IIS管理器等工具创建新的CSR或自签名证书时,除非您明确指定一个工具,否则工具会默默地为您生成密钥 - 具体来说,请参阅this related ServerFault answer
抽象流程如下:
- 生成公钥/私钥对。
- 公钥和其他数据进入CertificationRequest / Certificate Signing Request。
- CA查看提交它的CSR以及他们喜欢的任何其他内容,并拒绝它或颁发证书。
- 私钥持有者现在可以将私钥与证书相关联。
CA有“坏”产品,其中CA生成私钥并向客户发送PFX,但它不是安全流(因为现在“太多实体”知道/知道私钥)。
如果您正在进行自签名证书,则中间的两个步骤通常合并为一个。
以上是关于何时在SSL证书申请过程中生成私钥?的主要内容,如果未能解决你的问题,请参考以下文章