我正在尝试将Web应用程序从Websphere Application Server迁移到Websphere Liberty Profile(WLP)。应用程序正在使用存储在密钥库中的密钥进行一些加密/解密。这个密钥库是很久以前使用来自IBM JDK的keytool程序生成的。
现在,将代码迁移到WLP意味着它现在将在标准的Oracle JVM下运行,该JVM无法读取旧的密钥库文件(抛出java.io.IOException:无效的密钥格式)。
我的问题是如何将密钥库文件(保留原始密钥)迁移到Oracle JVM能够读取的格式。
我错误地认为WLP只能运行标准的Oracle JVM,但正如Alasdair指出的那样,WLP可以配置为与其他供应商的JVM一起运行。所以我通过运行WLP与IBM JVM(在server.env中完成配置)来修复问题,这可以正确读取密钥库文件。