Card |
---|
| Code Block |
---|
| int GRD_API GrdTRU_DecryptQuestionTimeEx(
HANDLE hGrd,
DWORD dwAlgoNum_Decrypt,
DWORD dwAlgoNum_Hash,
DWORD dwLngQuestion,
void *pQuestion,
DWORD dwID,
DWORD dwPublic,
QWORD *pqwDongleTime,
QWORD *pqwDeadTimes,
DWORD dwDeadTimesNumbers,
DWORD dwLngHash,
void *pHash,
DWORD dwMode,
DWORD dwReserved,
void *pReserved
); |
Expand |
---|
| hGrd | хэндл, через который будет выполнена данная операция. | dwAlgoNum_Decrypt | номер аппаратного алгоритма, который будет использоваться для расшифровывания числа-вопроса. | dwAlgoNum_Hash | номер аппаратного алгоритма, который будет использоваться для проверки подлинности числа-вопроса на основании MAC | dwLngQuestion | размер присланного удаленным пользователем параметра число-вопрос | pQuestion | буфер, содержащий присланное удаленным пользователем число-вопрос. | dwID | ID ключа удаленного пользователя, для которого будет произведена операция | dwPublic | численное значение Public Code ключа удаленного пользователя, для которого будет произведена операция | pqwDongleTime | зашифрованное значение времени ключа. 8 байт. | pqwDeadTimes | зашифрованные значения времён жизни алгоритмов. По 8 байт. | dwDeadTimesNumbers | количество 8 байтовых элементов в pqwDeadTimes | dwLngHash | длина данных в буфере, содержащий MAC, вычисленный на ключе удаленного пользователя. | pHash | буфер, содержащий MAC, вычисленный на ключе удаленного пользователя. Длина буфера 8 байт | dwMode | константа определяющая режим работы: GrdTRU_CryptMode_GSII64 | шифрование на базе GSII64 ( 8 байт), хеш на базе GSII64 (8 байт) | GrdTRU_CryptMode_AES128SHA256 | шифрование на базе AES128(16 байт), хеш на базе SHA256(32 байт) |
| dwReserved | не используется. Параметр должен быть равен 0. | pReserved | не используется. Параметр должен быть равен NULL. |
|
Expand |
---|
title | Возвращаемое значение функции |
---|
| pQuestion | после выполнения функции в этот буфер возвращается расшифрованное число-вопрос. Длина буфера 8 байт |
Возможные ошибки GrdE_SystemDataCorrupted | Системные данные TRU повреждены. (Секретный ключ удаленного программирования отсутствует) | GrdE_NoQuestion | Число-вопрос не было сгенерировано или было перегенерировано до записи числа ответа | GrdE_InvalidData | Неверный формат данных для удаленного программирования | GrdE_QuestionOK | Число-вопрос уже было сгенерировано, ключ ожидает данных для удаленного программирования | GrdE_UpdateNotComplete | Ошибка при записи данных удаленного программирования. Операция не была завершена | GrdE_InvalidHash | Неверное значение MAC (Message Authentication Code) | | Стандартный набор ошибок |
|
|
Card |
---|
| Code Block |
---|
| public static GrdE GrdTRU_DecryptQuestionTimeEx(Handle grdHandle, GrdAlgNum algNumDecrypt, GrdAlgNum algNumHash, byte[] question,
uint id, uint publicCode, ref ulong dongleTime, ulong[] deadTimes, int deadTimesNumbers, byte[] hash, GrdTRU truMode)
|
Expand |
---|
title | Возвращаемое значение метода |
---|
| |
|
Card |
---|
| Code Block |
---|
| public static GrdE GrdTRU_DecryptQuestionTimeEx(Handle grdHandle, int algoNum_Decrypt, int algoNum_Hash,
byte[] question, int id, int publicCode, long[] dongleTime, long[] deadTimes, int deadTimesNumbers, byte[] hash, int mode) |
Expand |
---|
title | Возвращаемое значение метода |
---|
| |
|
|