Функции(методы) общего назначения:
Функции(методы) общего назначения позволяют осуществлять сервисные операции, связанные с инициализацией и деинициализацией Guardant API, а также выполнять основные операции с защищенным контейнером:
- Создавать и закрывать хэндл защищенного контейнера
- Инициализировать и деиницилизировать память ключа
- Получать информацию из защищенного контейнера, в том числе и о последней ошибке
- Преобразовывать получаемую информациию в текстовые соощения
Перечень функций Guardant API общего назначения:
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Не нужен | Инициализировать GrdAPI + задать путь к GnClient.ini | |
Не нужен | Деинициализировать Guardant API | |
Не нужен | Получить информацию о последней ошибке из защищенного контейнера | |
Не нужен | Преобразовать код ошибки в текстовое сообщение | |
Не нужен | Получить информацию из защищенного контейнера | |
Не нужен | Проверить валидность хэндла защищенногоконтейнера | |
Не нужен | Создать хэндл защищенного контейнера | |
Не нужен | Закрыть хэндл защищенного контейнера |
Работа с памятью ключа:
Функции(методы) работы с памятью ключа позволяют осуществлять сервисные операции, связанные с инициализацией и защитой памяти электронного ключаI, а также выполнять операции связанные с чтением информации из памяти электронного ключа и записью необходимых данных в его память.
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Не нужен | Установить режимы работы Guardant API | |
Private Read | Прочитать данные из памяти электронного ключа | |
Private Write | Записать данные в память электронного ключа | |
Не нужен | Переместить указатель на текущий адрес памяти электронного ключа | |
Private master | Инициализировать память электронного ключа | |
Private master | Установить аппаратные запреты чтения/записи и записать количество аппаратных алгоритмов и защищенных ячеек |
Монопольная работа с ключом:
Функции(методы) для монопольной работы с ключом позволяют заблокировать электронный ключ на время выполнения операций, который требуют вышеупомянутого режима работы с ним, а также разблокировать ключ после совершения операций связанных с этим режимом.
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Read | Заблокировать ключ на время выполнения операций, требующих монопольного режима работы с ключом | |
Private Read | Разблокировать электронный ключ |
Поиск и проверка наличия ключа:
Функции(методы) данного раздела позволяют найти электронный ключ, который удовлетворяет критериям поиска. Если такой ключ имеется то на нем можно зарегистрироваться.
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Public и Read обязательно, остальные по необходимости | Поместить коды доступа в защищенный контейнер | |
Не нужен | Установить режимы поиска электронных ключей | |
Private Read | Найти электронный ключ, удовлетворяющий критериям поиска | |
Private Read | Зарегистрироваться на электронном ключе | |
Private Read | Снять регистрацию с электронного ключа | |
Private Read | Проверить наличие электронного ключа |
Работа с аппаратными и программно-реализованными алгоритмами:
Функции(методы) работы этого раздела позволяют преобразовывать, кодировать и декодировать данные с помощью аппаратно- или программно-реализованных алгоритмов.
Они позволяют вычислить и проверить ЭЦП массива данных.
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Read | Преобразовать данные аппаратно- или программно-реализованным алгоритмом | |
Private Read | Закодировать/раскодировать данные аппаратноили программно-реализованным алгоритмом | |
Private Read | Расширенный вариант GrdHash | |
Private Read | Вычислить ЭЦП массива данных | |
Не нужен | Проверить ЭЦП массива данных | |
не нужен | Вычислить CRC |
Функции(методы) Guardant Code:
Технология Загружаемый Код может быть реализована не только при помощи утилит, входящих в Комплект разработчика. При желании разработчики могут встраивать поддержку этой технологии непосредственно в свои приложения, используя набор предназначенных для этой цели функций:
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Read | Загружает код приложения в формате GCEXE во flash- память ключа | |
Private Read | Исполняет код, предварительно загруженный в ключ | |
Private Read | Возвращает информацию из дескриптора загруженного кода | |
Private Read | Задает режим работы ключей Guardant Code/Code Time через драйвер Guardant или в HID режиме |
Функции(методы) для ключей Time:
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Master | Установить время микросхемы таймера ключа | |
Private Read | Получить время таймера ключа | |
Private Read | Получить оставшееся время работы алгоритма | |
Не нужен | Заполнить поля структуры TgrdSystemTime | |
Не нужен | Получить значение полей структуры TgrdSystemTime |
Функции(методы) Guardant API для работы с Trusted Remote Update
Технология удаленного обновления Trusted Remote Update может быть реализована не только при помощи утилит, входящих в Комплект разработчика. При желании разработчики могут встраивать поддержку этой технологии непосредственно в свои приложения, используя набор предназначенных для этой цели функций:
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Master | Инициализировать память электронного ключа и записать секретный ключ TRU | |
Private Read | Сгенерировать число-вопрос | |
Private Read | Расширенная версия GrdTRU_GenerateQuestion | |
Private Read | Декодировать и проверить подлинность числа-вопроса | |
Private Read | Расширенная версия GrdTRU_DecryptQuestion | |
Не нужен | Установить параметры числа-ответа | |
Private Read | Сгенерировать и кодировать число-ответ | |
Private Read | Расширенная версия GrdTRU_EncryptAnswer | |
Private Read | Записать число-ответ в ключ Guardant |
Функции(методы) для удаленного обновления ключей Time:
Функции, реализующие технологию Trusted Remote Update для ключей с часами реального времени (Guardant Time, Guardant Time Net, Guardant Code Time) имеют некоторые отличия от своих аналогов для обычных ключей,
и поэтому выделяются в особую подгруппу:
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Read | Сгенерировать зашифрованное число-вопрос | |
Private Read | Расширенная версия GrdTRU_GenerateQuestionTime | |
Private Read | Расшифровать и проверить подлинностьчисла-вопроса | |
Private Read | Расширенная версия GrdTRU_DecryptQuestionTime |
Функции(методы) Guardant API для работы с защищенными ячейками
Для работы с защищенными ячейками существуют специальные функции Guardant API:
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Read и пароль на данную операцию, если он задан в ключе | Активировать алгоритм / защищенную ячейку | |
Private Read и пароль на данную операцию, если он задан в ключе | Деактивировать аппаратный алгоритмили защищенную ячейку | |
Private Read и пароль на данную операцию, если он задан в ключе | Прочитать данные из защищенной ячейки | |
Private Read и пароль, на данную операцию, если он задан в ключе | Обновить данные в защищенной ячейке | |
Private Read | Получить значение счетчика запусков алгоритма |
Устаревшие функции (методы):
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Read+ PrivateWrite | Декрементировать счетчик GP | |
Private Read | Преобразовать данные аппаратно- или программно-реализованным алгоритмом | |
Private Read | Закодировать/раскодировать данные аппаратноили программно-реализованным алгоритмом | |
Private Read | Вычислить значение хэш-функции программноили аппаратно-реализованным алгоритмом | |
PrivateRead | Инициализировать пароль быстрого взаимообратного преобразования | |
не нужен | Закодировать данные быстрым взаимообратнымпреобразованием | |
не нужен | Раскодировать данные быстрым взаимообратнымпреобразованием |
Функции внутренннего Guardant Code API
Технология Guardant Code API позволяет использовать сервисы микропрограммы ключа серии Code, вызывая их загружаемого кода (по аналогии, как операционная система предоставляет свои сервисы пользовательской программе посредством API). При желании разработчики могут встраивать поддержку этой технологии непосредственно в свои приложения, используя набор предназначенных для этой цели функций:
Название функции | Код доступа | Краткое описание |
---|---|---|
- | Считать данные из памяти ключа | |
- | Записать данные в память ключа | |
- | Считать данные защищенной ячейки | |
- | Изменить данные защищенной ячейки или определителя алгоритма | |
- | Получить время таймера ключа | |
- | Получить оставшееся время работы алгоритма | |
- | Получить значение счетчика запусков алгоритма | |
- | Получить код последней ошибки | |
- | Выполнить тест часов реального времени - RTC | |
- | Включить светодиод | |
- | Выключить светодиод | |
- | Завершить выполнение загруженного кода | |
- | Зашифровать/расшифровать блок данных | |
- | Вычислить ЭЦП массива данных | |
- | Проверить ЭЦП массива данных | |
- | Выполнить загружаемый код из другого участка загружаемого кода | |
- | Создать пару ключей | |
- | Вычислить хэш-функцию блока данных | |
- | Сгенерировать случайное число | |
- | Установить максимально разрешенное время работы загружаемого кода | |
- | Запросить информацию из дескриптора загружаемого кода |
Функции Guardant API для управления драйверами
Для того чтобы инсталлировать, деинсталлировать и настраивать драйверы Guardant из собственных приложений можно использовать функции управления драйверами, которые реализованы в виде динамически загружаемой библиотеки.
Название функции | Краткое описание |
---|---|
Инсталлировать драйверы Guardant | |
Деинсталлировать драйверы Guardant | |
Проверить наличие драйверов Guardant в системе | |
Получить десятичное значение версии установленного драйвера Guardant | |
Устаревш. Получить версию драйверов Guardant, установленных в системе | |
Установить режимы использования порта | |
Получить текущие установленные режимы использования порта | |
Установить значение таймаута для LPT порта | |
Получить текущее установленное значение таймаута для LPT порта | |
Установить параметры работы с LPT портом | |
Получить текущие установленные параметры работы с LPT портом | |
Установить параметры работы с LPT портом по умолчанию | |
Получить системную информацию о конфигурации LPT и USB-портов |