Доступ к аппаратному токену PKCS11 на 64-битной машине

Итак, вот что я пытаюсь сделать. У меня есть аппаратный токен с некоторыми сертификатами, и я пишу приложение Java, чтобы попытаться получить доступ к этим сертификатам. Я использовал библиотеку SunPKCS11 в jre6 для 32-разрядной машины с Windows. Это небольшой пример того, как я получаю доступ к сертификатам:

String configName = "pkcs.cnf"
String PIN = "123456";
Provider p = new sun.security.pkcs11.SunPKCS11(configName);
Security.addProvider(p);
KeyStore keyStore = KeyStore.getInstance("PKCS11");
char[] pin = PIN.toCharArray();
keyStore.load(null, pin);

Он отлично работает, я могу получить сертификаты и все такое. Теперь я пытаюсь сделать то же самое на 64-битной машине. Однако я пытаюсь использовать 64-битную библиотеку jre6, и в ней отсутствует файл jar SunPKCS11 (расположенный в {java.home} / lib / ext . Из-за этого я не могу создать объект SunPKCS11. Мой вопрос для вас, что мне теперь делать? Как я могу получить доступ к сертификатам на токене с помощью 64-битных java-библиотек? Кто-нибудь написал 64-битную оболочку для такой задачи?

8
задан Otra 8 November 2011 в 20:41
поделиться