如何制作CSR文件?
如何制作CSR文件?
在申请数字证书之前,您必须先生成证书私钥和证书请求文件(CSR,Cerificate Signing Request),CSR是您的公钥证书原始文件,包含了您的服务器信息和您的单位信息,需要提交给CA认证中心。在生成CSR文件时会同时生成私钥文件,请妥善保管和备份您的私钥。
生成CSR文件时,一般需要输入以下信息(中文需要UTF8编码):
Organization Name(O):申请单位名称法定名称,可以是中文或英文
Organization Unit(OU):申请单位的所在部门,可以是中文或英文
Country Code(C):申请单位所属国家,只能是两个字母的国家码,如中国只能是:CN
State or Province(S):申请单位所在省名或州名,可以是中文或英文
Locality(L):申请单位所在城市名,可以是中文或英文
Common Name(CN):申请SSL证书的具体网站域名
1. 使用OpenSSL工具生成CSR文件:
openssl req -new -nodes -sha256 -newkey rsa:2048 -keyout myprivate.key -out mydomain.csr
-new 指定生成一个新的CSR,nodes指定私钥文件不被加密, sha256 指定摘要算法,keyout生成私钥, newkey rsa:2048 指定私钥类型和长度,最终生成CSR文件mydomain.csr。

需要输入的信息说明如下:
| 字段 | 说明 | 示例 |
|---|---|---|
| Country Name |
ISO国家代码(两位字符) |
CN |
|
State or Province Name |
所在省份 | ZheJiang |
|
Locality Name |
所在城市 | HangZhou |
|
Organization Name |
公司名称 | HangZhou xxx Technologies, Inc. |
|
Organizational Unit Name |
部门名称 |
IT Dept. |
| Common Name | 申请证书的域名 | www.example.com |
| Email Address | 不需要输入 | |
| A challenge password | 不需要输入 |
完成命令提示的输入后,会在当前目录下生成myprivate.key(私钥文件)和mydomain.csr(CSR,证书请求文件)两个文件。
在使用openssl工具生成中文证书时需要注意中文编码格式,使用utf8编码,同时需要编译openssl工具时指定支持utf8格式。
如果对中文有需求,推荐您使用keytool工具。
2. 使用keytool工具生成CSR文件:
- 2.1 先生成证书文件keystore, 证书文件中包含密钥, 导出密钥方式请参考 主流数字证书都有哪些格式?
keytool -genkey -alias mycert -keyalg RSA -keysize 2048 -keystore ./mydomain.jks
keyalg是密钥类型,必须是RSA, keysize是密钥长度为2048, alias 是证书别名可自定义, keystore是证书文件保存路径。

