у меня есть CAC смарт-карты, и SCM Microsystems SCR3310 USB card Reader. Я запускаю Windows 7 Ultimate с пакетом обновления 1.
Эта настройка работала нормально. Когда я вставлял свой CAC, мои сертификаты немедленно распространялись бы к хранилищу сертификатов (как засвидетельствовано управлением сертификатами, certmgr.msc
), и я мог бы войти на веб-сайты, которые требовали CAC для доступа.
недавно я перестал иметь доступ к веб-сайтам. Выглядящий в Диспетчере сертификатов, я вижу, что только один, или иногда два моих сертификатов. Если я удалю их и снова вставлю свою карту, может появиться другой сертификат.
Я только что вернулся и заменил считыватель той же моделью, так что я знаю, что это не виновник.
я, наконец, подумал, чтобы посмотреть на системный журнал, и заметил следующие ошибки при вставке смарт-карты:
ошибки, в хронологический порядок:
Smart Card Service Event ID: 610
Smart Card Reader 'SCM Microsystems SCR33xx v2.0 USB SC Reader 0' rejected
IOCTL TRANSMIT: Incorrect function. If this error persists, your smart card
or reader may not be functioning correctly.
Command Header: 00 c0 00 00
WudfUsbccidDrv Event ID: 11
A Request has returned failure.
MsgType: 0x80
ICCStatus: 0x0
CmdStatus: 0x1
Error: 0xf6 // ICC_PROTOCOL_NOT_SUPPORTED
SW1: 0x0
SW2: 0x0
WudfUsbccidDrv Event ID: 11
An operation has failed (0x0, 0x0, 0x0, 0x0).
ScT0Transmit: Failed to send request at TPDU level.
HResult: The specified request is not a valid operation for the target device.
// Note: this one comes from WUDFUsbccidDriver.dll CMyDevice::UsbScT0Transmit+7D0h
WudfUsbccidDrv Event ID: 10
Request[0](CLS=0x0,INS=0xc0,P1=0x0,P2=0x0,Lc=0,Le=256,.NETServiceMethod=0x0)
кажется, что аппаратный сбой во время IOCTL TRANSMIT
, который просачивался через фреймворк драйвера пользовательского режима.
изменить: консультируясь со спецификацией CCID, кажется, что карта отвечает назад с
bmCommandStatus = 1 - Failed (error code provided by the error register)
. И Error = ICC_PROTOCOL_NOT_SUPPORTED -10 (F6h)
. Я предполагаю, что драйвер преобразует эту ошибку в " HResult: указанный запрос не является допустимой операцией для целевого устройства." сообщение.
кроме того, отправляемая команда была INS=0xC0, то есть ПОЛУЧИТЬ ОТВЕТ.
как сказать, что протокол не поддерживается? Что водитель делает иначе, чем когда он работал? Обратите внимание, что я также только что попробовал это с новым CAC, и я вижу подобное поведение. Проблема с кард-ридером или драйвером?
учитывая, что я просто заменил считыватель (и переустановил драйверы, перезагрузился и т. д.) что-то не так с моей смарт-карты? Я предполагаю, что нет, потому что это тут работа с другим устройством чтения в другой системе. Я не пробовал другой читатель на той же системе.
в самом деле тот же reader подключен к виртуальной машине Windows 7 на той же физической машине работает просто отлично! Что-то явно сломано, и это сводит меня с ума, пытаясь понять, что.
так в чем проблема?