SSL 证书简介

SSL基础:12:查询证书详细信息 X.509格式证书是使用的最为广泛的,而在实际的使用中,对一个符合此格式证书确认其基本信息,比如使用的算法、过期时间、CN信息、Subject信息等等都是非常常见的操作,这篇文章将结合实例对于使用x509子命令查询证书进行整理和说明。 阅读详情

 X.509是常见通用的证书格式。所有的证书都符合为Public Key Infrastructure (PKI) 制定的 ITU-T X509 国际标准。

因此(理论上)为一种应用创建的证书可以用于任何其他符合X.509标准的应用。在一份证书中,必须证明公钥及其所有者的姓名是一致的。对X.509证书来说,认证者总是 CA或由CA指定的人,一份X.509证书是一些标准字段的集合,这些字段包含有关用户或设备及其相应公钥的信息。X.509标准定义了证书中应该包含哪些信息,并描述了这些信息是如何编码的(即数据格式),所有的X.509证书包含以下数据:

1、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.500名字。使用该证书意味着信任签发证书的实体。(注意:在某些情况下,比如根或顶级CA证书,发布者自己签发证书)

7、发布者的数字签名:这是使用发布者私钥生成的签名,以确保这个证书在发放之后没有被撰改过。

8、签名算法标识符:用来指定CA签署证书时所使用的签名算法。算法标识符用来指定CA签发证书时所使用的公开密钥算法和HASH算法。

 

X.509 DER 编码(ASCII)的后缀是: .DER .CER .CRT
X.509 PAM 编码(Base64)的后缀是: .PEM .CER .CRT


.cer/.crt是用于存放证书,它是2进制形式存放的,不含私钥。
.pem跟crt/cer的区别是它以Ascii来表示。

 

 

PKCS 全称是 Public-Key Cryptography Standards ,是由美国RSA数据安全公司及其合作伙伴制定的一组公钥密码学标准,其中包括证书申请、证书更新、证书作废表发布、扩展证书内容以及数字签名、数字信封的格式等方面的一系列相关协议。

到1999年底,PKCS已经公布了以下标准:

PKCS#1:定义RSA公开密钥算法加密和签名机制,主要用于组织PKCS#7中所描述的数字签名和数字信封[22]。

PKCS#3:定义Diffie-Hellman密钥交换协议[23]。

PKCS#5:描述一种利用从口令派生出来的安全密钥加密字符串的方法。使用MD2或MD5 从口令中派生密钥,并采用DES-CBC模式加密。主要用于加密从一个计算机传送到另一个计算机的私人密钥,不能用于加密消息[24]。

PKCS#6:描述了公钥证书的标准语法,主要描述X.509证书的扩展格式[25]。

PKCS#7:定义一种通用的消息语法,包括数字签名和加密等用于增强的加密机制,PKCS#7与PEM兼容,所以不需其他密码操作,就可以将加密的消息转换成PEM消息[26]。

PKCS#8:描述私有密钥信息格式,该信息包括公开密钥算法的私有密钥以及可选的属性集等[27]。

PKCS#9:定义一些用于PKCS#6证书扩展、PKCS#7数字签名和PKCS#8私钥加密信息的属性类型[28]。

PKCS#10:描述证书请求语法[29]。

PKCS#11:称为Cyptoki,定义了一套独立于技术的程序设计接口,用于智能卡和PCMCIA卡之类的加密设备[30]。

PKCS#12:描述个人信息交换语法标准。描述了将用户公钥、私钥、证书和其他相关信息打包的语法[31]。

PKCS#13:椭圆曲线密码体制标准[32]。

PKCS#14:伪随机数生成标准。

PKCS#15:密码令牌信息格式标准[33]。

 

常用的有:
PKCS#7 Cryptographic Message Syntax Standard
PKCS#10 Certification Request Standard
PKCS#12 Personal Information Exchange Syntax Standard

PKCS#7 常用的后缀是: .P7B .P7C .SPC
PKCS#12 常用的后缀有: .P12 .PFX

pfx/p12用于存放个人证书/私钥,他通常包含保护密码,2进制方式
p10是证书请求
p7r是CA对证书请求的回复,只用于导入
p7b以树状展示证书链(certificate chain),同时也支持单个证书,不含私钥。

 

 

以下转载自http://blog.csdn.net/peterwanghao/article/details/1771723

keytool工具产生证书和密钥时会被要求定义一个别名。但用openssl之类的工具产生证书和密钥时,别名不是必须的。但是在获取密钥和证书时,需要指定别名。

例如:

String keystorefile = "c://test.p12";

String keypasswd = "mypasswd";

String keyalias = "alias";

KeyStore ks = KeyStore.getInstance("PKCS12");

FileInputStream fin = new FileInputStream(keystorefile);

ks.load(fin,keypasswd.toCharArray());

PrivateKey prikey = (PrivateKey)ks.getKey(keyalias,keypasswd.toCharArray());

Certificate cert = ks.getCertificate(keyalias);

