说起SSL证书的时候,势必会提到CSR这么一个词汇,本文就围绕CSR是什么,什么样,如何生成等内容做个详细的说明。
CSR是什么
CSR是Certificate Signing Request的英文缩写,即证书签名请求文件,是证书申请者在申请数字证书时由CSP(加密服务提供者)在生成私钥的同时也生成证书请求文件,证书申请者只要把CSR文件提交给证书颁发机构后,证书颁发机构使用其根证书私钥签名就生成了证书公钥文件,也就是颁发给用户的证书。
CSR什么样
CSR是以-----BEGIN CERTIFICATE REQUEST-----开头,-----END CERTIFICATE REQUEST-----为结尾的base64格式的编码。将其保存为文本文件,就是所谓的CSR文件。
CSR如何生成
目前,CSR生成工具非常多,比如openssl工具,keystore explore,XCA等,这里介绍一款在线工具:https://myssl.com/csr_create.html
这里有几个关键的要注意下:
- 域名必须正确输入(如果是非SSL证书,则输入相应的通用名)。
- 密钥算法选择RSA的话,密钥长度需要2048bit以上(这个默认是2048,没有特殊情况,不要特殊设置);ECC则是256bit以上。
- 摘要签名虽说目前可以任意,但建议是sha2-256以上。
CSR生成注意事项 匹配的KEY必须保存
有CSR必定有KEY,是成对的,CSR最终变成为证书,和私钥key配对使用。Key是以-----BEGIN RSA PRIVATE KEY-----开头的,-----END RSA PRIVATE KEY-----结尾的。Key必须保存好。
CSR生命周期
证书下发后,CSR无需使用,仅提交时候需要。
参考链接:https://www.trustasia.com/news-201801-what-is-the-role-and-generation-of-csr-and-csr