2015-01-21 4 views
1

У меня есть несколько смарт-карт ACR122T без уникальных серийных номеров (от ACS). Мне нужно знать, с какой физической смарт-карты я подключаюсь из pcsc-lite. Я знаю, используя lsusb USB порт, на котором установлено физическое устройство, но как сопоставить информацию о USB-порту с помощью SCardGetAttribute (SCARD_ATTR_DEVICE_UNIT)?pcsc-lite: несколько устройств ACR122T без уникального серийного номера - linux

Кажется, карта должна быть на уровне ОС, поскольку я не могу найти способ считывать информацию о порте USB (результаты lsusb) из API pscs-lite.

В этом сообщении упоминается метод Smartcard reader ACR122U has no unique serial number , но я не понимаю детали, стоящие за «используемым этим числом разработчиков, чтобы я всегда использовал правильный читатель».

Любая помощь приветствуется. Спасибо, -Phil

ответ

0

Отказ: Я работаю над Windows, а не из Linux.

Устройства ACR122T (и ACR122U) не только не имеют серийного номера (кроме печатаемого на задней панели), но также не имеют серийного номера USB, так что они могут быть дифференцированы только через USB-порт, в который они подключены. Кроме того, все ACR122T и Us у меня здесь (мы купили кучу) идентифицируем себя как ACS ACR122 для Windows. Используя проприетарный API для получения версии прошивки, ACR122T и ACR122U идентифицируют себя как ACR122U (например, «ACR122U207» или «ACR122U214»).

Это означает, что сама ОС не может различать несколько устройств любым другим способом, то USB порт он подключен.

Я также попытался установить связь между PCSC устройством и операционной системы, но кроме this function (который доступен только для Windows 8). Я ничего не нашел, поэтому мне кажется, что нет возможности сделать это через вызовы pcsc.

Устройство устройство выдается слоем pcsc последовательно, чтобы вы могли различать устройства, к которым вы подключены, но не идентифицируете конкретное устройство.

+0

Спасибо за информацию о окнах 8. Функция SCardGetReaderDeviceInstanceId - это то, что мы хотели бы использовать на стороне Linux, но не похоже, что она в настоящее время находится в pcsc-lite. – PhilBr

+0

@PhilBr Просто, чтобы было ясно, даже если вам удастся получить дескриптор устройства ОС, это не поможет вам, так как ACR112s ** не сообщают о серийном номере или другой отличительной информации **. – Fozi