You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Функция GcaPI_GetCounter возвращает значение счетчика запусков алгоритма или защищённой ячейки.

    int  GcaPI_GetCounter(
    HANDLE	hGrd,			
    DWORD	dwItemNum,		
    DWORD	*pdwCounter,		
    void	*pReserved		
    );	

    hGrd

    не используется

    dwItemNum

    числовое имя аппаратного алгоритма/защищенной ячейки

    pdwCounter

    указатель на буфер для передачи значения счетчика

    pReserved

    зарезервировано, должно быть равно NULL

     


     

    GrdE_OK

    нет ошибок

    GrdE_NeedInitialization

    требуется инициализация API (вызов GrdStartup)

    GrdE_InvalidHandle

    недействительный хэндл

    GrdE_NoService

    для алгоритма/ячейки сервис не предусмотрен

    GrdE_InvalidArg

    недопустимый параметр при вызове функции

    Функция GcaPI_Update позволяет менять определитель аппаратного алгоритма или данные защищенной ячейки (rs_K[]). При этом определитель аппаратного алгоритма можно менять только целиком. При попытке изменить часть определителя возвращается код ошибки GrdE_InvalidArg. В защищенной ячейке можно менять любой участок данных.

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

    Если алгоритм или ячейка находятся в активном состоянии (Active), функция возвращает GrdE_OK и производится обновление данных, начиная со смещения в определителе ячейки dwAddr. При этом данные из буфера pData длиной dwLng в зависимости от метода обновления dwMethod либо замещают старые данные, либо складываются со старыми данными по модулю 2.

    Если смещение dwAddr задано слишком большим, возвращается ошибка GrdE_Overbound.

    Если сумма dwAddr+dwLng выходит за доступные для чтения пределы, данных записывается ровно столько, сколько можно записать. При этом функция возвращает GrdE_OK  и никаких других кодов ошибки не генерируется.

    Функции GcaPI_Read и GcaPI_Update игнорируют пароль для доступа к ячейке и счетчик ошибок ввода пароля.

     

     

    Функция GcaPI_GetCounter возвращает значение счетчика запусков алгоритма или защищённой ячейки.

     

    C
    int GcaPI_GetCounter(
    HANDLE hGrd,
    DWORD dwItemNum,
    DWORD *pdwCounter,
    void *pReserved
    );

    C#

    Visual Basic

    Visual C++

    hGrd

    не используется

    dwItemNum

    числовое имя аппаратного алгоритма/защищенной ячейки

    pdwCounter

    указатель на буфер для передачи значения счетчика

    pReserved

    зарезервировано, должно быть равно NULL

    GrdE_OK

    нет ошибок

    GrdE_NeedInitialization

    требуется инициализация API (вызов GrdStartup)

    GrdE_InvalidHandle

    недействительный хэндл

    GrdE_NoService

    для алгоритма/ячейки сервис не предусмотрен

    GrdE_InvalidArg

    недопустимый параметр при вызове функции

    Функция GcaPI_GetCounter возвращает значение счетчика запусков алгоритма или защищённой ячейки. Числовое имя алгоритма или защищённой ячейки задается параметром dwItemNum. Если счетчик запусков алгоритма не используется (флаг nsafl_GP_dec либо nsafl_GP поля LoFlags дескриптора алгоритма), возвращается ошибка GrdE_NoService.

    См. директорию:

    "%Program Files%\Guardant\Guardant 6\%PublicCode%\Samples\ARM\"

    • No labels