Я пишу приложение для BlackBerry, который использует читателя смарт-карты BlackBerry. Нет большого количества документации относительно предмета, таким образом, я действительно хотел бы, если кто-то мог бы дать мне стартовые примеры.
В основном существует один закрытый ключ RSA на карте плюс сертификат (для парного открытого ключа). Я хотел бы смочь шифровать/дешифровать данные и также подписать их также. Заключительная цель состояла бы в том, чтобы установить взаимно аутентифицируемое соединение SSL с помощью клиентского сертификата, содержавшего на смарт-карте.
Вот код, который мне удалось придумать до сих пор:
SmartCardReader btReader = null;
SmartCardReader[] readers = SmartCardReaderFactory.getInstalledReaders();
for (int i = 0; i < readers.length; i++) {
SmartCardReader reader = readers[i];
if (reader.getType().equalsIgnoreCase("bluetooth")) {
btReader = reader;
break;
}
}
SmartCardReaderSession readerSession = reader.openSession();
CryptoSmartCard card = (CryptoSmartCard) readerSession.getSmartCard();
RSACryptoToken token = (RSACryptoToken) card.getCryptoToken("RSA");
Это token
обещание взглядов - имеет некоторые хорошие методы, но с "загадочными" аргументами. Что сделать затем?