java - 为什么我会收到此 NoSuchProviderException

标签 java maven rsa bouncycastle sha

我正在尝试使用 Bouncy CaSTLe 作为 Maven 项目中的安全提供程序。它似乎在代码库中的某些地方工作得很好,并且对于某些人来说在任何地方都工作得很好。但是,如果我尝试这样的事情:

public class Foo {
    public static void main(String[] args) throws Exception {
        Signature signature = Signature.getInstance("SHA256withRSA", "BC");
    }
}

然后我得到一个 NoSuchProviderException 异常。

在 pom 中,我将 Bouncy CaSTLe 作为依赖项

<dependency>
          <groupId>bouncycastle</groupId>
          <artifactId>bcprov-jdk16</artifactId>
          <version>140</version>
          <scope>compile</scope>
</dependency>

我尝试了几种不同的 JDK,但都给出了相同的错误。

最佳答案

answeredthis related所以问题,添加以下行应该可以解决您的问题。

Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());

关于java - 为什么我会收到此 NoSuchProviderException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11130574/

相关文章:

c - RSA 算法 - 已知 n 如何获得 p & q

c# - 通过 C# 使用 Windows Hello 进行 Webauthn 身份验证

java - Gradle:多个java项目的公共(public)资源依赖

java - JAVA 中将文件或 byte[] 转换为 BLOB

java - Maven 站点迁移 - 如何处理?

java - Maven Embedder - 运行 hibernate3 :hbm2java programmatically

java - Dockers 上的多模块 Maven 项目

java - 更改 Parse.com Android 的密码(前端检查)

postgresql - 用于 Java JUnit 测试的嵌入式 PostgreSQL

c# - 构建 RSA 加密服务提供者是持久化还是泄露 key 数据?