Модераторы: AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Смарт карта. Общие сведения. Общие положения, стандарты. 
:(
    Опции темы
firstone
Дата 20.1.2008, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 116
Регистрация: 25.9.2007
Где: Кровью залитая Св ятая Земля

Репутация: 5
Всего: 7



Смарт карта

Смарт карта представляет собой пластиковую карту с чипом внутри. Этот чип - нечто более сложное простой микросхемы - микропроцессор. Этот микропроцессор содержит в себе память (ROM, EEPROM, RAM), арифметический процессор и в большинстве случаев криптографический процессор. Все это находится в одном чипе. Кроме этого также имеются специальные контролеры ввода/вывода, но их мы затрагивать не будем.

По способу взаимодействия с управляющим устройством (ридером) смарт-карты делятся на две группы:

(1) Контактные карты - разновидность смарт-карт с контактной площадкой и интерфейсом, обеспечивающим взаимодействие карты и ридера при подаче напряжения на контакты чипа. Получили широкое распространение в банковских платежных системах, системах информационной безопасности, в торговле и системах идентификации личности, а также в качестве таксофонных и SIM -карт.


(2) Бесконтактные карты - разновидность смарт-карт с встроенной антенной бесконтактным и интерфейсом, обеспечивающим взаимодействие карты и ридера на небольшом расстоянии при питании чипа карты с помощью электромагнитного поля. Получили широкое распространение в системах контроля физического доступа и на транспорте, а также в качестве социальных карт.


Кроме этого, существуют комбинированные смарт-карты и смарт-карты с дуальным интерфейсом. Комбинированную смарт-карту характеризует простое физическое объединение на одной карте двух чипов - одного с контактным и другого - с бесконтактным интерфейсом. Друг с другом эти чипы никак не связаны. Смарт-карты с дуальным интерфейсом имеют один чип, доступ к его памяти возможен как через контактную площадку, так и "через воздух" - бесконтактным путем. 

Итак, как было упомянуто выше, в карте могут находиться три типа памяти: ROM, EEPROM и RAM. В ROM-памяти записана операционная система карты, в EEPROM-память помещаются приложения а RAM используется точно также, как и на персональном компьютере - временные данные которые сохраняются пока у карты есть питание, т.е. карта находится в считывающем устройстве (для контактных карт) или в зоне досягаемости считывающего устройства (для безконтактных карт, обычно до 3-4 см).

На одну смарт карту можно установить несколько приложений. Таким образом, одна смарт карта может быть использована и как кредитная карта и как удостоверение личности и т.д. Конечно количество приложений которые могут быть установлены ограничены общим количеством памяти на карте. Существует большое многообразие карт с различным количеством памяти и ее типов. Преимущественно главный фактор влияющий на этот аспект - применение карты и ее цена. На сегодняшний день (январь 2008) карты в больших количествах обходятся в несколько долларов США за единицу.

Различные характеристики смарт карт определены серией стандартов ISO/IEC 7816 (которые являются разширением ISO/IEC 7810), а именно:
1) ISO/IEC 7816-1 Физические характеристики (размеры)
2) ISO/IEC 7816-2 Контактные карты - размещение чипа и размеры
3) ISO/IEC 7816-3 Електронные характеристики для контактных карт
4) ISO/IEC 7816-4 Формат команд и безопасность
5) ISO/IEC 7816-5 Регистрация изготовителей приложений и идентификаторы приложений
6) ISO/IEC 7816-6 Межотраслевые элементы
7) ISO/IEC 7816-7 Межотраслевые комманды SCQL (Structured Card Query Language)
8) ISO/IEC 7816-8 Команды для безопасной передачи данных и различных операций
9) ISO/IEC 7816-9 Команды для управления картой
10) ISO/IEC 7816-10 Электрические сигналы и ATR (Answer To Reset) для синхронных карт
11) ISO/IEC 7816-11 Верификация персонала с помощью биометрических методов
12) ISO/IEC 7816-12 Различные характеристики смарт карт с USB интерфейсом (USB-ICC)
13) ISO/IEC 7816-13 Команды для управления приложениями и взаимодействием приложений на карте
14) ISO/IEC 7816-15 Применение криптометодов.

Для полноты картины необходимо перечислить серию стандартов для безконтактных карт ISO/IEC 14443:
1) ISO/IEC 14443-1 Физические характеристики
2) ISO/IEC 14443-2 Электромагнитные волны, сигналы и интерфейсы
3) ISO/IEC 14443-3 Инициализация (при приближении карты к считывающему устройству) и антиколлизия (работа с несколькимми безконтактными картами на одном считывающем устройстве)
4) ISO/IEC 14443-4 Протоколы передачи данных

