Page tree
Skip to end of metadata
Go to start of metadata

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

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

    int GRD_API GrdEnCode(	
      DWORD dwCnvType,
      void *pKeyBuf,
      void *pData,
      DWORD dwLng
    );	
     Параметры функции

    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

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

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

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

    GrdE_InvalidCnvType

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

     

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

     Описание

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

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

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

    public static GrdE GrdEnCode(GrdAT cnvType, byte[] key, byte[] data)
    
    
     Параметры метода

    cnvType [in] 

    Тип: GrdAT

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

    key [in] 

    Тип: byte [ ]

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

    data [in]

    Тип: byte [ ]

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

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

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

    GrdE.InvalidCnvType

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

     

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


     Описание

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

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

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

    public static GrdE GrdEnCode(int cnvType, byte[] key, byte[] data)
     Параметры метода

    cnvType [in] 

    Тип: int

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

    key [in] 

    Тип: byte [ ]

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

    data [in]

    Тип: byte [ ]

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

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

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

    GrdE.InvalidCnvType

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

     

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


     Описание

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

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

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

    • No labels