Atitti.数字证书体系cer pfx attilax总结
Atitti.数字证书体系cer pfx attilax总结
一、数字证书常见标准
数字证书体现为一个或一系列相关经过加密的数据文件。常见格式有:
§ 符合PKI ITU-T X509标准,传统标准(.DER
.PEM .CER .CRT)
§ 符合PKCS#7
加密消息语法标准(.P7B .P7C .SPC .P7R)
§ 符合PKCS#10
证书请求标准(.p10)
§ 符合PKCS#12
个人信息交换标准(.pfx *.p12)
当然,这只是常用的几种标准,其中,X509证书还分两种编码形式:
§ X.509 DER(Distinguished Encoding Rules)编码,后缀为:
.DER .CER .CRT
§ X.509 BASE64编码,后缀为:
.PEM .CER .CRT
X509是数字证书的基本规范,而P7和P12则是两个实现规范,P7用于数字信封,P12则是带有私钥的证书实现规范
数字证书文件格式(cer和pfx)的区别:
由定义可以看出,只有pfx格式的数字证书是包含有私钥的,cer格式的数字证书里面只有公钥没有私钥。
Windows下常见两种证书,后缀为.cer的通常存放公钥,后缀为.pfx的通常存放私钥。有时候想看一下其中内容到底是什么,又不想写程序,这个时候OpenSSL的命令行工具就很有用了。
.cer格式比较好处理,它就是一个x509证书,openssl直接可以处理,只需要执行
二、数字证书存储内容
采用的标准不同,生成的数字证书,包含内容也可能不同。
下面就证书包含/可能包含的内容做个汇总,一般证书特性有:
§ 存储格式:二进制还是ASCII
§ 是否包含公钥、私钥
§ 包含一个还是多个证书
§ 是否支持密码保护(针对当前证书)
其中:
§ *.der/*.cer/*.crt
以二进制形式存放证书,只有公钥,不包含私钥。
§ *.csr
证书请求
§ *.pem
以Base64编码形式存放证书,以"-----BEGIN CERTIFICATE-----" and "-----END CERTIFICATE-----"封装,只有公钥。
§ *.pfx/*.p12也是以二进制形式存放证书,包含公钥、私钥,包含保护密码。pfx和p12存储格式完全相同只是扩展名不同。
§ *.p10
证书请求
§ *.p7r CA对证书请求回复,一般做数字信封
§ *.p7b/*.p7c
证书链,可包含一个或多个证书。
理解关键点:
§ 凡是包含私钥的,一律必须添加密码保护(加密私钥),因为按照习惯,公钥是可以公开的,私钥必须保护,所以明码证书以及未加保护的证书都不可能包含私钥,只有公钥,不用加密。
§ 上文描述中,*.der均表示证书且有签名,实际使用中,还有DER编码的私钥不用签名,实际上只是个“中间件”。
X.509是一种非常通用的证书格式。
所有的证书都符合ITU-T X.509国际标准,因此(理论上)为一种应用创建的证书可以用于任何其他符合X.509标准的应用。
详细特征
、X.509版本号:指出该证书使用了哪种版本的X.509标准,版本号会影响证书中的一些特定信息。目前的版本是3。
2、证书持有人的公钥:包括证书持有人的公钥、算法(指明密钥属于哪种密码系统)的标识符和其他相关的密钥参数。
3、证书的序列号:由CA给予每一个证书分配的唯一的数字型编号,当证书被取消时,实际上是将此证书序列号放入由CA签发的CRL(Certificate
Revocation List证书作废表,或证书黑名单表)中。这也是序列号唯一的原因。
4、主题信息:证书持有人唯一的标识符(或称DN-distinguished
name)这个名字在 Internet上应该是唯一的。DN由许多部分组成,看起来象这样:
CN=Bob Allen, OU=Total Network Security Division
O=Network Associates, Inc.
C=US
这些信息指出该科目的通用名、组织单位、组织和国家或者证书持有人的姓名、服务处所等信息。
5、证书的有效期:证书起始日期和时间以及终止日期和时间;指明证书在这两个时间内有效。
6、认证机构:证书发布者,是签发该证书的实体唯一的CA的X.509名字。使用该证书意味着信任签发证书的实体。(注意:在某些情况下,比如根或顶级CA证书,发布者自己签发证书)
7、发布者的数字签名:这是使用发布者私钥生成的签名,以确保这个证书在发放之后没有被撰改过。
8、签名算法标识符:用来指定CA签署证书时所使用的签名算法。算法标识符用来指定CA签发证书时所使用的公开密钥算法和HASH算法。
X.509证书格式
为了利用公共密钥这种密码系统,必须将公共密钥分发出去。最通用的一种签名证书格式被称为X.509格式
Ref参考资料
Byekle
X509证书
- wyxhd2008的专栏
- 博客频道
- CSDN.NET.html
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 )
汉字名:艾提拉(艾龙), EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
Atiend
Atitti.数字证书体系cer pfx attilax总结的更多相关文章
- 数字证书文件cer和pfx的区别
作为文件形式存在的证书一般有这几种格式: 1.带有私钥的证书 由Public Key Cryptography Standards #12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形 ...
- 查看和导入证书(.cer / .pfx)
作为文件形式存在的证书一般有这几种格式: 1.带有私钥的证书 由Public Key Cryptography Standards #12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形 ...
- cer pfx格式数字证书区别
作为文件形式存在的证书一般有这几种格式: 1.带有私钥的证书 由Public Key Cryptography Standards #12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形 ...
- 数字证书文件格式(cer和pfx)的区别
作为文件形式存在的证书一般有这几种格式: 1.带有私钥的证书 由Public Key Cryptography Standards #12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形 ...
- 【转载】OpenSSL 提取 pfx 数字证书公钥与私钥
转自https://www.cnblogs.com/Irving/p/9551110.html OpenSSL 提取 pfx 数字证书公钥与私钥 由于之前生产环境已经使用了 Identityser ...
- OpenSSL 提取 pfx 数字证书公钥与私钥
由于之前生产环境已经使用了 Identityserver4 用来做授权与认证的服务,而新项目采用 Spring Cloud 微服务体系,一方面 Spring Cloud 官方暂时只支持 OAuth2. ...
- [转载] 创建为ClickOnce清单签名的.pfx格式数字证书
使用vs2013自动创建的.pfx数字证书默认有效期只有一年,并且“颁发者”.“颁发给”均为当前机器名和当前登陆用户名的组合,其实我们完全可以创建更友好的.pfx数字证书. 打开Microsoft . ...
- C#创建数字证书并导出为pfx,并使用pfx进行非对称加解密
本文源程序下载:http://download.csdn.net/source/2444494 我的项目当中,考虑到安全性,需要为每个客户端分发一个数字证书,同时使用数字证书中的公私钥来进行数据的加解 ...
- .NET Core加解密实战系列之——使用BouncyCastle制作p12(.pfx)数字证书
简介 加解密现状,编写此系列文章的背景: 需要考虑系统环境兼容性问题(Linux.Windows) 语言互通问题(如C#.Java等)(加解密本质上没有语言之分,所以原则上不存在互通性问题) 网上资料 ...
随机推荐
- 关于js单页面实现跳转原理以及利用angularjs框架路由实现单页面跳转
还记得我们刚开始学习html时使用的锚节点实现跳转吗? <a href="#target">我想跳转至目标位置</a> <p>第一条</p ...
- JAVA求圆的面积
import java.text.DecimalFormat;import java.util.Scanner; public class TheAreaOfCircle { public stati ...
- 我与solr(五)--关于schema.xml中的相关配置的详解
先把文件的代码贴上来: <?xml version="1.0" encoding="UTF-8" ?> <!-- 版权说明... --> ...
- MySQL的安装配置
安装配置 MySQL1.官方下载 MySQL2.用 tar 解压.tar.bz 或.tar.gz3.解压后有三个目录,分别为 usr etc var4.进入 usr,进入 bin5.在主机上建个目录( ...
- Hyper-v虚拟机文件VHDX与VHD的格式转换
今天遇到一个坑,我在本机(windows 10)上创建的CentOS虚拟机作为docker的宿主机,部署了gitlab等容器,准备迁移到服务器上的时候,发现始终无法导入,提示必须通过Hyper-v导出 ...
- Beta版本的贡献率百分比
我真的是服了..刚刚写完最后一次作业,还感叹了一下终于完成了最后的工作,一看群还得发一篇. 贡献率这种东西不是应该默认是100%除以团队人数的吗,有没有搞错啊,这样很容易引起团队不融洽的啊. 0313 ...
- DB2 错误信息码
000 00000 SQL语句成功完成 01xxx SQL语句成功完成,但是有警告 +012 01545 未限定的列名被解释为一个有相互关系的引用 +098 01568 动态SQL语句用分号结束 +1 ...
- 教你如何快速下载旧版本的Firefox浏览器
http://blog.csdn.net/gh0st007/article/details/18937421 更新后的ff使用过程中经常出现卡顿的现象,之前并没有出现,于是想找老版本的ff安装一下.发 ...
- web攻防
1.内网渗透端口转发: 在被控制机上执行: lcx.exe -slave 216.32.*.*(一个外网ip) 51 192.168.2.32(内网ip) 端口号 在本机上执行: lcx.exe ...
- 在自定义TableViewCell类里面添加按钮事件触发不了的一些实践
我的自定义cell上面有5个控件,分别是一个背景的UIImageView,一个专辑的UIImageView(上面加了一个播放的button),一个专辑名字的UIImageView(上面加了显示标题的U ...