Security 从jck密钥存储导出密钥

Security 从jck密钥存储导出密钥,security,keystore,keytool,secret-key,Security,Keystore,Keytool,Secret Key,我们有一个包含密钥的jck密钥库(jceks)格式。它是使用keytool命令生成的 keytool-genseckey-alias mykey-keyalg AES-keysize 256 -storetype jceks-keystore mykeystore.jks 我们需要与另一个应用程序共享这一点,而他们在使用jck存储时似乎有一些限制。他们要求将钥匙出口并提供给他们 我们尝试了一些工具,但无法导出密钥。是否有命令或解决方法来实现此目的?keytool不支持导出密钥。您可以使用KeyS

我们有一个包含密钥的jck密钥库(jceks)格式。它是使用keytool命令生成的

keytool-genseckey-alias mykey-keyalg AES-keysize 256 -storetype jceks-keystore mykeystore.jks

我们需要与另一个应用程序共享这一点,而他们在使用jck存储时似乎有一些限制。他们要求将钥匙出口并提供给他们


我们尝试了一些工具,但无法导出密钥。是否有命令或解决方法来实现此目的?

keytool不支持导出密钥。您可以使用
KeyStore
api来实现这一点

KeyStore ks = KeyStore.getInstance("JCEKS");
ks.load(new FileInputStream(new File("KEYSTORE_PATH")), "PASSWORD".toCharArray());

SecretKey key = (SecretKey) ks.getKey("ALIAS", "PASSWORD".toCharArray());

System.out.println(new String(Base64.encode(key.getEncoded())));
如果双击键,则将其显示为十六进制字符串: