Java加密解密(五) 密钥库文件格式(Keystore)和证书文件格式(Certificate)
密钥库文件格式(Keystore)和证书文件格式(Certificate)
格式 : JKS扩展名 : .jks/.ks描述 : [Java Keystore]密钥库的Java实现版本,provider为SUN特点 : 密钥库和私钥用不同的密码进行保护 格式 : JCEKS扩展名 : .jce描述 : [JCE Keystore]密钥库的JCE实现版本,provider为SUN JCE特点 : 相对于JKS安全级别更高,保护Keystore私钥时采用TripleDES 格式 : PKCS12扩展名 : .p12/.pfx描述 : [PKCS #12]个人信息交换语法标准特点 : 1、包含私钥、公钥及其证书2、密钥库和私钥用相同密码进行保护 格式 : BKS扩展名 : .bks描述 : Bouncycastle Keystore]密钥库的BC实现版本,provider为BC特点 : 基于JCE实现 格式 : UBER扩展名 : .ubr描述 : [Bouncycastle UBER Keystore]密钥库的BC更安全实现版本,provider为BC
格式 : DER扩展名 : .cer/.crt/.rsa描述 : [ASN .1 DER]用于存放证书特点 : 不含私钥、二进制 格式 : PKCS7扩展名 : .p7b/.p7r描述 : [PKCS #7]加密信息语法标准特点 : 1、p7b以树状展示证书链,不含私钥2、p7r为CA对证书请求签名的回复,只能用于导入 格式 : CMS扩展名 : .p7c/.p7m/.p7s描述 : [Cryptographic Message Syntax]特点 : 1、p7c只保存证书2、p7m:signature with enveloped data3、p7s:时间戳签名文件 格式 : PEM扩展名 : .pem描述 : [Printable Encoded Message]特点 : 1、该编码格式在RFC1421中定义,其实PEM是[Privacy-Enhanced Mail]的简写,但他也同样广泛运用于密钥管理2、ASCII文件3、一般基于base 64编码 格式 : PKCS10扩展名 : .p10/.csr描述 : [PKCS #10]公钥加密标准[Certificate Signing Request]特点 : 1、证书签名请求文件2、ASCII文件3、CA签名后以p7r文件回复 格式 : SPC扩展名 : .pvk/.spc描述 : [Software Publishing Certificate]特点 : 微软公司特有的双证书文件格式,经常用于代码签名,其中1、pvk用于保存私钥2、spc用于保存公钥