Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПАЗИ.docx
Скачиваний:
32
Добавлен:
05.09.2019
Размер:
1.45 Mб
Скачать

3. Ключи доступа

Ключи доступа используются для разграничения доступа к файлам приложений по чтению/записи. Эти ключи являются необязательными, и могут существовать только на уровне приложений. Каждое приложение может иметь более одного ключа доступа, но не более максимального их количества, определяемого возможностями самой ИК.

4. Вычислительные ключи

Вычислительные ключи используются для внутренней аутентификации (проверки ИК приложением компьютера) и для шифрования данных. Смарт-карты, поддерживаемые высокоуровневыми функциями API, должны содержать один вычислительный ключ, проинициализированный на уровне карты. На уровне приложений, каждый каталог может содержать только один вычислительный ключ.

Уровень

Ключ

Количество ключей

Записаны при изготовлении

Уровень карты

Главный

1 – обязательно

Да

PIN

1 – обязательно

Да

Доступа

Не применяется

Вычислительный

1 – обязательно

Да

Уровень приложений

Главный

1 – обязательно для каждого приложения

PIN

Не применяется

Доступа

Несколько – возможно для каждого приложения

Вычислительный

1 – обязательно

13. Основные параметры функций asehlCreate File

Создает новый файл на текущем уровне карты или приложения.

ASERESULT ASEAPI ASEHLCreateFile

(

HASECARD

hAseCard

LPBYTE

lpMainKey

LPFILEPROPERTIES

lpFileProperties

)

hAseCard — содержит хэндл смарт-карты.

lpCardMainKey — указатель на соответствующий главный ключ.

lpFileProperties — указатель на структуру FILEPROPERTIES

14. Основные параметры функций asehlCreate App

Создает новое приложение на текущем уровне карты.

Синтаксис

ASERESULT ASEAPI ASEHLCreateApp

(

HASECARD

hAseCard

WORD

wID

WORD

wBytesAllocated

LPBYTE

lpCardMainKey

LPBYTE

lpAppMainKey

LPBYTE

lpAppCalcKey

WORD

wNumberOfKeys

WORD

wNumOfKeyChanges

WORD

wNumOfFiles

)

hAseCard — содержит хэндл смарт-карты.

wID — указывает идентификатор создаваемого приложения.

wBytesAllocated — содержит количество байт, которое необходимо отвести создаваемому приложению.

lpCardMainKey — указатель на главный ключ карты (обязательный параметр).

lpAppMainKey — указатель на главный ключ приложения (обязательный параметр).

lpAppCalcKey — указатель на расчетный ключ приложения. Если новое приложение не будет иметь расчетного ключа, это значение должно быть NULL.

wNumberOfKeys — содержит число дополнительных ключей доступа, которые будут созданы на уровне нового приложения. Если новое приложение не будет иметь ключей доступа, это значение должно быть NULL.

wNumberOfKeyChanges — содержит число, которое показывает, сколько максимально раз можно сменить ключи на уровне этого приложения. Это значение не должно превышать значение

wMaxKeyChanges в структуре CARDCAPS. Если значение wMaxKeyChanges в структуре CARDCAPS составляет FFFF, то количество смены ключей неограниченно, и, следовательно, параметр

wNumberOfKeyChanges должен иметь значение NULL.

wNumOfFiles — указывает количество файлов, которые будут созданы в этом новом приложении.