Функция GccaSign GcaSign вычисляет электронную цифровую подпись блока байт при помощи аппаратного алгоритма ECC160.
Deck of Cards |
---|
|
Card |
---|
| Code Block |
---|
| int GccaSign(
HANDLE hGrd,
DWORD dwAlgoNum,
DWORD dwDataLng,
void *pData,
DWORD dwSignResultLng,
void *pSignResult,
void *pPrivateKey,
void *pReserved
); |
Expand |
---|
| hGrd | не используется | dwAlgoNum | числовое имя аппаратного алгоритма типа ECC Algorithm | dwDataLng | длина массива данных (20 байтов для ECC160) | pData | указатель на массив данных | dwSignResultLng | длина массива цифровой подписи (40 байтов для ECC160) | pSignResult | указатель на массив цифровой подписи | pPrivateKey | указатель на буфер с секретным (закрытым) ключом | pReserved | зарезервировано |
|
Expand |
---|
title | Возвращаемое значение функции |
---|
| |
Expand |
---|
| Функция GccaSign GcaSign позволяет вычислять цифровую подпись массива данных при помощи аппаратного алгоритма типа ECC. Вычисление цифровой подписи производится алгоритмом с числовым именем, заданным в параметре dwAlgoNum. Этот алгоритм предварительно должен быть создан. Если в дескрипторе алгоритма установлен флаг nsafl_GP_dec (уменьшение счетчика), вычитание счетчика GP происходит при каждом вызове GccaSign GcaSign. Длина массива данных (в байтах) pData задается параметром dwDataLng и зависит от типа алгоритма. Длина возвращаемой цифровой подписи (в байтах) pSignResult также зависит от типа алгоритма и задаётся параметром dwSignResultLng. Для алгоритма ECC160 длина массива данных и длина возвращаемой цифровой подписи должны быть GrdECC160_MESSAGE_SIZE (20 байт) и GrdECC160_DIGEST_SIZE (40 байт) соответственно. Может работать как через защищенные ячейки типа алгоритм, так и напрямую обращаться к алгоритму ECC160 (GrdVSC_ECC160 в параметре dwAlgo). |
|
|
...