Шаг второй (продолжение).Стандарт
ISO7816.

Приветствую всех, кто еще
остался верен нашему делу — ФРИКИНГУ. Каюсь,
посыпаю голову пеплом и опять каюсь, что не
подавал признаков деятельности больше
месяца. Но, как говорят французские хакеры —
се ля Виндовс. Да, да, все так и было: сначала
рухнула ось, потом недели две шли
спасательные работы, потом злой начальник 🙁
услал в дальнюю командировку, потом я решил
сменить работу, и вот пока я раскидал все
эти вопросы, прошел указанный период
времени. Спасибо всем, кто поддерживал
рубрику в период моего отсутствия как
своими комментами, мессаджами, так и
статьями. Особое спасибо MoloT’у,т.к. он чуть
было не пустил под откос весь мой
образовательно-познавательно-практический
цикл статей про таксофонные карты своей
статьей про эмулятор. Да, вещь у него
описана крутая, конечно, но … факт есть факт:
схему зажал? — зажал, детальное описание
работы привел? — не привел, а сам девайс у
тебя фунциклирует? Да?! Прекрасно, но что ты
будешь с ним делать, когда опять сменят
раскладку контактов или тип чипа? Не
работает? А почему? И я не знаю. Так что,
давай разберемся с этим делом до конца,
поймем, как оно работает и соберем свой
девайс, не хуже Молотовского. Итак,
насколько я помню мы разобрали основные
этапы совместной работы карты и некоего
интерфейсного устройства (таксофона то
есть). Продолжаем: Установка карты в
начальное состояние (Reset):

-все линии
устанавливаются в состояние низкого уровня;
-подается напряжение питания VCC;
-сигнал I/O на интерфейсном устройстве
устанавливается в режим ввода;
-на соответствующий контакт (RST) подается
высокий уровень в течении 50 мкс, после чего
сигнал устанавливается в низкий уровень.

Начальная установка
карты в настоящее время используется не во
всех чипах, раньше это было продиктовано
особенностью внутренней архитектуры чипа,
не позволявшей определить его текущее
состояние без полного сброса. Чипы нового
типа лишены этого недостатка, что и
повлекло за собой исключение этого
контакта с карт.

Ожидание состояния
готовности карты. По сути дела это
последний штрих предыдущего этапа, так как
интерфейсное устройство определяет
готовность карты по появлению сигнала
высокого уровня на выводе I/O после
окончания сигнала RST.

Обмен информацией между
картой и интерфейсным устройством. Тут,
если не вдаваться в технические
подробности, не лезть в дебри диаграмм и не
морочить себе и другим голову, то вся суть
стандарта сводится к стандартному: карта
может работать в двух режимах: асинхронном
и синхронном. В первом из них данные
передаются на линию I/O в асинхронном
полудуплексном режиме. Во втором режиме все
то же самое, но только передача данных
синхронизируется сигналом CLK. И в том, и в
другом случае, обмен данными производится
пакетами по 8 бит, то бишь по 1 байту. За
исключением маленьких технических нюансов,
весь режим передачи данных полностью
аналогичен передаче данных по
параллельному (LPT) порту в первом режиме и по
последовательному (СОМ) — во втором.
Подробности насчет порядка следования и
назначения отдельных битов опускаю, так как
это сугубо технические детали, которые
каждый желающий может найти в оригинале
стандарта ISO-7816. Хотя, если большинство
выразит свое желание, я могу и описать все
это. Отсоединение контактов. Ну тут все
элементарно: выдергиваем карту и усе. Но это
у нас так, а по стандарту отключение карты
происходит так:

— на все контакты подается
низкий уровень;
— отключается напряжение программирования (Vpp);
— отключается напряжение питания (VCC).

Именно эти действия и
производит таксофон, когда ты нажимаешь
кнопку сброса. Вот такой он, этот стандарт
ISO7816. Как видишь ничего сложного. На этом мы
наконец завершаем второй шаг и следующим
нашим шагом будет считывание информации с
карты, т.е сборка простейшего hardware и
написание простейшего software. Не пугайся слов
"простейший" — это не фуфел, все
действительно просто.

Оставить мнение

Check Also

Безопасность превыше всего. 9 простых трюков, которые сделают жизнь линуксоида секьюрнее

Жизнь обычных людей складывается из мелочей. Жизнь линуксоида складывается из множества ма…