Метод ISCardISO7816::InternalAuthenticate
[Метод InternalAuthenticate доступен для использования в операционных системах, указанных в разделе Требования. Он недоступен для использования в Windows Server 2003 с пакетом обновления 1 (SP1) и более поздних версиях, Windows Vista, Windows Server 2008 и последующих версиях операционной системы. Модули смарт-карт предоставляют аналогичные функциональные возможности.]
Метод InternalAuthenticate создает команду единицы данных протокола приложения (APDU), которая инициирует вычисление данных проверки подлинности карта с использованием данных запроса, отправленных с устройства интерфейса, и соответствующего секрета (например, ключа), хранящегося в карта.
При присоединении соответствующего секрета к MF можно использовать команду для проверки подлинности карта в целом.
Если соответствующий секрет присоединен к другому DF, для проверки подлинности этой DF можно использовать команду .
Синтаксис
HRESULT InternalAuthenticate(
[in] BYTE byAlgorithmRef,
[in] BYTE bySecretRef,
[in] LPBYTEBUFFER pChallenge,
[in] LONG lReplyBytes,
[in, out] LPSCARDCMD *ppCmd
);
Параметры
-
byAlgorithmRef [in]
-
Ссылка на алгоритм в карта.
Если это значение равно нулю, это означает, что информация не предоставляется. Ссылка на алгоритм известна либо перед выполнением команды, либо указана в поле данных.
-
bySecretRef [in]
-
Ссылка на секрет.
Значение Значение - Нет сведений
Битовое положение: 000000000
Информация не предоставляется. Ссылка на секрет известна либо перед выполнением команды, либо указана в поле данных.- Глобальная ссылка
Положение бита: 0-------
Глобальные эталонные данные (ключ, зависящий от MF).- Ссылка на конкретный
Битовое положение: 1-------
Конкретные ссылочные данные (определенный ключ DF).- RFU
Положение бита: -xx-----
00 (другие значения — РФС).- Секрет
Битовое положение: ---xxxxxx
Номер секрета. -
pChallenge [in]
-
Указатель на данные, связанные с проверкой подлинности (например, запрос).
-
lReplyBytes [in]
-
Максимальное число байтов, ожидаемое в ответе.
-
ppCmd [in, out]
-
На входе — указатель на объект интерфейса ISCardCmd или NULL.
При возврате он заполняется командой APDU, созданной этой операцией. Если параметру ppCmd присвоено значение NULL, то объект интеллектуальной картаISCardCmd создается внутренним образом и возвращается с помощью указателя ppCmd.
Возвращаемое значение
Метод возвращает одно из следующих возможных значений.
Код возврата | Описание |
---|---|
|
Operation completed successfully (Операция выполнена успешно). |
|
Недопустимый параметр. |
|
Был передан неправильный указатель. |
|
Недостаточно памяти. |
Комментарии
Успешное выполнение команды может быть результатом успешного выполнения предыдущих команд (например, VERIFY или SELECT FILE) или выбора (например, соответствующего секрета).
Если при выполнении команды в данный момент выбраны ключ и алгоритм, команда может неявно использовать ключ и алгоритм.
Количество выполнений команды может быть записано в карта, чтобы ограничить количество дальнейших попыток использования соответствующего секрета или алгоритма.
Список всех методов, предоставляемых этим интерфейсом, см. в разделе ISCardISO7816.
В дополнение к приведенным выше кодам ошибок COM этот интерфейс может возвращать код ошибки смарт-карта, если для выполнения запроса была вызвана функция смарт-карта. Дополнительные сведения см. в разделе Возвращаемые значения смарт-карты.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows XP [только классические приложения] |
Минимальная версия сервера |
Windows Server 2003 [только классические приложения] |
Окончание поддержки клиентов |
Windows XP |
Окончание поддержки сервера |
Windows Server 2003 |
Заголовок |
|
Библиотека типов |
|
DLL |
|
IID |
IID_ISCardISO7816 определяется как 53B6AA68-3F56-11D0-916B-00AA00C18068 |
См. также раздел