.keystore文件和.jks文件之间的区别

juv*_*ria 206 keystore jks

我试图找到.keystore文件和.jks文件之间的区别,但我找不到它.我知道jks是"Java密钥库",两者都是存储键/值对的方法.

是否有任何差异或偏好使用一个而不是另一个?

Bru*_*uno 184

最终,.keystore并且.jks只是文件扩展名:这是由你来理智命名您的文件.某些应用程序使用存储在$HOME/.keystore其中的密钥库文件:它通常暗示它是JKS文件,因为JKS是Sun/Oracle Java安全提供程序中的默认密钥库类型.不是每个人都使用.jksJKS文件的扩展名,因为它隐含为默认值.我建议使用扩展名,只是为了记住要指定的类型(如果需要).

在Java中,单词keystore可以具有以下任一含义,具体取决于上下文:

在谈论文件和存储时,这实际上不是键/值对的存储工具(有很多或其他格式).相反,它是一个存储加密密钥和证书的容器(我相信其中一些也可以存储密码).通常,这些文件是加密的并受密码保护,以便不会将此数据提供给未授权方.

Java使用其KeyStore类和相关API来使用密钥库(无论它是否基于文件).JKS是一种特定于Java的文件格式,但API也可以与其他文件类型一起使用,通常是PKCS#12.如果要加载密钥库,则必须指定其密钥库类型.传统的扩展将是:

  • .jks对于类型"JKS",
  • .p12或者.pfx类型"PKCS12"(规范名称是PKCS#12,但未#在Java密钥库类型名称中使用).

此外,BouncyCastle还提供其实现,特别是BKS(通常使用.bks扩展名),它经常用于Android应用程序.


Cra*_*lus 70

你对此很困惑.

A keystore是证书,私钥等的容器.

这个密钥库的格式应该是什么规格,主要是#PKCS12

JKS是Java的密钥库实现.还有BKS等.

这些都是密钥库类型.

所以回答你的问题:

.keystore文件和.jks文件之间的区别

空无一人.JKS是密钥库文件.密钥库类型之间存在差异.例如JKSvs#PKCS12

  • 不,我的意思是"密钥库"这个词主要是一个Java字.其他应用程序/平台很少调用密钥和证书存储"密钥库"的位置/文件.例如,MS调用PKCS#12文件"个人信息交换"文件.其他人的名称如"钥匙链"(OSX),"证书数据库"(NSS),"证书商店","钥匙圈"......,用于存储钥匙和证书的地方,而不是真正的"钥匙库". (9认同)
  • @Bruno:我明白你的意思了.好点.我以前没想过这样.谢谢 (3认同)
  • 我说主要的*keystore*类型是JKS,而不是PKCS#12,只是因为"keystore"这个词是Java术语的一部分,很少在Java的上下文之外使用.话虽这么说,PKCS#12文件确实很常见(通常是`.pfx`或`.p12`). (2认同)

Abe*_*lle 5

在.jks上选择.keystore而不是.jks的一个原因是,当您导航到选择密钥库文件(Unity 2017.3,macOS)时,Unity会识别前者,而后者则不能。

  • @Salman我指的是“Unity”游戏引擎(https://unity3d.com)。 (2认同)