Функция(метод) GrdVerifySign проверяет электронную цифровую подпись блока байт данных при помощи аппаратного программного алгоритмаECC160.
Deck of Cards |
---|
|
Wiki Markup |
---|
{dojo-tabs:theme=tundra|id=1}
{dojo-tab:title=C|selected=true}
*C*
int GRD_API GrdVerifySign(
HANDLE |
| HANDLE DWORD DWORD void DWORD void DWORD void void
{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} | Входные параметры | hGrd | хэндл, через который будет выполнена данная операция | dwAlgoType | тип программного алгоритма (см. GrdVSC_ |
|
| XXXXXECC160) | dwPublicKeyLng | длина открытого ключа | pPublicKey | указатель на открытый ключ | dwDataLng | длина массива данных (20 байтов для ECC160) | pData | указатель на массив данных | dwSignLng | длина массива цифровой подписи (40 байтов для ECC160) | pSign | указатель на массив цифровой подписи | pReserved | зарезервировано |
|
|
| Выходные параметрыВозвращаемое значение функции |
| |
Expand |
---|
| Функция GrdVerifySign осуществляет проверку цифровой подписи массива данных. Реализация функции полностью программная. Проверка цифровой подписи производится алгоритмом, заданным в параметре dwAlgoType. Типы допустимых программных алгоритмов определены |
| константами единственной константой GrdVSC_ |
| XXXXXECC160. Она определяет алгоритм ECC160 Длина открытого ключа (в байтах) pPublicKey задаётся параметром dwPublicKeyLng и зависит от возможного типа программного алгоритма. Длины массива данных (в байтах) pData и цифровой подписи (в байтах) pSign задаются параметрами dwDataLng и dwSignLng соответственно |
| . Для алгоритма ECC160 тип програмного алгоритма должен быть GrdVSC_ECC160. Длина открытого ключа должна быть GrdECC160_PUBLIC_KEY_SIZE (40 байт). Длина массива данных и длина цифровой подписи должны быть GrdECC160_MESSAGE_SIZE (20 байт) и GrdECC160_DIGEST_SIZE (40 байт) соответственно. |
|
Card |
---|
| Code Block |
---|
| public static GrdE GrdVerifySign(Handle grdHandle, byte[] publicKey, byte[] data, byte[] digestSign)
|
|
| | grdHandle [in] Тип: Handle хэндл, через который будет выполнена данная операция. publicKey [in] Тип: byte [ ] Длина открытого ключа. data [in] Тип: byte [ ] Указатель на массив данных. digestSign [in] Тип: byte [ ] Указатель на массив цифровой подписи. |
Expand |
---|
title | Возвращаемое значение метода |
---|
| |
Expand |
---|
| Метод GrdVerifySign осуществляет проверку цифровой подписи массива данных. Реализация метода полностью программная. Типы допустимых программных алгоритмов определены единственной константой GrdVSC.ECC160. Она определяет алгоритм ECC160. Длина открытого ключа (в байтах) publicKey зависит от возможного типа программного алгоритма. Длина открытого ключа должна быть GrdECC160.PUBLIC_KEY_SIZE (40 байт). Длина массива данных и длина цифровой подписи должны быть GrdECC160.MESSAGE_SIZE (20 байт) и GrdECC160.DIGEST_SIZE (40 байт) соответственно. |
|
Card |
---|
| Code Block |
---|
| public static GrdE GrdVerifySign(Handle grdHandle, byte[] publicKey, byte[] data, byte[] sign) |
Expand |
---|
| grdHandle [in] Тип: Handle хэндл, через который будет выполнена данная операция. publicKey [in] Тип: byte [ ] Длина открытого ключа. data [in] Тип: byte [ ] Указатель на массив данных. sign [in] Тип: byte [ ] Указатель на массив цифровой подписи. |
Expand |
---|
title | Возвращаемое значение метода |
---|
| |
Expand |
---|
| Метод GrdVerifySign осуществляет проверку цифровой подписи массива данных. Реализация метода полностью программная. Типы допустимых программных алгоритмов определены единственной константой GrdVSC.ECC160. Она определяет алгоритм ECC160. Длина открытого ключа (в байтах) publicKey зависит от возможного типа программного алгоритма. Длина открытого ключа должна быть GrdECC160.PUBLIC_KEY_SIZE (40 байт). Длина массива данных и длина цифровой подписи должны быть GrdECC160.MESSAGE_SIZE (20 байт) и GrdECC160.DIGEST_SIZE (40 байт) соответственно. |
|
| Пример | Пример для используемого средства разработки см. в директории: "\%Program Files%\Guardant\Guardant 6\%PublicCode%\Samples\x86\Win32\General Guardant API\" или "\%Program Files%\Guardant\Guardant 6\%Public Code%\Samples\x64\Win64\General Guardant API\" |