我正在尝试使用BouncyCastle进行AES加密,并且已经从Oracle下载了最新的JCE并将其本地安装在我的Dev PC上,一切都很好。

但是,我打算将我的代码部署在客户服务器上,但我不认为让他们同意众多JDK库/安全更新很容易。安全永远不会超过我们的成本(无论他们告诉我们什么)。

所以我的问题是,使用Eclipse和JDK 1.8.11是否可以将JCE打包到我的Jar / War文件中?

如果是这样怎么办?

我已经阅读了SO和其他地方的各种链接。大多数都已经很老了,所以我想知道在2017年是否有可能?

最佳答案

如果您对JCE表示“无限强度管辖权策略文件”,那么使用任何包装都无法实现所需的功能。这些策略文件需要安装到正在运行的JVM,因此您不能以编程方式或通过其他打包选项来解决此问题。

要实现所需的功能,您必须使用BC自己的API,而不是调用JCE函数并指定“ BC”作为提供者,因为由于策略/安全检查它会失败。您只能通过直接使用BC API(或任何其他加密库)来绕过此检查。

10-08 11:10