У меня проблемы с моим провайдером PKCS # 11.Вот мой код:
String pkcs11ConfigFile = "C:\\pkcs11.cfg";
Provider pkcs11Provider = new sun.security.pkcs11.SunPKCS11(pkcs11ConfigFile);
Security.addProvider(pkcs11Provider);
pkcs11.cfg
file:
name = SmartCard
library = C:\Program Files\CryptoTech\CryptoCard\CCPkiP11.dll
slot = 3
После запуска кода у меня есть исключение:
java.security.ProviderException: Initialization failed
at sun.security.pkcs11.SunPKCS11.(SunPKCS11.java:340)
at sun.security.pkcs11.SunPKCS11.(SunPKCS11.java:86)
at signature.NewClass.main(NewClass.java:15)
Caused by: java.io.IOException: Invalid access to memory location.
C:\Program Files\CryptoTech\CryptoCard\CCPkiP11.dll
PS.Карт-ридер подключен, карта вставлена, слот имеет правильное значение ..
Спасибо за любую помощь!