Функция GccaSign вычисляет электронную цифровую подпись блока байт при помощи аппаратного алгоритма ECC160.
{dojo-tabs:theme=tundra|id=1} {dojo-tab:title=C|selected=true} *C* int GccaSign( HANDLE hGrd, DWORD dwAlgoNum, DWORD dwDataLng, void *pData, DWORD dwSignResultLng, void *pSignResult, void *pPrivateKey, 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} |
|
|
Функция GccaSign позволяет вычислять цифровую подпись массива данных при помощи аппаратного алгоритма типа ECC. Вычисление цифровой подписи производится алгоритмом с числовым именем, заданным в параметре dwAlgoNum. Этот алгоритм предварительно должен быть создан. Если в дескрипторе алгоритма установлен флаг nsafl_GP_dec (уменьшение счетчика), вычитание счетчика GP происходит при каждом вызове GccaSign. Длина массива данных (в байтах) pData задается параметром dwDataLng и зависит от типа алгоритма. Длина возвращаемой цифровой подписи (в байтах) pSignResult также зависит от типа алгоритма и задаётся параметром dwSignResultLng. Для алгоритма ECC160 длина массива данных и длина возвращаемой цифровой подписи должны быть GrdECC160_MESSAGE_SIZE (20 байт) и GrdECC160_DIGEST_SIZE (40 байт) соответственно. Может работать как через защищенные ячейки типа алгоритм, так и напрямую обращаться к алгоритму ECC160 (GrdVSC_ECC160 в параметре dwAlgo). |
См. директорию: |