Часть 1.
На написание этой статьи меня сподвигнули жаркие споры на онлайн страницах хакера по поводу создания эмулятора таксофонной карты. У многих кто лишь проникся идеей создания такового возникает множество вопросов: «а как это работает?», «а что означают контакты?» и т.д. Не буду рассматривать все существующие варианты карт, постараюсь остановиться лишь на московских картах, применяемых в МГТС. Итак, карты бывают нескольких видов, 6 или 8 контактные. В последнее время применяются в основном 6 контактные карты.
Изображение на карте достаточно красноречиво ;), поэтому я постараюсь все объяснить. Итак, что мы видим перед собой? Я не буду загромождать ваши умы различной технической информацией о размерах карты, стойкости к внешним воздействиям и т.д. Перейду сразу к главному — что означают контакты и как их можно использовать в своих интересах.
Итак, в порядке сверху вниз и слева направо: Самый верхний левый контакт — напряжение питания карты. Карта представляет собой микроэлектронное устройство которому необходимо питание. Напряжение питания карты равно +5V. Под ним располагается контакт Reset, ещё ниже вывод Clock. При помощи этих контактных площадок и происходит управление картой. Различные комбинации управляющих сигналов устанавливают режимы работы карты и позволяют считывать и даже записывать информацию. Но рано радоваться. Не все так просто. Перейдем к правому ряду контактов. Верхний правый контакт — «земля» или общий, площадка под ним не используется в нынешней реализации, и самая нижняя правая площадка — вывод I/O, или порт ввода/вывода. Через этот порт карта общается с внешним миром. Возникает вопрос, а можно ли считать информацию с карты? Да и не представляет особого труда для тех, кто не боится взять в руки паяльник. Трудной задачей может показаться изготовление надежного соединения с контактными площадками, но это-то как раз проще всего. Достаточно купить считыватель чип-карт. Стоимость такого считывателя порядка 70 рублей. Во время посещения магазина стоит прикупить вилку разъема, втыкаемую в LPT порт компьютера, потому как именно через этот порт мы и будем «общаться» с картой. Стоит прикупить немного провода и кусок текстолита, на который впаяется считыватель. Хотя можно просто подпаяться к ножкам считывателя, но они достаточно хрупкие и могут легко отломиться. Не буду предлагать конкретную конструкцию, должны же вы проявить хоть немного самостоятельности. 😉 Наиболее нетерпеливые уже наверно ждут не дождутся когда, когда будет схема! Дождались. Вот вам схема соединений.
Контакт
CLK
RST
IORD
IOWR
LED
CARD
GND
Сигнал
D0
D1
ACK
D3
D2
BUSY
GND
Вывод
2
3
10
5
4
11
25
Думаю стоит пару слов сказать о самой схеме. Питание карты изображено схематично. В качестве источника питания вы конечно же можете использовать батарейку, но более правильно будет собрать простейший источник питания. Теперь о транзисторе. Транзистор для простого чтения карты не нужен. Но если вы решите экспериментировать с режимами аутентификации — он понадобится. Это может быть любой N-P-N транзистор, например КТ315. 😉 Старые радиогубители меня поймут… Ностальгия… 😉 В базу транзистора можно включить сопротивление, но и так работает… 😉 Светодиод и ключ необязательно, они используются исключительно для удобства пользователя. Но наиболее требовательные к сервису могут их поиспользовать.