您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

从Java中的.p12文件获取PrivateKey对象

从Java中的.p12文件获取PrivateKey对象

您可以使用ClassLoader.getResourceAsStream(String)方法加载.p12文件,将其加载到KeyStore,然后他们从KeyStore获取密钥。

KeyStore keystore = KeyStore.getInstance("PKCS12");
keystore.load(this.getClass().getClassLoader().getResourceAsStream("keyFile.p12"), p12Password.tocharArray());
PrivateKey key = (PrivateKey)keystore.getKey(keyAlias, p12Password.tocharArray());

ClassLoader.getResourceAsStream(String) 只要它们已经在类路径中,就可以从任何位置加载资源,而无需指定文件的路径。

keyAlias是p12文件中与私钥对应的条目的名称。PKCS12文件可以包含多个条目,因此您需要某种方式来指示要访问的条目。别名是如何实现的。

如果不确定私钥的别名是什么,则可以keytool从命令行使用实用程序列出p12文件内容。此工具包含在所有JRE和JDK安装中。

keytool -list -keystore keyFile.p12 -storepass password -storetype PKCS12

输出

Keystore type: PKCS12
Keystore provider: SunJSSE

Your keystore contains 1 entry

yourKeyAlias, Sep 4, 2013, PrivateKeyEntry,
Certificate fingerprint (MD5): 48:A8:C4:12:8E:4A:8A:AD:58:81:26:90:E7:3D:C8:04
java 2022/1/1 18:13:55 有812人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