Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Composition Setup
 

Функция GrdEnCode производит закодирование блока (метод) GrdEnCode кодирует блок данных быстрым взаимообратным преобразованием.

Функция  GrdEnCode была предназначена Функция(или метод)  GrdEnCode были предназначены для работы с устаревшими ключами Guardant Stealth. Данная функция реализована (или метод) реализованы исключительно в целях совместимости, и использование ее их в современных приложениях не рекомендуется. Вместо GrdEnCode рекомендуется использовать функцию(метод) GrdCrypt.

 

Входные параметрыВыходные параметры
Deck of Cards
id001
Wiki Markup
{dojo-tabs:theme=tundra|id=1} {dojo-tab:title=C|selected=true} *C*
Card
defaulttrue
labelC
Code Block
languagecpp
int GRD_API GrdEnCode(	
  DWORD dwCnvType,
  void *pKeyBuf,
  void *pData,
  DWORD dwLng
);	
{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}
Expand
title
Параметры функции

dwCnvType

метод быстрого взаимообратного преобразования. Задается одним из флагов GrdAT_XXX. Должен быть эквивалентен методу, заданному функцией GrdCodeInit

GrdAT_Algo0

Базовый метод. Кодирование выполняется блоками по 32 байта. Этот метод лучше всего использовать для преобразования нестроковых данных. Важная особенность метода: если закодировать большой объем памяти (или файл) участками, то декодирование нужно будет обязательно делать точно теми же участками, или же размер участков должен быть кратен 32 байтам. Функции GrdEnCode и GrdDeCode не изменяют пароль.

GrdAT_AlgoASCII

Символьный метод. Кодирование выполняется блоками по 32 байта. Этот метод хорош для кодирования строковых данных. Например, если вы хотите закодировать название поля базы данных, указанное в исходном тексте программы, то в некоторых языках программирования будет проблематично создать строки с несимвольными значениями. Символьный метод кодирует строки так, чтобы в них не было неотображаемых символов. Функции GrdEnCode и GrdDeCode

не

 не изменяют пароль.

GrdAT_AlgoFile

Файловый метод. Кодирование выполняется блоками произвольной длины, поэтому такой метод подходит для кодирования файлов. Кодирование этим методом файла блоками меньше 32 байт неэффективно. Функции GrdEnCode и GrdDeCode

в

 в этом методе преобразования изменяют пароль, поэтому последовательность использования функции GrdDeCode

должна

 должна совпадать с последовательностью использования функции GrdEnCode.

pKeyBuf

буфер, содержащий преобразованный пароль

pData

буфер с данными для закодирования

dwLng

объем (в байтах) данных для закодирования

Expand
title

 

 
Возвращаемое значение функции

Возможные ошибки

GrdE_InvalidCnvType

Указан неверный метод преобразования

 

Стандартный набор ошибок

Expand
titleОписание

Функция GrdEnCode позволяет закодировать информацию, используя быстрое взаимообратное преобразование. При этом функция не обращается к ключу - преобразование полностью производится компьютером. За счет этого и достигается высокая скорость преобразования.

Параметр pKeyBuf содержит пароль, преобразованный ранее функцией GrdCodeInit. С его помощью и будет производиться кодирование данных. Сами данные должны быть расположены по адресу, заданному параметром pData, длина кодируемой последовательности (в байтах) задается параметром dwLng. Кодирование производится по методу, указанному в параметре wCnvType. Выбирая тот или иной метод преобразования необходимо учитывать его особенности и ограничения. Метод кодирования должен соответствовать заданному при вызове функции GrdCodeInit.

При успешном завершении по адресу, указанному в pData, будут помещены закодированные данные. В этом случае функция вернет GrdE_OK.

Card
labelC#
Code Block
languagec#
public static GrdE GrdEnCode(GrdAT cnvType, byte[] key, byte[] data)

Expand
title
Параметры метода

cnvType [in] 

Тип: GrdAT

Метод быстрого взаимнообратного преобразования. Задается одним из флагов GrdAT.

key [in] 

Тип: byte [ ]

Буфер, который содержит преобразованный пароль.

data [in]

Тип: byte [ ]

Буфер с данными для кодирования.

Expand
titleВозвращаемое значение метода

Возможные ошибки

GrdE.InvalidCnvType

Указан неверный метод преобразования

 

Набор ошибок Guardant API


Expand
titleОписание

Метод GrdEnCode позволяет закодировать информацию, используя быстрое взаимообратное преобразование. При этом метод не обращается к ключу - преобразование полностью производится компьютером. За счет этого и достигается высокая скорость преобразования.

Параметр key содержит пароль, преобразованный ранее методом GrdCodeInit. С его помощью и будет производиться кодирование данных. Сами данные должны быть расположены по адресу, заданному параметром data. Кодирование производится по методу, указанному в параметре cnvType. Выбирая тот или иной метод преобразования необходимо учитывать его особенности и ограничения. Метод кодирования должен соответствовать заданному при вызове метода GrdCodeInit.

При успешном завершении по адресу, указанному в data, будут помещены закодированные данные. В этом случае метод вернет GrdE.OK.

Card
labelJava
Code Block
languagejava
public static GrdE GrdEnCode(int cnvType, byte[] key, byte[] data)
Expand
titleПараметры метода

cnvType [in] 

Тип: int

Метод быстрого взаимнообратного преобразования. Задается одним из флагов GrdAT.

key [in] 

Тип: byte [ ]

Буфер, который содержит преобразованный пароль.

data [in]

Тип: byte [ ]

Буфер с данными для кодирования.

Expand
titleВозвращаемое значение метода

Возможные ошибки

GrdE.InvalidCnvType

Указан неверный метод преобразования

 

Набор ошибок Guardant API


Expand
titleОписание

Метод GrdEnCode позволяет закодировать информацию, используя быстрое взаимообратное преобразование. При этом метод не обращается к ключу - преобразование полностью производится компьютером. За счет этого и достигается высокая скорость преобразования.

Параметр key содержит пароль, преобразованный ранее методом GrdCodeInit. С его помощью и будет производиться кодирование данных. Сами данные должны быть расположены по адресу, заданному параметром data. Кодирование производится по методу, указанному в параметре cnvType. Выбирая тот или иной метод преобразования необходимо учитывать его особенности и ограничения. Метод кодирования должен соответствовать заданному при вызове метода GrdCodeInit.

При успешном завершении по адресу, указанному в data, будут помещены закодированные данные. В этом случае метод вернет GrdE.OK.

Пример

Пример для используемого средства разработки см. в директории:

"\%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\"