package es.uji.security.keystore.dnie;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.security.KeyStoreException;
import java.security.Provider;
import java.security.Security;
public class DNIeTest
{
public static void main(String[] args) throws KeyStoreException, ClassNotFoundException,
SecurityException, NoSuchMethodException, IllegalArgumentException,
InstantiationException, IllegalAccessException, InvocationTargetException
{
String pkcs11config = "name = DNIE\nlibrary = /usr/lib/opensc-pkcs11.so ";
InputStream confStream = new ByteArrayInputStream(pkcs11config.getBytes());
Class sunPkcs11Class = Class.forName("sun.security.pkcs11.SunPKCS11");
Constructor pkcs11Constr = sunPkcs11Class.getConstructor(InputStream.class);
Provider pkcs11Provider = (Provider) pkcs11Constr.newInstance(confStream);
Security.addProvider(pkcs11Provider);
// KeyStore.getInstance("PKCS11", _pk11provider);
//
// // Si pasamos de aqu� el dnie est� insertado.
// Security.removeProvider(_pk11provider.getName());
// System.out.println("Saliendo true ...");
}
}