我试图找到 .keystore 文件和 .jks 文件之间的区别,但我找不到它 . 我知道 jks 适用于"Java keystore",两者都是存储键/值对的方法 .
.keystore
.jks
jks
是否有任何差异或偏好使用一个而不是另一个?
最终, .keystore 和 .jks 只是文件扩展名:由您来明智地命名文件 . 某些应用程序使用存储在 $HOME/.keystore 中的密钥库文件:它's usually implied that it'是一个JKS文件,因为JKS is the default keystore type in the Sun/Oracle Java security provider . 不是每个人都使用JKS文件的 .jks 扩展名,因为它建议使用扩展名,只是为了记住要指定的类型(如果需要) .
$HOME/.keystore
在Java中,单词keystore可以具有以下任一含义,具体取决于上下文:
API:http://docs.oracle.com/javase/6/docs/api/java/security/KeyStore.html
可用于支持此API的文件(或其他机制)
一个密钥库而不是信任库,如下所述:https://stackoverflow.com/a/6341566/372643
在谈论文件和存储时,这实际上不是键/值对的存储工具(有很多或其他格式) . 相反,它是一个存储加密密钥和证书的容器(我相信其中一些也可以存储密码) . 通常,这些文件是加密的并受密码保护,以便不会将此数据提供给未授权方 .
Java使用其KeyStore类和相关API来使用密钥库(whether it's file based or not) . JKS 是特定于Java的文件格式,但API也可以与其他文件类型一起使用,通常是PKCS#12 . 如果要加载密钥库,则必须指定其密钥库类型 . 传统的扩展将是:
JKS
.jks ,类型为 "JKS" ,
"JKS"
.p12 或 .pfx ,类型为 "PKCS12" (规范名称为PKCS#12,但_7708236_未在Java密钥库类型名称中使用) .
.p12
.pfx
"PKCS12"
此外,BouncyCastle还提供其实现,特别是BKS(通常使用 .bks 扩展名),它经常用于Android应用程序 .
.bks
你对此很困惑 .
keystore 是证书,私钥等的容器 .
keystore
这个密钥库的格式应该是什么规格,主要是#PKCS12
JKS是Java的密钥库实现 . 还有BKS等 .
这些都是keystore types .
所以回答你的问题:
.keystore文件和.jks文件之间的区别
空无一人 . JKS是密钥库文件 . 虽然密钥库 types 之间存在差异 . 例如 . JKS vs #PKCS12
#PKCS12
选择.keystore而不是.jks的一个原因是,当您导航选择密钥库文件(Unity 2017.3,macOS)时,Unity会识别前者但不识别后者 .
3 回答
最终,
.keystore
和.jks
只是文件扩展名:由您来明智地命名文件 . 某些应用程序使用存储在$HOME/.keystore
中的密钥库文件:它's usually implied that it'是一个JKS文件,因为JKS is the default keystore type in the Sun/Oracle Java security provider . 不是每个人都使用JKS文件的.jks
扩展名,因为它建议使用扩展名,只是为了记住要指定的类型(如果需要) .在Java中,单词keystore可以具有以下任一含义,具体取决于上下文:
API:http://docs.oracle.com/javase/6/docs/api/java/security/KeyStore.html
可用于支持此API的文件(或其他机制)
一个密钥库而不是信任库,如下所述:https://stackoverflow.com/a/6341566/372643
在谈论文件和存储时,这实际上不是键/值对的存储工具(有很多或其他格式) . 相反,它是一个存储加密密钥和证书的容器(我相信其中一些也可以存储密码) . 通常,这些文件是加密的并受密码保护,以便不会将此数据提供给未授权方 .
Java使用其KeyStore类和相关API来使用密钥库(whether it's file based or not) .
JKS
是特定于Java的文件格式,但API也可以与其他文件类型一起使用,通常是PKCS#12 . 如果要加载密钥库,则必须指定其密钥库类型 . 传统的扩展将是:.jks
,类型为"JKS"
,.p12
或.pfx
,类型为"PKCS12"
(规范名称为PKCS#12,但_7708236_未在Java密钥库类型名称中使用) .此外,BouncyCastle还提供其实现,特别是BKS(通常使用
.bks
扩展名),它经常用于Android应用程序 .你对此很困惑 .
keystore
是证书,私钥等的容器 .这个密钥库的格式应该是什么规格,主要是#PKCS12
JKS是Java的密钥库实现 . 还有BKS等 .
这些都是keystore types .
所以回答你的问题:
空无一人 . JKS是密钥库文件 . 虽然密钥库 types 之间存在差异 . 例如 .
JKS
vs#PKCS12
选择.keystore而不是.jks的一个原因是,当您导航选择密钥库文件(Unity 2017.3,macOS)时,Unity会识别前者但不识别后者 .