PublicKey pubkey = cert.getPublicKey();


当你不知道别名时,可以通过KeyStorealiases()方法获取该文件包含的所有别名。

openssl产生的.p12文件,别名是诸如1,2,3.....

而通过导入IE再导出的.pfx文件,别名则是{xxxxx-xxxxx...}之类的。


 

 

泛域名ssl证书/通配符SSL数字证书简介及注意事项 1.泛域名SSL证书分类:泛域名SSL证书根据验证方式可以分为DV基础型的泛域名SSL证书和OV企业型的泛域名SSL证书,不同类型的泛域名SSL证书申请条件、验证方式都不太一样。另外,自2021年12月01日起,使用文件验证的域名,只能为当前被验证的域名签发SSL证书,不支持泛域名SSL证书和其下级子域名SSL证书。泛域名SSL证书申请流程简单,我们可选择一家可信的SSL证书品牌,选购合适类型的证书(如DV或OV SSL证书),域名类型这里选的是泛域名,勾选证书使用年限(可以是选1年期证书或多年期证书)。 阅读详情

相关推荐

CoppeliaSim+matlab+simulink七轴机械臂仿真

七轴机械臂vrep+matlab+simulink 仿真

a1233219的博客 3495

X.509证书DN之详解

<br /><br />X.509使用DN(Distinct Name)来唯一标识一个实体,其功能类似我们平常使用的ID,不过不同的是,DN不再是类似 123456 这样得数字标识,而是采用多个字段来标识一个实体,例如”CN=老所,C=CN”,这样做的好处在于方便匹配到诸如LDAP一样的目录服务中。那么,DN的字段是否可以随意增加呢?比如我能否在”CN=老所,O=测试公司”这样一个DN上再增加一个ID属性,变成”CN=老所,O=测试公司,ID=123456″呢?<br /> <br />动手测试。首先采用微

vickorfox的专栏 2万+

Verilog的综合指令

Synopsys综合指令

烟花一时的博客 5408

PKI 常用名称

CN:common name 通用名 SN:Serial Number 证书序列号是证书的唯一标识。和DN的区别是,当发生换证、补发情况时,DN是相同的,而SN是不同的。 DN:Distinct Name来标识一个实体,其功能类似于我们平常使用的ID ST:省市名称 L: 地区名称 O:组织名称 OU:组织单位名称 ...

廖金龙的博客 2374

证书(二)格式

数字证书中主题(Subject)中字段的含义 公用名称 (Common Name) 简称:CN 字段,对于 SSL 证书,一般为网站域名;而对于代码签名证书则为申请单位名称;而对于客户端证书则为证书申请者的姓名;  单位名称 (Organization Name) :简称:O 字段,对于 SSL 证书,一般为网站域名;而对于代码签名证书则为申请单位名称;而对于客户端单位证书则为证书申请者所

Alps__的专栏 2281

获取公钥证书DN(Distinguished Name)

DN --  Distinguished Name,证书持有人的唯一标识符。 可以通过下面的openssl命令来打印出证书DN。 openssl x509 -subject -nameopt RFC2253 -noout -in /d/test_certs/ctrip.cer CER证书主题DN为详细信息标签中"使用者"字段内容  ...

weixin_34138056的博客 7583

SSLssl证书简介ssl证书生成工具与ssl证书生成步骤

因为部署了SSL证书的网站相比没有部署SSL证书的网站更加可信,更加安全,可以有效的保障用户的利益不受侵害。网站部署全球信任的SSL证书后,浏览器内置安全机制,实时查验证书状态,通过浏览器向用户展示网站认证信息,让用户轻松识别网站真实身份,防止钓鱼网站仿冒。完成后,自签名证书可以帮助测试,但在正式环境使用,还是建议使用可信CA颁发的证书。OpenSSL 是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。

No8g攻城狮的博客 2674

HTTP:SSL证书简介

HTTP:SSL证书简介! 前言 今天博主将为大家分享HTTP:SSL证书简介!不喜勿喷,如有异议欢迎讨论! 有一个强大的地基才能写出健壮的程序!之前发的HTTPS一定要看一下哦:HTTP:HTTP和HTTPS的区别及概要! SSL证书 从上一章HTTPS简介我们可以了解到HTTPS核心的一个部分是数据传输之前的握手,握手过程中确定了数据加密的密码。在握手过程中,网站会向浏览器发送SSL证...

Mr_chen的博客 1643

SSL证书简介

同时,中国法院网采购的证书也采用了DigiCert的根证书,这保证了证书在各种浏览器环境中的兼容性。SSL证书提供了身份验证机制,确保用户连接的是预期的服务器,而不是恶意或伪装成合法网站的服务器。SSL证书通常具有有效期限,需要定期更新,以保障证书的安全性和可信性。这是确保证书有效性的重要措施,因为在证书的有效期内,可能会出现证书撤销或失效的情况。: SSL证书保证了数据在传输过程中的加密,使得拦截或窃听通信变得极为困难,特别是对于保护用户的敏感信息如信用卡号、密码等方面至关重要。

