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
Card
defaulttrue
labelC
Code Block
languagecpp
int GRD_API GrdEnCode(	
  DWORD dwCnvType,
  void *pKeyBuf,
  void *pData,
  DWORD dwLng
);	
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

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

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

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

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] 

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

 

Card
labelJava

Тип: GrdAT

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

key [in] 

Тип: byte [ ]

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

data [in]

Тип: byte [ ]

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

Code Block
languagejava
 

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

 

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

 

Wiki Markup

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

GrdE.InvalidCnvType

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

 

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

{dojo-tabs:theme=tundra|id=1} {dojo-tab:title=C|selected=true} *C* 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

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

Описание

Метод 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Возвращаемое значение метода

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

Expand
titleВыходные параметры

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

GrdE_

InvalidCnvType

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

 
Стандартный набор


Expand
titleОписание
Функция

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

функция

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

Параметр

pKeyBuf

key содержит пароль, преобразованный ранее

функцией

методом GrdCodeInit. С его помощью и будет производиться кодирование данных. Сами данные должны быть расположены по адресу, заданному параметром

pData, длина кодируемой последовательности (в байтах) задается параметром dwLng

data. Кодирование производится по методу, указанному в параметре

wCnvType

cnvType. Выбирая тот или иной метод преобразования необходимо учитывать его особенности и ограничения. Метод кодирования должен соответствовать заданному при вызове

функции

метода GrdCodeInit.

При успешном завершении по адресу, указанному в

pData

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

функция

метод вернет GrdE

_OK.
Expand
titleПример

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

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

.OK.