Пакет javax.smartcardio
API ввода/вывода смарт-карт Java™
Данная спецификация описывает API ввода/вывода смарт-карт Java, определённый в JSR 268. Она определяет Java API для связи со смарт-картами, используя APDUs ISO/IEC 7816-4. Это позволяет приложениям Java взаимодействовать с приложениями, работающими на смарт-карте, хранить и извлекать данные на карте и т. д.API определяется классами в пакете javax.smartcardio. Их можно классифицировать следующим образом:
- Классы, описывающие соответствующие структуры смарт-карт
- ATR, CommandAPDU, ResponseAPDU
- Фабрика для получения реализаций
- TerminalFactory
- Основные классы для функций карты и терминала
- CardTerminals, CardTerminal, Card, CardChannel
- Вспомогательные классы для разрешений и исключений
- CardPermission, CardException, CardNotPresentException
- Интерфейс поставщика услуг, к которому приложения напрямую не обращаются
- TerminalFactorySpi
Пример использования API
Простой пример использования API:// show the list of available terminals
TerminalFactory factory = TerminalFactory.getDefault();
List<CardTerminal> terminals = factory.terminals().list();
System.out.println("Terminals: " + terminals);
// get the first terminal
CardTerminal terminal = terminals.get(0);
// establish a connection with the card
Card card = terminal.connect("T=0");
System.out.println("card: " + card);
CardChannel channel = card.getBasicChannel();
ResponseAPDU r = channel.transmit(new CommandAPDU(c1));
System.out.println("response: " + toString(r.getBytes()));
// disconnect
card.disconnect(false);- С тех пор:
- 1.6
| Класс | Описание |
|---|---|
| ATR | Ответные байты смарт-карты на команду сброса. |
| Card | Смарт-карта, с которой установлено соединение. |
| CardChannel | Логическое канальное соединение со смарт-картой. |
| CardPermission | Разрешение на операции со смарт-картой. |
| CardTerminal | Терминал смарт-карты, иногда называемый считывателем смарт-карты. |
| CardTerminals | Набор поддерживаемых терминалов TerminalFactory. |
| CommandAPDU | Команда APDU, следующая структуре, определённой в ISO/IEC 7816-4. |
| ResponseAPDU | Ответ APDU, как определено в ISO/IEC 7816-4. |
| TerminalFactory | Фабрика для объектов CardTerminal. |
| TerminalFactorySpi | Класс TerminalFactorySpi определяет интерфейс поставщика услуг. |
| Перечисление | Описание |
|---|---|
| CardTerminals.State | Перечисление атрибутов CardTerminal. |
| Исключение | Описание |
|---|---|
| CardException | Исключение для ошибок, возникающих во время связи со стеком смарт-карты или самой картой. |
| CardNotPresentException | Исключение, выбрасываемое, когда приложение пытается установить соединение с терминалом, на котором нет карты. |
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.smartcardio/javax/smartcardio/package-summary.html