Java 在Openfire上启用AES-256密码套件

Java 在Openfire上启用AES-256密码套件,java,ssl,encryption,openfire,jce,Java,Ssl,Encryption,Openfire,Jce,我正在为我的一个项目组装一个XMPP服务器,我有相当严格的加密标准。也就是说,我需要TLS协议只使用AES-256密码套件及其等价物。基本上,任何不需要JCE无限策略的东西,我都希望被排除在外。是的,我知道这对客户端是非常禁止的,因为他们需要能够使用/安装JCE策略。我同意这一点,但我不允许在这方面工作 据我所知,Openfire运行在基本JRE之外。我已经了解了如何在JRE中安装JCE unlimited策略,以及如何通过java.security中的jdk.tls.disabledAlgor

我正在为我的一个项目组装一个XMPP服务器,我有相当严格的加密标准。也就是说,我需要TLS协议只使用AES-256密码套件及其等价物。基本上,任何不需要JCE无限策略的东西,我都希望被排除在外。是的,我知道这对客户端是非常禁止的,因为他们需要能够使用/安装JCE策略。我同意这一点,但我不允许在这方面工作

据我所知,Openfire运行在基本JRE之外。我已经了解了如何在JRE中安装JCE unlimited策略,以及如何通过java.security中的jdk.tls.disabledAlgorithms从java环境中删除密码套件。但是,我的测试表明,即使在我设置的环境中,客户机和服务器没有共享的受支持套件,并且加密连接设置为“必需”,客户机仍然可以连接和通信。我特别想避免这种行为

此外,随着Openfire 4.0的发布,以及直接修改已启用密码套件列表的功能,我注意到,即使安装了JCE unlimited策略,AES-256密码也不在支持列表中。这意味着,无论我是在jdk.tls.disabledAlgorithms中删除不可接受的密码套件,还是直接在Openfire中删除密码套件,Openfire都不会导入我需要的AES-256套件,无论JCE策略如何


有没有办法将密码套件添加到Openfire列表中,只要密码套件受底层JRE/JCE支持?

无需担心。我发现Openfire在安装时使用了自己的JRE,而不是程序文件中的一般JRE。将JCE文件重新复制到新的运行时,它可以完美地工作