Card |
---|
| Code Block |
---|
| int GRD_API GrdProtect(
HANDLE hGrd,
DWORD dwWrProt,
DWORD dwRdProt,
DWORD dwNumFunc,
DWORD dwTableLMS,
DWORD dwGlobalFlags,
void *pReserved
); |
Expand |
---|
| Для ключей Guardant Sign/Time | hGrd | хэндл, для которого будет выполнена операция | dwWrProt | SAM-адрес первого байта, доступного для записи (в байтах) | dwRdProt | SAM-адрес первого байта, доступного для чтения (в байтах) | dwNumFunc | количество аппаратных алгоритмов и защищенных ячеек (Protected Item), дескрипторы которых записаны в память ключа | dwTableLMS | Номер защищенной ячейки, в которой хранится таблица лицензий LMS. Для локальных ключей не используется (значение должно быть равно 0) | dwGlobalFlags | Описание флагов dwGlobalFlags: GrdGF_ProtectTime | 1 | Блокировка вызова функции GrdSetTime. Автоматически выставляется при программировании ключа из GrdUtil. Если данный флаг был выставлен, то изменить время микросхемы таймера невозможно без перезаписи маски | GrdGF_HID | 2 | Ключ работает в HID-режиме | GrdGF_OnlyOneSessKey | 4 | Единственный сессионный ключ для Guardant API. При установленном флаге будет работоспособна только одна копия приложения, защищенного Guardant API | GrdGF_2ndSessKey | 8 | Единственный сессионный ключ для автозащиты. При установленном флаге будет работоспособна только одна копия приложения, накрытого автозащитой |
| pReserved | зарезервировано. Значение должно быть равно NULL |
Для ключей Guardant Stealth III/Net III | hGrd | хэндл, для которого будет выполнена операция | dwWrProt | SAM-адрес первого байта, доступного для записи (в байтах) | dwRdProt | SAM-адрес первого байта, доступного для чтения (в байтах) | dwNumFunc | количество аппаратных алгоритмов и защищенных ячеек (Protected Item), дескрипторы которых записаны в память ключа | dwTableLMS | Номер защищенной ячейки, в которой хранится таблица лицензий LMS. Для локальных ключей не используется (значение должно быть равно 0) | dwGlobalFlags | зарезервировано. Значение должно быть равно 0 | pReserved | зарезервировано. Значение должно быть равно NULL |
Для ключей Guardant Stealth II/Net II и Guardant Stealth /Net | hGrd | хэндл, через который будет выполнена данная операция | dwWrProt | SAM-адрес первого байта, доступного для записи (в байтах). Адрес должен быть четным, в противном случае возвращается ошибка GrdE_InvalidArg | dwRdProt | SAM-адрес первого байта, доступного для чтения (в байтах). Адрес должен быть четным, в противном случае возвращается ошибка GrdE_InvalidArg | dwNumFunc | количество аппаратных алгоритмов, дескрипторы которых записаны в память ключа | dwTableLMS | Для Guardant Net II: SAM-адрес в двухбайтовых словах первого байта таблицы лицензий LMS. Если LMS не используется или ключ Guardant Stealth II, значение должно быть равно 0 | dwGlobalFlags | зарезервировано. Значение должно быть равно 0 | pReserved | зарезервировано. Значение должно быть равно NULL |
Для ключей Guardant Fidus | hGrd | хэндл, для которого будет выполнена операция | dwWrProt | SAM-адрес первого байта, доступного для записи (в байтах). Адрес должен быть четным, в противном случае возвращается ошибка GrdE_InvalidArg | dwRdProt | SAM-адрес первого байта, доступного для чтения (в байтах). Адрес должен быть четным, в противном случае возвращается ошибка GrdE_InvalidArg | dwNumFunc | параметр игнорируется, должен быть равен 0 | dwTableLMS | параметр игнорируется, должен быть равен 0 | dwGlobalFlags | зарезервировано. Значение должно быть равно 0 | pReserved | зарезервировано. Значение должно быть равно NULL |
|
Expand |
---|
title | Возвращаемое значение функции |
---|
| GrdE_VerifyError | Ошибка верификации после нескольких повторов; запись прекращена | GrdE_CRCErrorWrite | Ошибка CRC; запись прекращена |
|
|
Card |
---|
| Code Block |
---|
| public static GrdE GrdProtect(Handle grdHandle, uint wrProt, uint rdProt, uint numFunc, uint tableLMS)
public static GrdE GrdProtect(Handle grdHandle, uint wrProt, uint rdProt, uint numFunc, uint tableLMS, uint globalFlags)
|
Expand |
---|
| grdHandle [in] Тип: Handle Хэндл, через который будет выполнена данная операция wrProt [in] Тип: uint SAM-адрес первого байта, который доступен для записи (в байтах). rdProt [in] Тип: uint SAM-адрес первого байта, который доступен для чтения (в байтах). numFunc [in] Тип: uint Количество аппаратных алгоритмов и защищенных ячеек, дескрипторы которых записаны в память ключа. tableLMS [in] Тип: uint Номер защищенной ячейки, в которой хранится таблица лицензий LMS. globalFlags [in] Тип: uint Флаги. |
Expand |
---|
title | Возвращаемое значение метода |
---|
| |
|
Card |
---|
| Code Block |
---|
| public static GrdE GrdProtect(Handle grdHandle, int writeProt, int readProt, int numFunc, int tableLMS)
public static GrdE GrdProtect(Handle grdHandle, int writeProt, int readProt, int numFunc, int tableLMS, GrdGF globalFlags) |
Expand |
---|
title | Возвращаемое значение метода |
---|
| |
|
|