Escribí un proveedor de seguridad personalizado para AES/CBC/PKCS5Padding. Eso funciona bien¿Cómo hago para que Java use mi proveedor de seguridad?
¿Qué configuraciones necesito agregar al Provider
para que Java lo reconozca como un proveedor válido para el algoritmo anterior? Ya tengo
public class FooBarProvider extends Provider {
public FooBarProvider() {
super("FooBar", 1.0, "Provider for AES.");
put("Cipher.AES", "foo.bar.AESCipher");
}
}
donde el último argumento es el CipherSpi
real que hace el trabajo. ¿Dónde registro el hecho de que es compatible con CBC y PKCS5Padding? Actualmente pidiendo una relevante Cipher
no devuelve una instancia de mi clase:
Security.insertProviderAt(new FooBarProvider(), 1);
Cipher cip = Cipher.getInstance("AES/CBC/PKCS5Padding");
System.out.println(cip.getProvider()); //prints "SunJCE version 1.7"
Entonces, ¿ni siquiera puedo instalarlo para probar su implementación? –