我为 AES/CBC/PKCS5Padding 编写了一个自定义安全提供程序。这很好用。
Provider
为了让 Java 将其识别为上述算法的有效提供程序,我需要添加哪些设置?我已经有了
public class FooBarProvider extends Provider {
public FooBarProvider() {
super("FooBar", 1.0, "Provider for AES.");
put("Cipher.AES", "foo.bar.AESCipher");
}
}
后一个参数是实际CipherSpi
工作的参数。我在哪里注册它支持 CBC 和 PKCS5Padding 的事实?目前要求相关Cipher
不返回我的类的实例:
Security.insertProviderAt(new FooBarProvider(), 1);
Cipher cip = Cipher.getInstance("AES/CBC/PKCS5Padding");
System.out.println(cip.getProvider()); //prints "SunJCE version 1.7"