`
raymond.chen
  • 浏览: 1426264 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

数字证书格式

    博客分类:
  • Java
 
阅读更多

PFX 或 P12 

指以pkcs#12格式存储的证书和相应私钥。PKCS#12是公钥加密标准,它规定了可包含所有私钥、公钥和证书。其以二进制格式存储,也称为 PFX 文件。

在windows中可以直接导入到密钥区,注意,PKCS#12的密钥库保护密码同时也用于保护Key。 

PKCS#12通常采用PFX,P12作为文件扩展名,用于存放用户证书、crl、用户私钥以及证书链。pkcs12中的私钥是加密存放的。

 

思科是.p12,微软是.pfx

 

JKS

通常可以将Apache/OpenSSL使用的“KEY文件 + CRT文件”格式”转换为标准的Java Key Store(JKS)文件。JKS文件格式被广泛的应用在基于Java的WEB服务器、应用服务器、中间件。你可以将JKS文件导入到TOMCAT、 WEBLOGIC 等软件。

        查看jks格式的证书: keytool -list -v -keystore server.jks

 

CSR

证书请求文件(Certificate Signing Request)。生成 X509 数字证书前,一般先由用户提交证书申请文件,然后由 CA 来签发证书。大致过程如下(X509 证书申请的格式标准为 pkcs#10 和 rfc2314):

    用户生成自己的公私钥对;

    构造自己的证书申请文件,符合 PKCS#10 标准。该文件主要包括了用户信息、公钥以及一些可选的属性信息,并用自己的私钥给该内容签名;

    用户将证书申请文件提交给 CA;

    CA 验证签名,提取用户信息,并加上其他信息(比如颁发者等信息),用 CA 的私钥签发数字证书;

 

说明:

    数字证书(如x.509)是将用户(或其他实体)身份与公钥绑定的信息载体。

    一个合法的数字证书不仅要符合 X509 格式规范,还必须有 CA的签名。

    用户不仅有自己的数字证书,还必须有对应的私钥。

    X509v3数字证书主要包含的内容有:证书版本、证书序列号、签名算法、颁发者信息、有效时间、持有者信息、公钥信息、颁发者 ID、持有者 ID 和扩展项。

 

查看证书内容:

    openssl req -noout -text -in server.csr

    openssl req -noout -text -in server.csr -inform der

 

PEM

       Openssl使用 PEM(Privacy Enhanced Mail)格式来存放各种信息,它是 openssl 默认采用的信息存放方式。Openssl 中的 PEM 文件一般包含如下信息:

 

内容类型:表明本文件存放的是什么信息内容,它的形式为“——-BEGIN XXXX ——”,与结尾的“——END XXXX——”对应。

 

头信息:表明数据是如果被处理后存放,openssl 中用的最多的是加密信息,比如加密算法以及初始化向量 iv。

 

信息体:为 BASE64 编码的数据。可以包括所有私钥(RSA 和 DSA)、公钥(RSA 和 DSA)和 (x509) 证书。它存储用 Base64 编码的 DER 格式数据,用 ascii 报头包围,因此适合系统之间的文本模式传输。

     查看PEM证书文件内容:

           openssl x509 -in tls-video.pem -inform pem -noout -text

 

DER

辨别编码规则 (DER) 可包含所有私钥、公钥和证书。它是大多数浏览器的缺省格式,并按 ASN1 DER 格式存储。它是无报头的 - PEM 是用文本报头包围的 DER。

二进制编码

 

CER  - 一般指使用DER格式的证书。

         查看cer证书:

                 openssl x509 -noout -text -in server.cer

 

CRT - 证书文件。可以是PEM格式。

 

KEY   - 一般指PEM格式的私钥文件。

 

查看KEY的内容:

     openssl rsa -noout -text -in server.key

     openssl rsa -noout -text -in server.key -inform der

 

X.509是一种证书格式,一般以.crt结尾,根据该文件的内容编码格式,可以分为以下二种格式:

PEM - Privacy Enhanced Mail,打开看文本格式,以"-----BEGIN..."开头, "-----END..."结尾,内容是BASE64编码。Apache和*NIX服务器偏向于使用这种编码格式。

        PAM编码(Base64)的后缀是:.PEM .CER .CRT

 DER - Distinguished Encoding Rules,打开看是二进制格式,不可读。Java和Windows服务器偏向于使用这种编码格式。

        DER编码(ASCII)的后缀是: .DER .CER .CRT

 

keytool 将密钥和证书储存在一个所谓的密钥仓库(keystore)中。缺省的密钥仓库实现将密钥仓库实现为一个文件。它用口令来保护私钥。

 

查看密钥仓库里的内容: 

keytool -list -rfc -keystore mykeystore.jks

 

        SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。

 

        安全证书既包含了用于加密数据的密钥,又包含了用于证实身份的数字签名。安全证书采用公钥加密技术。公钥加密是指使用一对非对称的密钥进行加密或解密。每一对密钥由公钥和私钥组成。用公钥加密的数据只能够被私钥解密。反过来,使用私钥加密的数据只能被公钥解密。

 

证书格式转换:

    crt > cer

        openssl x509 -inform der -in client.crt -out client.cer

    pem > cer:

        openssl x509 -in client.pem -out client.cer

    pem > p12:

        openssl pkcs12 -export -in server.pem -out server.p12

    cer > jks:

        keytool -importcert -file client.cer -keystore client.jks -storepass 123456

    crt > jks:

        keytool -importcert -alias CA -file CA.crt -keystore CA.jks -storepass 123456

    crt > der:

        openssl x509 -in server.crt -out server.der -outform DER

 

分享到:
评论

相关推荐

    数字证书格式详细说明

    数字证书格式详细说明 数字证书是公钥加密系统中不可或缺的一部分,它用于身份验证、数据加密和数字签名。常见的数字证书格式有 X.509,它定义了两种证书:公钥证书和属性证书。 X.509 证书格式由以下部分组成: ...

    GB∕T 20518-2018 信息安全技术 公钥基础设施 数字证书格式.pdf

    GB∕T 20518-2018 信息安全技术 公钥基础设施 数字证书格式.pdf

    GM/T 0015-2012 《基于SM2密码算法的数字证书格式规范》

    GM/T 0015-2012 《基于SM2密码算法的数字证书格式规范》 本标准规定了数字证书和证书撤销列表的基本结构,并对数字证书和证书撤销列表中的各数据项内容进行了描述。 本标准适用于数字证书认证系统的研发、数字证书...

    数字证书格式 相关知识 和 方法

    数字证书格式 相关知识 和 方法  常见的数字证书格式以及区别 JKS BKS  证书导入、导出…… cer和pfx/p12 .key和.crt pem SSL证书类型和转换  公钥和私钥的区别 适合做关于证书的同胞们来参考,反正是找了很久且...

    GMT 0015-2012 基于SM2密码算法的数字证书格式

    此文档为GMT 0015-2012 基于SM2密码算法的数字证书格式

    GMT 0015-2012 基于SM2密码算法的数字证书格式.rar

    压缩包内包括定稿的“GMT 0015-2012 基于SM2密码算法的数字证书格式.pdf”和早期讨论版本“公钥密码基础设施应用技术体系_基于SM2算法的证书认证系统证书格式标准.doc”。 早期版本是word格式,写文章的时候可以参考...

    GMT 0015-2012 基于SM2密码算法的数字证书格式文档.zip

    GMT 0015-2012 基于SM2密码算法的数字证书格式文档,密码123456

    数字证书格式及应用201910.pptx

    【数字证书内容格式】 数字证书是一种在网络中验证身份的重要机制,它通过将用户的身份信息与对应的公钥结合,经过特定的编码规则,并由一个可信的第三方机构(通常称为证书颁发机构,CA)进行数字签名来生成。国际...

    数字证书查看、拆分和格式转换工具

    本文将深入探讨“数字证书查看、拆分和格式转换工具”这一主题,涉及的关键词包括“SSL”、“keystore”、“crt”和“key”。 首先,让我们了解SSL(Secure Sockets Layer)和它的升级版TLS(Transport Layer ...

    Cert_Info.rar_cert_info_java 数字证书_数字 证书_数字证书_证书

    首先,"certnew.cer"文件是一个常见的数字证书格式,它通常包含了公开密钥、证书颁发机构(CA)信息、证书持有者的身份信息等。这个证书可能是用于演示或者测试目的,以便在Java程序中进行读取和处理。 其次,...

    X509数字证书结构和实例

    X.509 数字证书是一种常用的数字证书格式,用于身份验证和加密通信。在本文中,我们将详细分析 X.509 数字证书的内部结构和编码方式,以帮助读者更好地理解 X.509 格式。 一、X.509 数字证书的编码 X.509 数字证书...

    民航局数字证书使用手册

    民航局数字证书使用手册 包括怎样可以获取民航飞行员资格 身体要求 学校选择等等详细资料

    电信数智商用密码数字证书合格检测工具2.1.5版

    SM2数字证书,充分借鉴与吸收了X509数字证书的格式与优点,在考虑RSA算法的优缺点之后,推出的基于商密公钥算法的SM2证书规范,至此,商密算法的数字证书在商用密码应用安全性评估中成为了必须要检测的一个重要环节...

    Certificate_java_java数字签名_java签名证书_数字证书_

    5. **证书处理**:`java.security.cert.CertificateFactory`用于解析和生成X.509证书,这是最常用的数字证书格式。 6. **密钥库操作**:`keytool`命令行工具或Java API(如`KeyStore`类)用于管理密钥库,包括导入、...

    p12格式数字证书

    可用的p12格式数字证书,密码1234。。

    ZXCA自信数字证书制作工具

    ZXCA自信数字证书制作工具是一款专为个人和小型组织设计的实用软件,它提供了制作和管理符合国际标准的数字证书的功能。在信息化高度发达的今天,数字证书是网络安全的重要组成部分,尤其是在数据加密、身份验证和...

    vs2017数字证书certificates.rar

    在IT行业中,数字证书在软件开发,特别是Visual Studio 2017(简称VS2017)中扮演着至关重要的角色。它们是确保代码安全、验证开发者身份以及实现安全通信的关键工具。"vs2017数字证书certificates.rar"这个压缩包很...

    java代码生成数字证书

    Java代码生成数字证书涉及到几个关键概念和技术,包括Java的密钥和证书管理、RSA加密算法以及非交互式证书创建。在此,我们将深入探讨这些主题,以便理解如何在Java环境中生成和使用数字证书。 1. **数字证书**:...

Global site tag (gtag.js) - Google Analytics