Подтвердить что ты не робот

Пример чтения смарт-карт Blackberry

Я пишу приложение для 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 выглядит многообещающим - имеет несколько полезных методов, но с "загадочными" аргументами. Что делать дальше?

4b9b3361

Ответ 2

Вам необходимо внедрить методы SmartCardSession, а также реализовать методы RSACryptoToken. С помощью методов SmartCardSession вы сможете общаться со смарт-картой и с помощью методов RSACryptoToken, вы сможете выполнять криптографические операции. Вы также должны прочитать протокол APDU.