主流数字证书都有哪些格式?

一般来说,主流的Web服务软件,通常都基于两种基础密码库:OpenSSL和Java。

Tomcat、Weblogic、JBoss等,使用Java提供的密码库。通过Java的Keytool工具,生成Java Keystore(JKS)格式的证书文件。

Apache、Nginx等,使用OpenSSL提供的密码库,生成PEM、KEY、CRT等格式的证书文件。

此外,IBM的产品,如Websphere、IBM Http Server(IHS)等,使用IBM产品自带的iKeyman工具,生成KDB格式的证书文件。微软Windows Server中的Internet Information Services(IIS),使用Windows自带的证书库生成PFX格式的证书文件。

如果您在工作中遇到带有后缀扩展名的证书文件,可以简单用如下方法区分:

*.DER *.CER : 这样的证书文件是二进制格式,只含有证书信息,不包含私钥。

*.CRT : 这样的文件可以是二进制格式,也可以是文本格式,一般均为文本格式,功能与*.DER/*.CER相同。

*.PEM : 一般是文本格式,可以放证书或私钥,或者两者都包含。 *.PEM如果只包含私钥,那一般用 *.KEY代替。

*.PFX *.P12 是二进制格式,同时含证书和私钥,一般有密码保护。

怎么判断是文本格式还是二进制?

用记事本打开,如果是规则的数字字母,如
—–BEGIN CERTIFICATE—–
MIIE5zCCA8+gAwIBAgIQN+whYc2BgzAogau0dc3PtzANBgkqh......
—–END CERTIFICATE—–
就是文本的,上面的BEGIN CERTIFICATE,说明这是一个证书
如果是—–BEGIN RSA PRIVATE KEY—–,说明这是一个私钥

这些证书格式之间是可以互相转换的

以下提供了一些证书之间的转换方法:

1. 将JKS转换成PFX

可以使用Keytool工具,将JKS格式转换为PFX格式。

keytool -importkeystore -srckeystore D:\server.jks -destkeystore D:\server.pfx -srcstoretype JKS -deststoretype PKCS12

2. 将PFX转换为JKS

可以使用Keytool工具,将PFX格式转换为JKS格式。

keytool -importkeystore -srckeystore D:\server.pfx -destkeystore D:\server.jks -srcstoretype PKCS12 -deststoretype JKS

3. 将PEM/KEY/CRT转换为PFX

使用OpenSSL工具,可以将密钥文件KEY和公钥文件CRT转化为PFX文件。

将密钥文件KEY和公钥文件CRT放到OpenSSL目录下,打开OpenSSL执行以下命令:

openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt

4. 将PFX转换为PEM/KEY/CRT

使用OpenSSL工具,可以将PFX文件转化为密钥文件KEY和公钥文件CRT。

将PFX文件放到OpenSSL目录下,打开OpenSSL执行以下命令:

openssl pkcs12 -in server.pfx -nodes -out server.pem

openssl rsa -in server.pem -out server.key

** 请注意 ** 此步骤是专用于使用keytool生成私钥和CSR申请证书,并且获取到pem格式证书公钥的情况下做分离私钥使用的,所以在实际部署证书时请使用此步骤分离出来的私钥和申请下来的公钥证书做匹配使用。

云盾证书服务统一使用 PEM 格式的数字证书文件。

https SSL主流数字证书都有哪些格式(转载)的更多相关文章

  1. https SSL主流数字证书都有哪些格式?

    主流数字证书都有哪些格式? 一般来说,主流的Web服务软件,通常都基于两种基础密码库:OpenSSL和Java. Tomcat.Weblogic.JBoss等,使用Java提供的密码库.通过Java的 ...

  2. 【传输协议】https SSL主流数字证书都有哪些格式?

    一般来说,主流的Web服务软件,通常都基于两种基础密码库:OpenSSL和Java. Tomcat.Weblogic.JBoss等,使用Java提供的密码库.通过Java的Keytool工具,生成Ja ...

  3. HTTPS、SSL与数字证书介绍

    在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了.本文追本溯源围绕这个模式谈一谈. 名词解释 HTTPS:在HTTP(超文本传输协议)基础上提出的一种安全 ...

  4. C#检测并安装https站点的数字证书,CefSharp和HttpWebRequest通过会话Cookie实现自动登录访问https站点

    HttpUtil工具类: using System; using System.Collections.Generic; using System.IO; using System.Linq; usi ...

  5. 免费https/ssl通配证书(letsencrypt)安装

    教程:免费https/ssl通配证书(letsencrypt)安装 前置条件 开发443端口 关闭nginx .获取脚本 wget https://dl.eff.org/certbot-auto .执 ...

  6. 公钥与私钥对HTTPS的理解(数字证书的需要)

    本文转自某大牛链接 文中首先解释了加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的出现所起的作用.接着对数字证书做一个详细的解释,并讨论一下window ...

  7. 如何用谷歌浏览器导出一个https网站的数字证书

    HTTPS加密是互联网安全建设的基础,百度.淘宝.天猫等越来越多互联网巨头启用全站HTTPS,也带动了更多网站加入HTTPS加密的行列.普通用户也逐渐明白HTTPS比HTTP更安全,访问网银.购物等重 ...

  8. [转]浅谈https\ssl\数字证书

    浅谈https\ssl\数字证书 http://www.cnblogs.com/P_Chou/archive/2010/12/27/https-ssl-certification.html 全球可信的 ...

  9. 浅谈https\ssl\数字证书

    全球可信的SSL数字证书申请:http://www.shuzizhengshu.com 在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了.本文追本溯源围绕 ...

随机推荐

  1. Delphi如何创建并绘制EMF图形文件

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  2. Linux中安装mongodb

    1,使用二进制包安装Mongodb 使用wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.0.tgz 下载编译好的二进制包( ...

  3. 【iCore4 双核心板_uC/OS-II】例程九:消息队列

    一.实验说明: 前面介绍通过信息传递可以进行任务间的交流,信息也可以直接发送给一个任务,在uC/OS-II中每一个任务在它们内部都有一个消息队列,也即任务消息队列,用户可以直接给一个任务发送消息,不需 ...

  4. spring源码:Aware接口

    一.spring容器中的aware接口介绍 Spring中提供了各种Aware接口,比较常见的如BeanFactoryAware,BeanNameAware,ApplicationContextAwa ...

  5. datatable to List<T>带缓存

    public class DataHelper { //datarow 转换的类型缓存 private static MemoryCache modelCash = MemoryCache.Defau ...

  6. 【GIS】Mapbox-json配置

    1.json的MIME配置 application/json 问题:客户端浏览器不接受 MIME 类型的请求页面

  7. LeetCode - Subarray sum equals k

    Given an array of integers and an integer k, you need to find the total number of continuous subarra ...

  8. nohup 部署springboot 使用命令

    启动jar包:nohup java -jar news-0.0.1-SNAPSHOT.jar 查看进程:netstat -nap|grep  [3389]3389  为需要查看的端口号 关闭进程:ki ...

  9. Oracle同义词(synonym)

    oracle的同义词总结   从字面上理解就是别名的意思,和视图的功能类似.就是一种映射关系.   同义词拥有如下好处:   节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;   扩展的数 ...

  10. OpenJDK和JDK区别

    OpenJDK和JDK区别 OpenJDK与JDK的区别分析 Sun的JDK7.OpenJDK及IcedTea释疑 简介(ps): 简单来说jdk从7开始,弄出一个可以自由使用的公共版本(openjd ...