码迷,mamicode.com
首页 > 其他好文 > 详细

[svc]证书各个字段的含义

时间:2017-12-22 15:00:54      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:data   log   fss   cfssl   ice   quit   info   client   java   

证书生成工具

  • 1,openssl
  • 2,jdk自带的keystone
  • 3,cfssl

证书中各个字段的含义

数字证书中主题(Subject)中字段的含义
一般的数字证书产品的主题通常含有如下字段:
公用名称 (Common Name) 简称:CN 字段,对于 SSL 证书,一般为网站域名;而对于代码签名证书则为申请单位名称;而对于客户端证书则为证书申请者的姓名; 
单位名称 (Organization Name) :简称:O 字段,对于 SSL 证书,一般为网站域名;而对于代码签名证书则为申请单位名称;而对于客户端单位证书则为证书申请者所在单位名称; 
证书申请单位所在地: 
所在城市 (Locality) 简称:L 字段 
所在省份 (State/Provice) 简称:S 字段 
所在国家 (Country) 简称:C 字段,只能是国家字母缩写,如中国:CN 
其他一些字段:
电子邮件 (Email) 简称:E 字段 
多个姓名字段 简称:G 字段 
介绍:Description 字段 
电话号码:Phone 字段,格式要求 + 国家区号 城市区号 电话号码,如: +86 732 88888888 
地址:STREET  字段 
邮政编码:PostalCode 字段 
显示其他内容 简称:OU 字段

技术分享图片

HTTPS证书生成原理和部署细节

使用rsa一键生成:
openssl req -x509 -days 3650 -nodes -newkey rsa:2048 -keyout java-demo.key -out java-demo.crt

国家 省份 城市 公司 部门 名字
[root@test52 registry]# openssl req -x509 -days 3650 -nodes -newkey rsa:2048 -keyout docker-registry.key -out docker-registry.crt
Generating a 2048 bit RSA private key
............................................+++
.....................................................................................................................................................................................+++
writing new private key to 'docker-registry.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN


State or Province Name (full name) []:Locality Name (eg, city) [Default City]:guangdong
Organization Name (eg, company) [Default Company Ltd]:pp100
Organizational Unit Name (eg, section) []:it
Common Name (eg, your name or your server's hostname) []:www.maotai.com
Email Address []:ihorse@foxmail.com

第一步,为服务器端和客户端准备公钥、私钥:

# 生成服务器端私钥
openssl genrsa -out server.key 1024
# 生成服务器端公钥
openssl rsa -in server.key -pubout -out server.pem
# 生成客户端私钥
openssl genrsa -out client.key 1024
# 生成客户端公钥
openssl rsa -in client.key -pubout -out client.pem

第二步,生成 CA 证书:

# 生成 CA 私钥
openssl genrsa -out ca.key 1024
# X.509 Certificate Signing Request (CSR) Management.
openssl req -new -key ca.key -out ca.csr
# X.509 Certificate Data Management.
openssl x509 -req -in ca.csr -signkey ca.key -out ca.crt

第三步,生成服务器端证书和客户端证书:

# 服务器端需要向 CA 机构申请签名证书,在申请签名证书之前依然是创建自己的 CSR 文件
openssl req -new -key server.key -out server.csr
# 向自己的 CA 机构申请证书,签名过程需要 CA 的证书和私钥参与,最终颁发一个带有 CA 签名的证书
openssl x509 -req -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt
 
# client 端
openssl req -new -key client.key -out client.csr
# client 端到 CA 签名
openssl x509 -req -CA ca.crt -CAkey ca.key -CAcreateserial -in client.csr -out client.crt

[svc]证书各个字段的含义

标签:data   log   fss   cfssl   ice   quit   info   client   java   

原文地址:http://www.cnblogs.com/iiiiher/p/8085698.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!