Несомненно мы не будем затрагивать темы электроники ибо это форум программистов. Наша задача - показать как легко и просто программировать эти маленькие компьютеры (а это действительно так) с помощью простого и понятного языка - Java.

Обмен данными между картой и терминалом выполняется с помощью пакетов данных APDU (Application Protocol Data Unit). Формат этих пакетов определен ниже:

user posted image


CLA (Class byte) - поле длинной 1 байт идентифицирующее класс команд (инструкций). Обычно для каждого приложения на карте отводится отдельный класс.
INS (Instruction code) - поле длиной 1 байт содержащие код инструкции (команды). Определение допустимых значений инструкций попадает под ответственность разработчика приложения.
P1 (Parameter 1) - поле длиной 1 байт содержащие параметр 1 для инструкции.
P2 (Parameter 2) - поле длиной 1 байт содержащие параметр 2 для инструкции.
Lc (Length of Command data) - поле длиной 1 байт. Это поле хранит длину поля Data (макс. 255).
Data - длина указана в поле Lc. Это поле содержит дополнительную информацию для успешного выполнения инструкции (команды).
Le - поле длиной 1 байт содержащие максимальное количество байт в поле Data ответа (response) на этот пакет APDU.

Обязательными полями APDU являются: CLA, INS, P1 и P2.
Позволю себе провести следующую аналогию, которая на мой взгляд хорошо отражает функциональную нагрузку каждого из определенных выше полей. Если представить, что CLA - имя класса/объекта, INS - наименование метода а P1 и P2 - аргументы этого метода, то все это можно сложить в такую запись которая будет понятна практически любому программисту (по крайней мере программирующему в OOP):
byte[Le + 2] CLA.INS(P1, P2, Data = null)

В ответ на посланный пакет APDU должен быть получен ответ следующего формата:

user posted image


Здесь поле Data опционально. В случае если с карты были запрошены какие либо данные, именно поле Data должно их содержать. Два последующих байта представяют обязательный код выполнения операции - Status Words. Каждый байт называется по своему: SW1 и SW2. Если последняя операция (APDU) была выполнена успешно, то эти байты могут принимать следующие значения (в шестнадцатиричной системе):
90 00 - успешное выполнение последней операции
61 ХХ - успешное выполнение, SW2 указывает на количество все еще доступных байт (могут быть получены после запроса)
62 XX, 63 XX - успешное выполнение, но с предупреждением (warning). Код предупреждения в SW2

Остальные коды указывают на какую либо ошибку. Полный список кодов представлен в таблице Table 6 в документе ISO/IEC 7816-4. Для удобства приведу ее здесь (надеюсь не согрешу), т.к. очень часто приходится к ней обращаться:

user posted image


Библиография:
1) ISO/IEC 7816
2) ISO/IEC 14443

user posted image


Это сообщение отредактировал(а) firstone - 21.1.2008, 15:21
--------------------
В программировании я конфуцианец. В жизни я либерал-демократ. В душе я буддист.Добавлено через 1 минуту и 9 секундА на самом деле я лентяй.
PM MAIL   Вверх
Olegan
Дата 1.2.2008, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крутой сисадмин
**


Профиль
Группа: Завсегдатай
Сообщений: 752
Регистрация: 15.5.2007

Репутация: нет
Всего: 105



Спасибо за инфу, всегда хотел узнать что это.
Теперь понятно для чего нужна одноименная служба в xp.


--------------------
Цитата(Mayk @  18.6.2008,  14:29 Найти цитируемый пост)
/me объявляет Olegan врагом народа

Цитата(gta4kv @  20.6.2008,  22:01 Найти цитируемый пост)
/me объявляет Olegan врагом народа во второй раз

Цитата(localhost @  15.6.2009,  08:45 Найти цитируемый пост)
/me объявляет Olegan врагом народа в третий раз
PM MAIL   Вверх
Gugle
Дата 27.3.2008, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 9.12.2005

Репутация: нет
Всего: нет



Интересно было почитать. спс.
PM MAIL   Вверх
neutrino
Дата 5.4.2010, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: нет
Всего: 62



Черт. Все изображения с сайта ipicture.ru были у далены :(


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java Card | Следующая тема »


 




[ Время генерации скрипта: 0.0961 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.