李金华的博客 285

阿里云ssl证书简介和使用流程

阿里云SSL证书是一种数字证书,用于保护网站和应用程序的安全性。它通过加密敏感数据的传输,确保用户的信息不会被未经授权的人员访问或篡改。阿里云作为中国领先的云计算服务提供商,为用户提供了全面的SSL证书解决方案,以满足不同规模和需求的网站和应用程序。阿里云SSL证书具有以下几个关键特性。首先,它提供了强大的加密技术,包括对传输数据进行加密和解密的能力。这意味着即使有人截取了通过网络传输的数据,也无法读取其内容,因为它已被加密。这为用户提供了重要的保护,尤其是在处理敏感信息(如信用卡号码和密码)时。

tiancaijiben的博客 7837

证书SSL 简介

 证书SSL 简介本节包括以下主题:关于数字证书关于安全套接字层关于数字证书数字证书(或简称证书)是在 Internet 上唯一地标识人员和资源的电子文件。证书使两个实体之间能够进行安全、保密的通信。证书有很多种类型,例如个人证书(由个人使用)和服务器证书(用于通过安全套接字层 [SSL] 技术在服务器和客户机之间建立安全会话)。有关

xymyeah 984

阿里云ssl证书购买以及简介和使用流程

阿里云SSL证书是一种数字证书,用于保护网站和应用程序的安全性。它通过加密敏感数据的传输,确保用户的信息不会被未经授权的人员访问或篡改。阿里云作为中国领先的云计算服务提供商,为用户提供了全面的SSL证书解决方案,以满足不同规模和需求的网站和应用程序。阿里云SSL证书具有以下几个关键特性。首先,它提供了强大的加密技术,包括对传输数据进行加密和解密的能力。这意味着即使有人截取了通过网络传输的数据,也无法读取其内容,因为它已被加密。这为用户提供了重要的保护,尤其是在处理敏感信息(如信用卡号码和密码)时。

weixin_39255905的博客 1530

Java SSL证书生成以及https简介

1. HTTPS概念 1)简介   HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。这个系统的最初研发由网景公司进行,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安...

张先森的博客 3752

SSL/TLS协议和证书简介

密码技术 要了解SSL协议,首先要了解:加密算法、消息摘要算法(又称为哈希算法Hash),数字签名等概念。这些技术每个都可以写出一整本的书,它们结合在一起,提供了保密性、完整性和身份验证的功能。 加密算法 设想:ALICE想发消息给她的银行要汇出一笔款。ALICE希望这些消息是保密的,因为这里面包括她的帐户资料和汇款金额。一种办法是使用加密算法,这种技术将她要传递的消息变成经过加密的密

fyfcauc的专栏 2100

SSL证书产品简介——SSL证书作用、类型,证书选择与购买

SSL证书是什么? 目前互联网常用的HTTP协议是非常不安全的明文传输协议。而SSL协议及其继任者TLS协议,是一种实现网络通信加密的安全协议,可在客户端(浏览器)和服务器端(网站)之间建立一条加密通道,保证数据在传输过程中不被窃取或篡改。 SSL证书,也称为服务器SSL证书,是遵守SSL协议的一种数字证书,由全球信任的证书颁发机构(CA)验证服务器身份...

weixin_34090643的博客 269

Nginx配置SSL证书监听443端口的方法简介

一、准备证书文件   我使用的是阿里云Symantec 免费版 SSL证书。将证书文件下载后解压得到如下文件 在nginx–&gt;cert目录中建一个ssl目录,将上面的所有文件拷贝到ssl目录中   二、修改nginx.conf文件   在nginx.conf的http{}中填下如下内容   server {   listen 443;   server_name www.httpstest....

weixin_44400506的博客 5650

nginx 配置 SSL 证书实现 https 访问

获取SSL文件,并设置nginx实现https协议

地衣君的博客 2845

自动化获取Let‘s Encrypt SSL证书的Shell脚本指南

Let's Encrypt是一个免费、开放和自动化的证书颁发机构(CA),由互联网安全研究小组(ISRG)运营。其成立的目的是为了简化SSL/TLS证书的获取和安装过程,鼓励更广泛的加密通信使用,并提高整个互联网的安全性。通过提供自动化工具,Let's Encrypt旨在减少设置HTTPS的复杂性,降低维护成本,并为网站所有者提供免费的证书服务。配置文件letsencrypt.conf通常包含了证书申请相关的各类设置,以下是几个重要的配置项:server。

weixin_34718952的博客 1247

基于SpringCloud微服务实现的互联网招聘平台源码.zip

基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码基于SpringCloud微服务实现的互联网招聘平台源码

上一篇: 【转】央行首发27家企业第三方支付牌照
下一篇: symbol(s) not found for architecture i386 一般解决方法
one2zero
博客等级 码龄17年 34粉丝 8原创
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值