一、概述

  Keytool是一个Java数据证书的管理工具 ,Keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中。 

  在keystore里,包含两种数据: 

  1. 密钥实体(Key entity)——密钥(secret key)又或者是私钥和配对公钥(采用非对称加密) 

  2. 可信任的证书实体(trusted certificate entries)——只包含公钥

  ailas(别名)每个keystore都关联这一个独一无二的alias,这个alias通常不区分大小写

1.1、证书格式

  证书主要的文件类型和协议有: PEM、DER、PFX、JKS、KDB、CER、KEY、CSRCRTCRL 、OCSP、SCEP等。

1.1.1、证书编码格式

  X.509 - 这是一种证书标准,主要定义了证书中应该包含哪些内容.其详情可以参考RFC5280,SSL使用的就是这种证书标准.

目前有以下两种编码格式.

1、PEM - Privacy Enhanced Mail,打开看文本格式,以"-----BEGIN..."开头, "-----END..."结尾,内容是BASE64编码.

  查看PEM格式证书的信息:openssl x509 -in certificate.pem -text -noout

  Apache和NGINX服务器偏向于使用这种编码格式.

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

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

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

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

使用PEM格式存储的证书:
—–BEGIN CERTIFICATE—–
MIICJjCCAdCgAwIBAgIBITANBgkqhkiG9w0BAQQFADCBqTELMAkGA1UEBhMCVVMx
………
1p8h5vkHVbMu1frD1UgGnPlOO/K7Ig/KrsU=
—–END CERTIFICATE—–

使用PEM格式存储的私钥:
—–BEGIN RSA PRIVATE KEY—–
MIICJjCCAdCgAwIBAgIBITANBgkqhkiG9w0BAQQFADCBqTELMAkGA1UEBhMCVVMx
………
1p8h5vkHVbMu1frD1UgGnPlOO/K7Ig/KrsU=
—–END RSA PRIVATE KEY—–

使用PEM格式存储的证书请求文件:
—–BEGIN CERTIFICATE REQUEST—–
MIICJjCCAdCgAwIBAgIBITANBgkqhkiG9w0BAQQFADCBqTELMAkGA1UEBhMCVVMx
………
1p8h5vkHVbMu1frD1UgGnPlOO/K7Ig/KrsU=
—–END CERTIFICATE REQUEST—–
View Code

相关文章:

  • 2022-02-14
  • 2021-08-29
  • 2022-12-23
  • 2021-10-30
  • 2022-03-05
  • 2021-11-10
  • 2021-07-22
  • 2022-12-23
猜你喜欢
  • 2021-12-26
  • 2021-11-15
  • 2022-12-23
  • 2022-12-23
  • 2021-12-04
  • 2021-06-14
  • 2022-02-04
相关资源
相似解决方案