1

У меня есть считыватель смартфонов OmniKey 5321 и компьютер с Debian. Следующий код Python считывает карты:Прочитайте уникальный идентификатор от RFID-карты в Python

from smartcard.CardMonitoring import CardMonitor, CardObserver 
from smartcard.util import * 
import sys 

class printobserver(CardObserver): 
    def update(self, observable, (addedcards, removedcards)): 
     for card in addedcards: 
      print "+Inserted: ", toHexString(card.atr) 
     for card in removedcards: 
      print "-Removed: ", toHexString(card.atr) 

try: 
    print "Insert or remove a smartcard in the system." 
    print "" 
    cardmonitor = CardMonitor() 
    cardobserver = printobserver() 
    cardmonitor.addObserver(cardobserver) 
    raw_input('Press Enter to exit\n') 
except: 
    print "Unexpected error: ", sys.exc_info()[0] 

код Python работает нормально, но возвращает мне тот же ртд тег для многих карт. Данные АТВА:

3B 8F 80 01 80 4F 0C A0 00 03 00 06 03 00 01 00 00 00 00 6A

Как я могу читать что-то от стоимости создания эксклюзивного карты? Я понимаю, что мне нужно отправить некоторые команды, и ответы будут содержать UID, но как я могу найти команды? Как я их отправлю?

Спасибо!

ответ

3

После того, как вы подключены к плате (или на самом деле читатель), то вы можете послать стандартизированный команду PC/SC для получения UID карты из считывателя:

FF CA 00 00 00