{dojo-tabs:theme=tundra|id=1}
{dojo-tab:title=C|selected=true}
*C*
int GRD_API GrdCodeInit(
HANDLE hGrd,
DWORD dwCnvType,
DWORD dwAddr,
void *pKeyBuf
); |
|
{dojo-tab}
{dojo-tab:title=C#|selected=true}
*C#*
{dojo-tab}
{dojo-tab:title=Visual Basic (Declaration)}
*Visual Basic*
{dojo-tab}
{dojo-tab:title=Visual C++}
*Visual C++*
{dojo-tab}
{dojo-tabs} | Входные параметры | hGrd | хэндл, через который будет выполнена данная операция | dwCnvType | метод быстрого взаимообратного преобразования. Задается одним из флагов GrdAT_XXX GrdAT_Algo0 | Базовый метод. Кодирование выполняется блоками по 32 байта. Этот метод лучше всего использовать для преобразования нестроковых данных. Важная особенность метода: если закодировать большой объем памяти (или файл) участками, то декодирование нужно будет обязательно делать точно теми же участками, или же размер участков должен быть кратен 32 байтам. Функции GrdEnCode и GrdDeCode не изменяют пароль. | GrdAT_AlgoASCII | Символьный метод. Кодирование выполняется блоками по 32 байта. Этот метод хорош для кодирования строковых данных. Например, если вы хотите закодировать название поля базы данных, указанное в исходном тексте программы, то в некоторых языках программирования будет проблематично создать строки с несимвольными значениями. Символьный метод кодирует строки так, чтобы в них не было неотображаемых символов. Функции GrdEnCode и GrdDeCode не изменяют пароль. | GrdAT_AlgoFile | Файловый метод. Кодирование выполняется блоками произвольной длины, поэтому такой метод подходит для кодирования файлов. Кодирование этим методом файла блоками меньше 32 байт неэффективно. Функции GrdEnCode иGrdDeCode |
|
|
| в в этом методе преобразования изменяют пароль, поэтому последовательность использования функции GrdDeCode должна совпадать с последовательностью использования функции GrdEnCode . |
| dwAddr | порядковый номер аппаратного алгоритма, который будет использован для преобразования пароля. | pKeyBuf | буфер, содержащий 32-байтовый пароль для преобразования. |
|
|
| Выходные параметры Возвращаемое значение функции |
| Возможные ошибки GrdE_AlgoNotFound | Алгоритм с указанным номером не существует | GrdE_CRCErrorFunc | Ошибка CRC при выполнении алгоритма. Обычно возникает, если длина преобразуемогопароля не совпадает с длиной ответа алгоритма | GrdE_GPis0 | Счетчик алгоритма достиг нулевого значения. Результат этого алгоритма больше нельзя получить | GrdE_InvalidCnvType | Указан неверный метод преобразования | |
|
|
| Стандартный набор ошибок | Expand |
---|
| Функция GrdCodeInit выполняет подготовительные действия перед проведением быстрого взаимообратного преобразования данных. Этот способ преобразования удобно использовать для обработки больших объемов информации (килобайты и мегабайты). Функция GrdCodeInit позволяет преобразовать пароль для его дальнейшего использования в функциях GrdEnCode и GrdDeCode. Адрес буфера, содержащего преобразуемый пароль, задает параметр pKeyBuf. Длина пароля фиксирована и должна составлять 32 байта. Для преобразования пароля должен использоваться специальный аппаратный алгоритм Stealth I типа Fast; его порядковый номер задается в параметре dwAddr. В случае успешного выполнения функции по адресу, заданному в pKeyBuf, будет помещен преобразованный пароль. Переменная dwCnvType задает метод быстрого взаимообратного преобразования, который будет использоваться в операциях GrdEnCode и GrdDeCode. |
|
Card |
---|
|
Code Block |
---|
| public static GrdE GrdCodeInit(Handle grdHandle, GrdAT cnvType, uint addr, byte[] key)
|
|
| grdHandle [in] Тип: Handle хэндл, через который будет выполнена данная операция. cnvType [in] Тип: GrdAT Метод быстрого взаимнообратного преобразования. Задается одним из флагов GrdAT. addr [in] Тип: uint Порядковый номер аппаратного алгоритма, который будет использован для преобразования пароля. key [in] Тип: byte [ ] Буфер, который содержит пароль для преобразования размером 32 байта. |
Expand |
---|
title | Возвращаемое значение метода |
---|
| Возможные ошибки |
Expand |
---|
| Метод GrdCodeInit выполняет подготовительные действия перед проведением быстрого взаимообратного преобразования данных. Этот способ преобразования удобно использовать для обработки больших объемов информации (килобайты и мегабайты). Метод GrdCodeInit позволяет преобразовать пароль для его дальнейшего использования в функциях GrdEnCode и GrdDeCode. Адрес буфера, содержащего преобразуемый пароль, задает параметр key. Длина пароля фиксирована и должна составлять 32 байта. Для преобразования пароля должен использоваться специальный аппаратный алгоритм Stealth I типа Fast; его порядковый номер задается в параметре addr. В случае успешного выполнения метода по адресу, заданному в key, будет помещен преобразованный пароль. Переменная cnvType задает метод быстрого взаимообратного преобразования, который будет использоваться в операциях GrdEnCode и GrdDeCode. |
|
Card |
---|
| Code Block |
---|
| public static GrdE GrdCodeInit(Handle grdHandle, int cnvType, int addr, byte[] key) |
Expand |
---|
| grdHandle [in] Тип: Handle хэндл, через который будет выполнена данная операция. cnvType [in] Тип: int Метод быстрого взаимнообратного преобразования. Задается одним из флагов GrdAT. addr [in] Тип: int Порядковый номер аппаратного алгоритма, который будет использован для преобразования пароля. key [in] Тип: byte [ ] Буфер, который содержит пароль для преобразования размером 32 байта. |
Expand |
---|
title | Возвращаемое значение метода |
---|
| Возможные ошибки |
Expand |
---|
| Метод GrdCodeInit выполняет подготовительные действия перед проведением быстрого взаимообратного преобразования данных. Этот способ преобразования удобно использовать для обработки больших объемов информации (килобайты и мегабайты). Метод GrdCodeInit позволяет преобразовать пароль для его дальнейшего использования в функциях GrdEnCode и GrdDeCode. Адрес буфера, содержащего преобразуемый пароль, задает параметр key. Длина пароля фиксирована и должна составлять 32 байта. Для преобразования пароля должен использоваться специальный аппаратный алгоритм Stealth I типа Fast; его порядковый номер задается в параметре addr. В случае успешного выполнения метода по адресу, заданному в key, будет помещен преобразованный пароль. Переменная cnvType задает метод быстрого взаимообратного преобразования, который будет использоваться в операциях GrdEnCode и GrdDeCode. |
|
| Пример | Пример для используемого средства разработки см. в директории: "\%Program Files%\Guardant\Guardant 6\%PublicCode%\Samples\x86\Win32\General Guardant API\" или "\%Program Files%\Guardant\Guardant 6\%Public Code%\Samples\x64\Win64\General Guardant API\" |