繁体   English   中英

Java:从密钥库文件确定密钥库的类型

[英]Java: Determine type of KeyStore from Keystore file

因此,我有一个允许用户使用HTTPS配置服务器的应用程序。 服务器使用Undertow。 要将HTTPS处理程序添加到Undertow,我需要调用Keystore.getInstance(“ JKS”)函数,该函数将基于提供程序返回实现。 Java本机仅支持3个提供程序(JKS,PKCS12和JCEKS),但是据我了解,您可以添加自己的Keystore实现提供程序。

所以我的问题是,仅给出密钥库文件,是否可以确定它是什么类型的密钥库? 我不能依靠文件扩展名,因为PKCS12密钥库也可以存储在.p12文件扩展名中。 是否可以通过编程获取该值,以便将其传递给Keystore.getInstance(),还是必须仅从用户那里获取输入值?

当前在WildFly中,使用Elytron项目正在开发此类功能。 您可以看一下[1]。

一些密钥库可以通过格式模式来区分。 但是我认为,在您的情况下,最简单的方法是尝试一次加载一个Keystore.getInstance(“ PKCS12”),Keystore.getInstance(“ JKS”),Keystore.getInstance(“ JCEKS”)并查看哪一个通过。

我也认为用户可以提供密钥库类型。

[1] https://issues.jboss.org/browse/WFCORE-4058

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM