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

kmModel

Содержит код модели ключа. В настоящее время моделям ключей присвоены следующие коды (см. файл GrdAPI.H)

Имя константы

Значение

Модель ключа

Интерфейс

GrdDM_GS1L

0

Guardant Stealth

LPT

GrdDM_GS1U

1

Guardant Stealth

USB

GrdDM_GF1L

2

Guardant Fidus

LPT

GrdDM_GS2L

3

Guardant Stealth II

LPT

GrdDM_GS2U

4

Guardant Stealth II

USB

GrdDM_GS3U

5

Guardant Stealth III

USB

GrdDM_GS3SU

7

Guardant Sign/Time

USB

GrdDM_GS3SU

8

Guardant Code

USB

kmMemSize

Поле содержит информацию об объеме памяти ключа. Значение поля соответствует степени, в которую нужно возвести число 2, чтобы получить объем памяти ключа в байтах

kmProgVer

Поле содержит версию программы микроконтроллера ключа. Это поле может быть использовано для идентификации ключей с заказными микропрограммами

kmProtocol

Поле содержит версию протокола обмена с ключом. Для внутреннего применения. Используется утилитами диагностики

kmClientVer

Поле содержит версию ядра нижнего уровня. Значение 0x104 соответствует версии 1.4. Для внутреннего применения. Используется утилитами диагностики

kmUserAddr

Поле содержит SAM-адрес начала пользовательской (UAM) памяти в двухбайтовых словах

kmAlgoAddr

Поле содержит начальный адрес таблицы размещения аппаратных алгоритмов в двухбайтовых словах

kmPrnPort

Поле содержит адрес параллельного порта, к которому подсоединен ключ. Для USB ключей Guardant значение этого поля равно 0

kmWriteProtectS3

Содержит адрес (в режиме SAM) первого байта, который доступен для записи. Число 0 означает отсутствие запретов на запись. Запрет может быть установлен только с адреса 44 SAM. Запись в это поле возможна только операцией Protect и только если содержимое поля равно 0. Обнулить содержимое поля можно только операцией Init.

kmReadProtectS3

Содержит адрес (в режиме SAM) первого байта, который доступен для чтения. Число 0 означает отсутствие запретов на чтение. Запрет может быть установлен только с адреса 44 SAM. Запись в это поле возможна только операцией Protect и только если содержимое поля равно 0. Обнулить содержимое поля можно только операцией Init

kmPublicCode

Содержит Общий код ключа в числовом виде (4 байта), однозначно идентифицирующий владельца данного электронного ключа

kmVersion

Содержит аппаратную версию данного ключа. Т.к. ключи Guardant постоянно совершенствуются, приложение может проверять аппаратную версию для выяснения возможностей ключа, с которым оно сейчас работает

kmLANRes

Содержит максимальный LAN-ресурс сетевого ключа Guardant. Сетевой ресурс ключа программируется на стадии производства. В локальных ключах значение этого поля равно нулю

kmType

Индикатор типа ключа. Позволяет программному обеспечению определять конкретный тип ключа. Можно использовать это поле при проверках наличия ключа. Таким образом, существуют следующие флаги типов ключей (см. файл GrdAPI.H)

Имя константы

Значение

Тип ключа

GrdDT_DOS

0x0000

Ключ поддерживает защиту приложений DOS

GrdDT_Win

0x0000

Ключ поддерживает защиту приложений Windows

GrdDT_LAN

0x0001

Ключ поддерживает защиту приложений, созданных для работы в локальных сетях

GrdDT_Time

0x0002

Устаревш. флаг. Не используется в современных ключах. Не имеет отношения к ключам Guardant Time/Code Time

GrdDT_GSII64

0x0008

Ключ содержит алгоритм GSII64: ключи Guardant Stealth II / Net II, Stealth III/ Net III/ Sign / Time

GrdDT_PI

0x0010

Ключ поддерживает защищенные ячейки: ключи Guardant Stealth III/ Net III/ Sign / Time

GrdDT_TRU

0x0020

Ключ поддерживает протокол защищенного удаленного обновления памяти: ключи Guardant Stealth III/ Net III/ Sign / Time

GrdDT_RTC

0x0040

Ключ содержит часы реального времени (RTC): ключи Guardant Time

GrdDT_AES

0x0080

Ключ содержит аппаратный алгоритм AES 128: ключи Guardant Sign / Time

GrdDT_ECC

0x0100

Ключ содержит аппаратный алгоритм ECC 160: ключи Guardant Sign / Time

GrdDT_LoadableCode

0x0400

Ключ поддерживает загружаемый код

kmID

Содержит идентификационный номер (ID) ключа. ID записывается в это поле на стадии производства. Гарантируется, что двух ключей с одинаковыми ID не может быть. Это поле используется в специальном режиме автоматической защиты. Существует возможность настроить свой программный продукт на ID ключа, и тогда он будет работать только с ключом, содержащим этот ID

kmWriteProtect

В ключах Guardant Stealth/Net III это поле должно содержать значение FFh. Запись в это поле возможна только операцией Protect и только если содержимое поля равно 0. Обнулить содержимое поля можно только операцией Init

kmReadProtect

В ключах Guardant Stealth/Net III это поле должно содержать значение FFh. Запись в это поле возможна только операцией Protect и только если содержимое поля равно 0. Обнулить содержимое поля можно только операцией Init

kmAlgoNum

Содержит количество аппаратных алгоритмов и защищенных ячеек, включая таблицу лицензий LMS. Значение в это поле записывается только при выполнении операции Protect. Обнулить содержимое поля можно только операцией Init

kmTableLMS

Содержит номер защищенной ячейки, в которой хранится таблица лицензий LMS. Значение в это поле записывается только при выполнении операции Protect. Обнулить содержимое поля можно только операцией Init







  • No labels