Библиотека приложения инициализации микросхемы


В зависимости от того, была ли персонализация карты успешной во всех модулях или нет, ПО контроллера управляет помещением карты в выходной лоток готовых карт или в выходной лоток бракованных карт.
ПО контроллера учитывает факты успешной или неуспешной персонализации карт и присваивает соответствующим записям пакета данных соответствующие статусы.
ПО контроллера является универсальным программным модулем. Оно обеспечивает выпуск различных типов карт, требующих различных способов персонализации, за счет создания наборов параметров, описывающих требуемые режимы работы устройства, форматы данных и т.д.

Библиотека приложения инициализации микросхемы



Библиотека приложения инициализации микросхемы обеспечивает взаимодействие между ПО контроллера и сервером инициализации микросхем.
В момент инициализации устройства персонализации перед началом персонализации пакета карт библиотека устанавливает соединение с сервером и передает в сервер идентификатор типа пакета. По полученному идентификатору сервер выбирает соответствующий набор параметров (задание) для управления инициализацией микросхем карт данного пакета.
В зависимости от особенностей технологии инициализации микросхем данного типа карт и карточного приложения библиотека по команде от сервера может запросить у оператора контроллера ввести необходимые данные для начала процесса персонализации (например, пароль, необходимый для инициализации миросхем карт данного типа).
В ходе персонализации карт библиотека принимает от контроллера данные для персонализации очередной карты перед тем, как они поступят в аппаратные модули устройства. Она передает эти данные на сервер для возможной предперсонализационной обработки. Примером такой обработки, как указывалось выше, может быть раскодирование зашифрованных данных.
Кроме предварительной обработки данных персонализации библиотека получает через ПО контроллера данные от драйвера платы ТВР с информацией о завершении процедуры инициализации микросхемы. Эти данные библиотека также передает на сервер для возможной обработки, результат которой она возвращает в ПО контроллера для помещения в журнал выполненных операций.

Драйвер платы ТВР



Драйвер платы ТВР осуществляет управление платой ТВР для электрической инициализации микросхемы карты.
Он взаимодействует с ПО контроллера для получения данных для инициализации карты. Полученные данные драйвер передает в сервер персонализации. От сервера персонализации драйвер получает команды чтения и записи данных в микросхему карты.

Последовательность этих команд определяется модулем инициализации микросхемы, работающем в сервере.
После окончания процедуры инициализации карты сервер передает в драйвер информацию о статусе завершения процедуры и сопроводительные данные. Драйвер передает статус и данные в ПО контроллера.
Программа драйвера запускает различные протоколы, реализующие команды чтения/записи данных в микросхему для взаимодействия с различными типами микросхем карт.

Сервер инициализации микросхем



Сервер инициализации микросхем выполняет управление программными модулями, реализующими различные приложения инициализации микросхем для карт различных типов, а также обеспечивает взаимодействие этих модулей с программными модулями, работающими в устройстве персонализации карт.
Сервер обеспечивает управление произвольным количеством персонализационных устройств с произвольным количеством станций инициализации микросхемы в каждом устройстве.
Сервер поддерживает установку соединения с библиотекой приложения инициализации микросхемы, получает от нее идентификатор типа пакета персонализируемых карт. По этому идентификатору сервер выбирает соответствующий набор конфигурационных параметров, называемый заданием.
Задание содержит в себе следующие описания:
- на каком устройстве будет выполняться персонализация карт;
- какие модули инициализации микросхемы необходимо использовать;
- нужно ли использовать для данного задания модуль расширения библиотеки, и если нужно, то какой;
- параметры работы приложения при инициализации микросхемы.
После идентификации задания сервер выполняет загрузку и инициализацию соответствующих программных модулей.


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

Примером может быть пароль для инициализации микросхемы.
Для каждого модуля инициализации микросхемы сервер обеспечивает взаимодействие между модулем и драйвером платы ТВР. Также сервер предоставляет модулю механизмы получения данных, переданных от модуля расширения библиотеки контроллера.
Для всех программных модулей, работающих в его среде, сервер предоставляет механизмы чтения конфигурационных параметров, а также механизмы протоколирования и трассировки событий, происходящих при работе модулей.
Сервер инициализации микросхем является универсальным программным модулем. Он обеспечивает управление процедурами инициализации микросхем различными модулями инициализации микросхемы и модулями расширения библиотеки контроллера, реализующими различные технологии персонализации приложений на микросхемах карт различных типов.

Программа персонализации приложения



Программа персонализации приложения (Smart Card Application, SCApp) реализует в себе операции, необходимые для инициализации на конкретном типе микросхемы карты приложения или набора приложений конкретного типа.
Программа персонализации приложения работает в среде, создаваемой сервером инициализации микросхем. Эта среда называется контекстом. Контекст предоставляет модулю программные интерфейсы, реализующие следующие функции:
управление устройством персонализации микросхемы на уровне команд APDU протокола ISO 7816;
получение данных от ПО контроллера и библиотеки расширения (см. ниже);
протоколирование событий, происходящих при персонализации микросхемы.
Контекст взаимодействует с драйвером платы ТВР и при получении от него данных для инициализации очередной карты вызывает соответствующие функции модуля, передавая ScApp полученные от драйвера платы ТВР данные. После завершения процедуры инициализации микросхемы ScApp возвращает в контекст статус выполнения операции и сопроводительную информацию. Контекст передает эти данные в драйвер платы ТВР.
Программа персонализации приложения является программным модулем, специфичным для конкретного типа пакета персонализируемых карт.
В настоящее время разработана скрипт-технология, характеризующаяся следующими свойствами:
- данные для персонализации приложения представлены в виде скрипта;
- алгоритм персонализации приложений определяется скриптом;
- при переходе к картам другого типа изменяется скрипт, а не программа персонализации приложения;
- модификация криптографических механизмов не требует модификации программы персонализации приложения.
Таким образом, скрипт-технология позволяет использовать единую ScApp для всех типов карт, эта ScApp представляет собой интерпретатор скриптов, а сами функции загрузки данных в микросхему реализуются скрипт-программами.

Модуль расширения библиотеки контроллера



Модуль расширения библиотеки контроллера обеспечивает расширение процедур инициализации процесса персонализации карт и процедур обработки данных, специфичное для данного типа приложения, инициализируемого на данном типе карт.
Модуль расширения библиотеки контроллера работает в среде, создаваемой сервером инициализации микросхем. Эта среда предоставляет модулю программные интерфейсы, реализующие следующие функции:
передачу данных в модули инициализации микросхемы;
протоколирование событий, происходящих при работе модуля. Кроме этого среда сервера вызывает соответствующие функции модуля при получении сервером запросов от библиотеки приложения инициализации микросхемы. Эти запросы соответствуют следующим действиям:
- инициализация процесса персонализации пакета карт в устройстве; модуль может в ответ на данный запрос передать в устройство указание на ввод оператором каких-либо данных;
- передача библиотекой приложения инициализации микросхемы в сервер данных, введенных оператором;
- передача библиотекой приложения в сервер данных, предназначенных для персонализации очередной карты для их предперсона-лизационной обработки;
- передача библиотекой приложения в сервер данных, сопровождающих статус завершения операции инициализации микросхемы, для обработки их перед помещением в журнал устройства.
Функции модуля выполняют соответствующую обработку данных и возвращают их в сервер для передачи в библиотеку приложения инициализации микросхемы.

Интересные записи



Содержание раздела