Функции Guardant API общего назначения
Функции общего назначения позволяют осуществлять сервисные операции, связанные с инициализацией, настройкой и деинициализацией Guardant API, а также выполнять основные операции с электронными ключами:
- Искать электронный ключ, удовлетворяющий заданным условиям поиска
- Инициализировать память ключа
- Читать данные из памяти ключа
- Записывать данные в память ключа
- Устанавливать запреты на чтение/запись памяти ключа
- Преобразовывать информацию при помощи аппаратных алгоритмов ключа
Перечень функций Guardant API общего назначения:
Название функции | Код доступа | Краткое описание |
---|---|---|
GrdStartup | Не нужен | Инициализировать Guardant API |
GrdStartupEx | Не нужен | Инициализировать GrdAPI + задать путь к GnClient.ini |
GrdCleanup | Не нужен | Деинициализировать Guardant API |
GrdGetLastError | Не нужен | Получить информацию о последней ошибкеиз защищенного контейнера |
GrdFormatMessage | Не нужен | Преобразовать код ошибки в текстовое сообщение |
GrdGetInfo | Не нужен | Получить информацию из защищенного контейнера |
GrdIsValidHandle | Не нужен | Проверить валидность хэндла защищенногоконтейнера |
GrdCreateHandle | Не нужен | Создать хэндл защищенного контейнера |
GrdCloseHandle | Не нужен | Закрыть хэндл защищенного контейнера |
GrdSetAccessCodes | Public и Read обязательно, остальные по необходимости | Поместить коды доступа в защищенный контейнер |
GrdSetWorkMode | Не нужен | Установить режимы работы Guardant API |
GrdSetFindMode | Не нужен | Установить режимы поиска электронных ключей |
GrdFind | Private Read | Найти электронный ключ, удовлетворяющий критериям поиска |
GrdLogin | Private Read | Зарегистрироваться на электронном ключе |
GrdLogout | Private Read | Снять регистрацию с электронного ключа |
GrdLock | Private Read | Заблокировать ключ на время выполнения операций, требующих монопольного режима работы с ключом |
GrdUnlock | Private Read | Разблокировать электронный ключ |
GrdCheck | Private Read | Проверить наличие электронного ключа |
GrdDecGP | Private Read+ PrivateWrite | Декрементировать счетчик GP |
GrdRead | Private Read | Прочитать данные из памяти электронного ключа |
GrdWrite | Private Write | Записать данные в память электронного ключа |
GrdSign | Private Read | Вычислить ЭЦП массива данных |
GrdVerifySign | Не нужен | Проверить ЭЦП массива данных |
GrdSeek | Не нужен | Переместить указатель на текущий адрес памятиэлектронного ключа |
GrdInit | Private master | Инициализировать память электронного ключа |
GrdProtect | Private master | Установить аппаратные запреты чтения/записи и записать количество аппаратных алгоритмов и защищенных ячеек |
GrdTransform | Private Read | Преобразовать данные аппаратно- или программно-реализованным алгоритмом |
GrdTransformEx | Private Read | Преобразовать данные аппаратно- или программно-реализованным алгоритмом |
GrdCrypt | Private Read | Закодировать/раскодировать данные аппаратноили программно-реализованным алгоритмом |
GrdCryptEx | Private Read | Закодировать/раскодировать данные аппаратноили программно-реализованным алгоритмом |
GrdHash | Private Read | Вычислить значение хэш-функции программноили аппаратно-реализованным алгоритмом |
GrdHashEx | Private Read | Расширенный вариант GrdHash |
GrdCodeInit | PrivateRead | Инициализировать пароль быстрого взаимообратного преобразования |
GrdEnCode | не нужен | Закодировать данные быстрым взаимообратнымпреобразованием |
GrdDeCode | не нужен | Раскодировать данные быстрым взаимообратнымпреобразованием |
GrdCRC | не нужен | Вычислить CRC |
Функции(методы) общего назначения:
Функции(методы) общего назначения позволяют осуществлять сервисные операции, связанные с инициализацией и деинициализацией 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:
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
| Загружает код приложения в формате GCEXE во flash- память ключа | |
| Исполняет код, предварительно загруженный в ключ | |
| Возвращает информацию из дескриптора загруженного кода | |
| Задает режим работы ключей Guardant Code/Code Time через драйвер Guardant или в HID режиме |
Функции(методы) для ключей Time:
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Master | Установить время микросхемы таймера ключа | |
Private Read | Получить время таймера ключа | |
Private Read | Получить оставшееся время работы алгоритма | |
Не нужен | Заполнить поля структуры TgrdSystemTime | |
Не нужен | Получить значение полей структуры TgrdSystemTime |
Функции(методы) для удаленного обновления ключей Time:
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Read | Сгенерировать зашифрованное число-вопрос | |
Private Read | Расширенная версия GrdTRU_GenerateQuestionTime | |
Private Read | Расшифровать и проверить подлинностьчисла-вопроса | |
Private Read | Расширенная версия GrdTRU_DecryptQuestionTime |
Устаревшие функции (методы):
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Read+ PrivateWrite | Декрементировать счетчик GP | |
Private Read | Преобразовать данные аппаратно- или программно-реализованным алгоритмом | |
Private Read | Закодировать/раскодировать данные аппаратноили программно-реализованным алгоритмом | |
Private Read | Вычислить значение хэш-функции программноили аппаратно-реализованным алгоритмом | |
PrivateRead | Инициализировать пароль быстрого взаимообратного преобразования | |
не нужен | Закодировать данные быстрым взаимообратнымпреобразованием | |
не нужен | Раскодировать данные быстрым взаимообратнымпреобразованием |
Функции(методы) 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 |
Функции(методы) Guardant API для работы с защищенными ячейками
Для работы с защищенными ячейками существуют специальные функции Guardant API:
Название функции(метода) | Код доступа | Краткое описание |
---|---|---|
Private Read и пароль на данную операцию, если он задан в ключе | Активировать алгоритм / защищенную ячейку | |
Private Read и пароль на данную операцию, если он задан в ключе | Деактивировать аппаратный алгоритмили защищенную ячейку | |
Private Read и пароль на данную операцию, если он задан в ключе | Прочитать данные из защищенной ячейки | |
Private Read и пароль, на данную операцию, если он задан в ключе | Обновить данные в защищенной ячейке | |
Private Read | Получить значение счетчика запусков алгоритма |
Функции Guardant API для работы с ключами с RTC
Для работы с ключами, поддерживающими технологию Time, существуют специальные функции Guardant API:
Название функции | Код доступа | Краткое описание |
---|---|---|
GrdSetTime | Private Master | Установить время микросхемы таймера ключа |
GrdGetTime | Private Read | Получить время таймера ключа |
GrdPI_GetTimeLimit | Private Read | Получить оставшееся время работы алгоритма |
GrdMakeSystemTime | Не нужен | Заполнить поля структуры TgrdSystemTime |
GrdSplitSystemTime | Не нужен | Получить значение полей структуры TgrdSystemTime |
GrdTRU_ GenerateQuestionTime | Private Read | Сгенерировать зашифрованное число-вопрос |
GrdTRU_GenerateQuestionTimeEx | Private Read | Расширенная версия GrdTRU_GenerateQuestionTime |
GrdTRU_ DecryptQuestionTime | Private Read | Расшифровать и проверить подлинностьчисла-вопроса |
GrdTRU_DecryptQuestionTimeEx | Private Read | Расширенная версия GrdTRU_ DecryptQuestionTime |
Функции Guardant API для работы с Trusted Remote Update
Технология удаленного обновления Trusted Remote Update может быть реализована не только при помощи утилит, входящих в Комплект разработчика. При желании разработчики могут встраивать поддержку этой технологии непосредственно в свои приложения, используя набор предназначенных для этой цели функций:
Название функции | Код доступа | Краткое описание |
---|---|---|
GrdTRU_SetKey | Private Master | Инициализировать память электронного ключа и записать секретный ключ TRU |
GrdTRU_GenerateQuestion | Private Read | Сгенерировать число-вопрос |
GrdTRU_GenerateQuestionEx | Private Read | Расширенная версия GrdTRU_GenerateQuestion |
GrdTRU_DecryptQuestion | Private Read | Декодировать и проверить подлинность числа-вопроса |
GrdTRU_DecryptQuestionEx | Private Read | Расширенная версия GrdTRU_DecryptQuestion |
GrdTRU_SetAnswerProperties | Не нужен | Установить параметры числа-ответа |
GrdTRU_EncryptAnswer | Private Read | Сгенерировать и кодировать число-ответ |
GrdTRU_EncryptAnswerEx | Private Read | Расширенная версия GrdTRU_EncryptAnswer |
GrdTRU_ApplyAnswer | Private Read | Записать число-ответ в ключ Guardant |
Функции Guardant API для работы с ключами Guardant Code
См. Сервисные функции для работы с загружаемым кодом.
Внутреннее Guardant API Code для загружаемого кода
См. Guardant Code API.
Функции Guardant API для управления драйверами
Для того чтобы инсталлировать, деинсталлировать и настраивать драйверы Guardant из собственных приложений можно использовать функции управления драйверами, которые реализованы в виде динамически загружаемой библиотеки.
Название функции | Краткое описание |
---|---|
GrdDrvInstall | Инсталлировать драйверы Guardant |
GrdDrvUnInstall | Деинсталлировать драйверы Guardant |
GrdDrvIsInstalled | Проверить наличие драйверов Guardant в системе |
GrdDrvGetVersion | Получить версию драйверов Guardant,установленных в системе |
GrdDrvSetPortUseState | Установить режимы использования порта |
GrdDrvGetPortUseState | Получить текущие установленныережимы использования порта |
GrdDrvSetPrnPortTimeOut | Установить значение таймаута для LPT порта |
GrdDrvGetPrnPortTimeOut | Получить текущее установленное значение таймаутадля LPT порта |
GrdDrvSetPortProperties | Установить параметры работы с LPT портом |
GrdDrvGetPortProperties | Получить текущие установленные параметры работыс LPT портом |
GrdDrvSetPortPropertiesAuto | Установить параметры работы с LPT портом по умолчанию |
GrdDrvGetSystemInfo | Получить системную информацию о конфигурацииLPT и USB-портов |