首先输入证书保护密码,然后依次输入:
| 问题 | 说明 | 示例 |
|---|---|---|
| What is your first and last name? | 申请证书的域名 | www.example.com |
| What is the name of your organizational unit? | 部门名称 | IT Dept. |
| What is the name of your organization? | 公司名称 | HangZhou xxx Technologies,Ltd. |
| What is the name of your City or Locality? | 所在城市 | HangZhou |
| What is the name of your State or Province? | 所在省份 | ZheJiang |
| What is the two-letter country code for this unit? | ISO国家代码(两位字符) | CN |
输入完成后,确认输入内容是否正确:[no]: Y (输入Y)
而后提示输入密钥密码,可以与证书密码一致,如果一致则直接按回车。
- 2.2 通过证书文件生成证书请求:
keytool -certreq -sigalg SHA256withRSA -alias mycert -keystore ./mydomain.jks -file ./mydomain.csr
sigalg是摘要算法,使用SHA256withRSA, alias 是别名,必须与2.1步中的别名一致,keystore是证书文件,file是证书请求文件(CSR),而后提示输入证书密码即可以生成mydomain.csr。
需要注意的是:我们对CSR的密钥长度有严格要求,要求是2048位,密钥类型必须为RSA。如果申请证书是多域名或者通配子域名,在“Common Name”或"What is your first and last name?" 字段只需要输入一个域名即可(通配子域名可以输入“*.example.com"等)。
如何制作CSR文件?的更多相关文章
- 3种方法快速制作tpk文件 [转]
tpk是ArcGIS10.1推出的一种新的数据文件类型,主要是用于将切片文件打包形成离线地图包,tpk可以在ArcGIS Runtime或者ArcGIS for Android/iOS中作为切片底图被 ...
- NSIS使用教程(安装包制作安装文件教程,如何封装打包文件) 中文版
nsis中文版(Nullsoft Scriptable Install System)是一个专业的开源的可以用来封闭Windows程序的实用工具,是一个开源的 Windows 系统下安装程序制作程序. ...
- Ubuntu下制作ISO文件
利用Ubuntu自带的命令mkisofs就可以制作iso文件,具体方法如下: 1. 如果你是直接从cd压制iso文件的,执行 sudo umount /dev/cdromdd if=/dev/cd ...
- 用C#制作PDF文件全攻略
用C#制作PDF文件全攻略 目 录 前 言... 3 第一部分 iText的简单应用... 4 第一章 创建一个Document 4 第一步 创建一个Document实例:... 5 第二步 ...
- 制作BibTex文件
上一篇日志中讲到了在LaTeX中使用BibTex管理参考文献,这篇日志具体总结下如何制作BibTex文件. 制作BibTex文件,主要有以下几种方法: 手工制作: 直接从期刊数据库中下载: 借助Goo ...
- 如何制作iso文件
UltraISO 9.6.2.3059中文完美破解安装版 http://www.upantool.com/qidong/2011/UltraISO_v9.5.0.2800.html 软碟通v9.6.2 ...
- 使用和制作patch文件
使用和制作patch文件 发表时间: 2007-2-13 20:57 作者: superuser 来源: 迷茫人 字体: 小 中 大 | 打印 原文http://www.linuxsir. ...
- 实战DeviceIoControl 之三:制作磁盘镜像文件
Q DOS命令DISKCOPY给我很深的印象,现在也有许多"克隆"软件,可以对磁盘进行全盘复制.我想,要制作磁盘镜像文件,DeviceIoControl应该很有用武之地吧? A 是 ...
- winform利用ImageList控件和ListView控件组合制作图片文件浏览器
winform利用ImageList控件和ListView控件组合制作图片文件浏览器,见图,比较简单,实现LISTVIEW显示文件夹图片功能. 1.选择文件夹功能代码: folderBrowserDi ...
随机推荐
- Exception-异常
异常(Exception)是程序执行过程中所产生的问题 产生原因:用户输入无效数字.找不到需要打开的文件.在通讯中网络连接中断.JVM发生了内存溢出 异常的三个种类:检查异常.运行时异常.错误(类似异 ...
- NOIP2013 题解
转圈游戏 题解:快速幂 #include <cstdio> int n, m, k, x; inline long long QuickPow(int a, int k, int MOD) ...
- marquee标签属性详解(跑马灯文字效果)
请大家先看下面这段代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...
- ubuntu下phpmyadmin配置
经常出现的问题就是明明安装了phpmyadmin但却在输入 http://localhost/phpmyadmin的时候,没有出现管理界面,反而出现没有找到的页面. 不急,我们先安装再了phpmyad ...
- Nginx 常用伪静态配置
1. /a/b?c=d => index.php?_a=a&_m=b&c=d 2. /xxx/detail-yyy.html => index.php?_a=xxx& ...
- Servlet的几种跳转(转)
源地址:http://hi.baidu.com/awmtaplnaibmnxq/item/29d76f3dafcf00312e20c482 Servlet: 当然,在servlet中,一般跳转都发生在 ...
- JSON.parse解析单引号名值对报错
今天整理代码的时候发现JSON.pare解析时会报了一个错误,而且很难找原因,调试了几分钟没有成功,猜测可能是单双引号引起的错误.修改了单双引号后程序正常运行了,现在记录下这个bug. 关于JSON. ...
- Nhibernate的介绍
1.介绍的内容 1.感谢园友的文章支持 by 李永京 by wolfy 2.Nhibernate的框架介绍 3.Nhibernate的架构介绍 4.Nhibernate映射方法介绍(该点自己也存在一定 ...
- 【基础知识】.Net基础加强10天
一. 复习 1. 委托是类型,还是一种引用类型. 2. 使用委托的时候必须new一个委托对象.即便看到代码中没有new委托对象,编译器也会在编译的时候帮我们new赋值给委托的方法,其实是存储在委托对象 ...
- NUnit-Console 命令行选项详解
本文为 Dennis Gao 原创或翻译技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. NUnit-Console 命令行选项 NUnit-Console 命令行选项列表 指定运行哪 ...