首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在JDK 11中全局注册赏金城堡安全提供者

在JDK 11中全局注册赏金城堡安全提供者
EN

Stack Overflow用户
提问于 2019-08-29 20:41:48
回答 2查看 6.9K关注 0票数 8

在Java 8中,通过执行以下步骤,我已经在全球注册了Bouncy城堡安全提供者:

  1. 复制赏金城堡jar到jre/lib/ext
  2. 添加security.provider.<N>=org.bouncycastle.jce.provider.BouncyCastleProvider jre/lib/security/java.security

一切都很好!

现在在Java11中,我在conf/security/中找到了conf/security/,这很好,但是Java 11中已经没有lib/ext了。

在Java 11中,如何在全球注册B儿GURE城堡?

EN

回答 2

Stack Overflow用户

发布于 2021-10-11 02:20:47

因此,使用Java 9,通过引入模块,您可以将B儿GURSE jars放在它自己的新目录中,也可以放置在任何地方。您只需在运行jlink时在--模块路径中提供jar路径。下面是使用org.bouncycastle构建JRE的步骤:

  • 下载您选择的JDK (我选择了AzulJDK11.0.12)。
  • 编辑/conf/security/java.security以添加BouncyCastle:

security.provider.1=org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider security.provider.2=org.bouncycastle.jsse.provider.BouncyCastleJsseProvider fips:BCFIPS security.provider.3=SUN

如果最后将它们附加为与第一次相反,默认的SSL提供程序将不是BouncyCastle,这很好,但是当您获得/初始化默认的SSL提供程序时,您必须利用它们。

  • 下载BouncyCastle jars并将它们放在JDK目录下的新目录中。
  • 使用jlink构建JRE,并使用JDK中的以下命令:

./bin/jlink -无头文件-无手册页

压缩=2条调试

.模路

附加模块,org.bouncycastle.fips.core,org.bouncycastle.fips.tls

输出./JRE_OUTPUT_DIR -忽略-签名-信息

  • 检查赏金城堡模块是否与:

.//bin/java -列表-模块

它应该列出org.bouncycastle.fips.core和org.bouncycastle.fips.tls

票数 3
EN

Stack Overflow用户

发布于 2020-12-14 09:11:26

  1. 转到/{JDK}/jre/lib/security并编辑文件java.security
  2. 添加这一行:security.provider.10=org.bouncycastle.jce.provider.BouncyCastleProvider.在我的例子中,它是10,因为在它之前有9个提供者。确保security.provider.1=sun.security.provider.Sun总是第一位
  3. 将您在项目中使用的所有B儿GURE jars (包括下游依赖项使用的jars )复制到/{JDK}/jre/lib/ext。在我的例子中,他们是bcpg-jdk12-130.jarbcprov-jdk15on-1.49jarbcprov-jdk15-1.40.jarbcprov-jdk16-1.46.jar.

有时机器上可能有多个JDK版本,因此确保在运行java应用程序时使用刚刚更新的JDK。

票数 -3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57717503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档