BlackBerry スマートカード リーダーを利用する BlackBerry 用のアプリを作成しています。この件に関するドキュメントはあまりないので、誰かが最初の例を教えてくれると本当にうれしいです.
基本的に、カードには 1 つの 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
は有望に見えます - いくつかの素晴らしいメソッドがありますが、「不可解な」引数があります。次はどうする?