Smart Cards

Тема в разделе "WASM.BEGINNERS", создана пользователем HuXTUS, 8 сен 2008.

  1. HuXTUS

    HuXTUS New Member

    Публикаций:
    0
    Регистрация:
    8 янв 2007
    Сообщения:
    240
    Здравствуйте. Поступил на преддипломную практику, дали задание разобраться со смарт-картами. Начал писать на асме, но начальник сказал все удалить, что в ж*пу ассемблер, пиши на делфи.

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

    У меня дома лежит кард-ридер OMNIKEY CardMan и карточка к нему.

    Самые простые действия, вроде установки соединения, считывания имен всех ридеров, я могу производить. Вся эта информация есть в MSDN.

    О чем хочу попросить помощи:
    *необходимо реализовать ввод PIN-кода(то-есть проверку его на валидность) и изменение его
    *запись в карточку файлов

    Помимо этого, я так понял, что у каждой карточки(зависит от производителя) есть свой внутренний язык команд в виде шестнадцатеричной последовательности, например "a0f2000016". Это для меня пока темный лес.

    Буду благодарен за любую информацию о работе с этими устройствами в принципе, пусть даже будет много флуда. Если кто-то сталкивался с ними, поделитесь. Какие есть подводные камни? Мне до конца недели надо предоставить что-то, что его впечатлит, поэтому сюда и обратился, для подстраховки.
     
  2. driver

    driver New Member

    Публикаций:
    0
    Регистрация:
    18 июн 2008
    Сообщения:
    302
  3. HuXTUS

    HuXTUS New Member

    Публикаций:
    0
    Регистрация:
    8 янв 2007
    Сообщения:
    240
    Спасибо, но в этой книге чип'ы рассмативаются в общем, причем глазами электронщика. Это слишком низкий уровень.
    В моей задаче всё, что мне нужно это вызов правильных API из WINSCARD.dll c нужными параметрами. Вот только они не очень документированны. Никак не могу разобраться с тем, как проверять и менять PIN.

    У меня есть SDK какой-то фирмы, которая ее продает. Они реализовали все в виде своей dll и заголовочных файлов для c++. Буду ковырять dll.