Bru*_*uno 133
除了您链接到的标准名称列表中列出的类型之外,还有其他几种类型.您可以在加密提供程序文档中找到更多信息.最常见的是JKS(默认)和PKCS12(对于PKCS#12文件,通常有扩展名.p12或有时.pfx).
如果你留在Java世界中,JKS是最常见的.PKCS#12不是特定于Java的,使用从浏览器备份的证书(带有私钥)或来自基于OpenSSL的工具(keytool在Java 6之前无法转换密钥库并导入其私钥)特别方便,所以你必须使用其他工具).
如果您已经拥有PKCS#12文件,则PKCS12直接使用该类型通常更容易.可以转换格式,但如果您可以直接选择密钥库类型,则很少需要.
在Java 7中,PKCS12主要用作密钥库,但对于信任库则更少(请参阅密钥库和信任库之间的差异),因为如果没有私钥,则无法存储证书条目.相反,JKS不要求每个条目都是私钥条目,因此您可以拥有仅包含证书的条目,这对于信任存储很有用,您可以在其中存储您信任的证书列表(但是您没有他们的私钥).
这在Java 8中已经改变,因此您现在也可以在PKCS12商店中拥有仅限证书的条目.(有关这些更改和更多计划的更多详细信息,请参阅JEP 229:默认情况下创建PKCS12密钥库.)
还有一些其他密钥库类型,可能不常使用(取决于上下文),包括:
PKCS11对于PKCS#11库,通常用于访问硬件加密令牌,但Sun提供程序实现也支持NSS存储(来自Mozilla).BKS,使用BouncyCastle提供程序(常用于Android).Windows-MY/ Windows-ROOT,如果要直接访问Windows证书存储区.KeychainStore,如果你想直接使用OSX钥匙串.Pix*_*ech 21
这篇文章介绍了Java中不同类型的密钥库以及不同类型密钥库之间的差异.http://www.pixelstech.net/article/1408345768-Different-types-of-keystore-in-Java----Overview
以下是帖子中不同密钥库的描述:
JKS,Java Key Store.您可以在sun.security.provider.JavaKeyStore中找到此文件.此密钥库是特定于Java的,它通常具有jks的扩展名.此类型的密钥库可以包含私钥和证书,但不能用于存储密钥.由于它是Java特定的密钥库,因此不能在其他编程语言中使用.
JCEKS,JCE钥匙店.您可以在com.sun.crypto.provider.JceKeyStore中找到此文件.此密钥库具有jceks的扩展名.可以放入JCEKS密钥库的条目是私钥,密钥和证书.
PKCS12,这是一种标准的密钥库类型,可以在Java和其他语言中使用.您可以在sun.security.pkcs12.PKCS12KeyStore中找到此密钥库实现.它通常具有p12或pfx的扩展名.您可以在此类型上存储私钥,密钥和证书.
PKCS11,这是一种硬件密钥库类型.它为Java库提供了一个接口,用于连接硬件密钥库设备,如Luna,nCipher.您可以在sun.security.pkcs11.P11KeyStore中找到此实现.加载密钥库时,无需创建具有特定配置的特定提供程序.此密钥库可以存储私钥,密钥和cetrificates.加载密钥库时,将从密钥库中检索条目,然后将其转换为软件条目.
Mar*_*234 12
如果您使用的是 Java 8 或更新版本,您绝对应该选择PKCS12,这是自 Java 9 ( JEP 229 )以来的默认值。
与JKS和相比的优点JCEKS是:
PKCS12是一种标准格式,它可以被其他程序和库读取1JKS而且JCEKS非常不安全。这可以从这些密钥库类型的暴力破解密码工具的数量看出,尤其是在 Android 开发人员中很受欢迎。2、31有JDK-8202837,它已被固定在爪哇11
2所有密钥库类型(包括 PKCS12)使用的 PBE 的迭代计数曾经相当薄弱 ( CVE-2017-10356 ),但这已在 9.0.1、8u151、7u161 和 6u171 中得到修复
3进一步阅读:
Java 11 提供了以下类型的KeyStores:
jceks:SunJCE 提供商提供的专有密钥库实现。
jks:SUN 提供商提供的专有密钥库实现。
dks:域密钥库是作为单个逻辑密钥库呈现的密钥库的集合。它由配置数据指定,其语法在 DomainLoadStoreParameter 类中描述。
pkcs11:由 PKCS #11 令牌支持的密钥库。
pkcs12: PKCS #12 中定义的个人身份信息的传输语法。
来源:https ://docs.oracle.com/en/java/javase/11/docs/specs/security/standard-names.html#keystore-types
| 归档时间: |
|
| 查看次数: |
156127 次 |
| 最近记录: |