我写了一个自定义安全提供了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"