Функция GrdSign вычисляет электронную цифровую подпись блока байт при помощи аппаратного алгоритма ECC160.
{dojo-tabs:theme=tundra|id=1} {dojo-tab:title=C|selected=true} *C* int GRD_API GrdSign( HANDLE hGrd, DWORD dwAlgoNum, DWORD dwDataLng, void *pData, DWORD dwSignResultLng, void *pSignResult, void *pReserved ); {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} |
|
|
Функция GrdSign позволяет вычислять цифровую подпись массива данных при помощи аппаратного алгоритма типа ECC. Вычисление цифровой подписи производится алгоритмом с числовым именем, заданным в параметре dwAlgoNum. Этот алгоритм предварительно должен быть создан. Если в дескрипторе алгоритма установлен флаг nsafl_GP_dec (уменьшение счетчика), вычитание счетчика GP происходит при каждом вызове GrdSign. Длина массива данных (в байтах) pData задается параметром dwDataLng и зависит от типа алгоритма. Длина возвращаемой цифровой подписи (в байтах) pSignResult также зависит от типа алгоритма и задаётся параметром dwSignResultLng. Для алгоритма ECC160 длина массива данных и длина возвращаемой цифровой подписи должны быть GrdECC160_MESSAGE_SIZE (20 байт) и GrdECC160_DIGEST_SIZE (40 байт) соответственно. |
Пример для используемого средства разработки см. в директории: "\%Program Files%\Guardant\Guardant 6\%PublicCode%\Samples\x86\Win32\General Guardant API\" |