Как мне выполнить поиск по всем доступным слотам в машине, чтобы я мог получить каждое хранилище ключей для каждого слота в Java?
Как я обнаружил, есть такой способ:
PKCS11 p11 = PKCS11.getInstance("/usr/local/lib/libsiecap11.so", "C_GetFunctionList", null, false); long[] slots = p11.C_GetSlotList(true);
спасибо за этот вопрос
Это не очень точный вопрос.
Если вы не точны, то «наиболее вероятное» решение - http://download.oracle.com/javase/6/docs/jre/api/security/smartcardio/spec/javax/smartcardio/CardTerminals.html
Но вы, похоже, говорите о PKCS # 11(что НЕ является прямым отображением аппаратного «слота» смарт-карты)
Написать код JNI на C ++ и вызвать его из Java.