我爲AES/CBC/PKCS5Padding編寫了自定義安全提供程序。這工作正常。如何讓Java使用我的安全提供程序?
什麼設置,我需要添加到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"
所以我甚至不能安裝它來測試它的實現? – 2012-04-09 06:18:44