前言
说起SSL证书的时候,势必会提到CSR这么一个词汇,本文就围绕CSR是什么,什么样,如何生成等内容做个详细的说明。
CSR是什么
CSR是Certificate Signing Request的英文缩写,即证书签名请求文件,是证书申请者在申请数字证书时由CSP(加密服务提供者)在生成私钥的同时也生成证书请求文件,证书申请者只要把CSR文件提交给证书颁发机构后,证书颁发机构使用其根证书私钥签名就生成了证书公钥文件,也就是颁发给用户的证书。
CSR什么样
CSR是以-----BEGIN CERTIFICATE REQUEST-----开头,-----END CERTIFICATE REQUEST-----为结尾的base64格式的编码。将其保存为文本文件,就是所谓的CSR文件。
CSR如何生成
目前,通常CSR文件是在拿到参考码、授权码进行证书签发和下载时,通过网页提交给CA的(也可以由CSR生成工具生成)。CSR生成工具非常多,这里介绍一款在线工具:SSL证书在线工具包
这里有几个关键的要注意下:
域名必须正确输入(如果是非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无需使用,仅提交时候需要。