java - 没有这样的算法 : AES for provider BC

标签 java encryption bouncycastle

我在下面的代码中不断收到 java.security.NoSuchAlgorithmException: no such algorithm: AES for provider BC。看起来我已经包含了所有我需要的东西。

我的类如下:

....
import org.bouncycastle.jce.provider.BouncyCastleProvider;

class ... {


static
{
    Security.addProvider(new BouncyCastleProvider());
}

public CryptSession(String _algo, String _provider, String _keyAlgo, int _keySize)
    throws
        NoSuchAlgorithmException,
        NoSuchProviderException
{
    KeyGenerator generator = KeyGenerator.getInstance("AES", "BC"); // KeyGenerator.getInstance(_algo, _provider);
    generator.init(256); //generator.init(_keySize);

    this._algo = _algo;
    this._provider = _provider;

    this._keyAlgo = _keyAlgo;
    this._keySize = _keySize;

    this._key = generator.generateKey();
}
...

最佳答案

您需要编辑 java 安全策略文件,将 bauntycasle 提供程序添加到位于 jdk/bin/lib 目录中的策略文件

关于java - 没有这样的算法 : AES for provider BC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23491366/

相关文章:

java - Spring 数据 JPA - 使用 @EntityGraph 导致 "Entity graph specified is not applicable to the entity"警告

java - 检查由字符串表示的数字是否在特定的计数基础中

java - 膨胀布局后更改 TextView 的文本

c# - 加密大字节数组的高效加密算法

java - Spring JPA @Converter - 如何使用它自己的 id 作为盐来加密实体?

java - Firestore - 为什么要检查 DocumentSnapshot 是否不为空并且调用是否存在?

php - 尝试使用 php 使用 aes-256-gcm 解密

java - 无法让 JavaPNS 用于推送通知

kotlin - 如何反序列化 Android 中的公共(public)/私有(private) P-384 key ?

java - Rijndael 实现中的输出长度异常