Функция GrdTRU_GenerateQuestionTime генерирует зашифрованное число-вопрос для удаленного программирования, использующего технологию Trusted Remote Update. Является аналогом функции GrdTRU_GenerateQuestion для ключа Guardant Time. Эта функция не подходит для ключей Guardant Code Time, при работе с которыми нужно использовать функцию GrdTRU_GenerateQuestionTimeEx.
Deck of Cards |
---|
|
Card |
---|
| Code Block |
---|
| int GRD_API GrdTRU_GenerateQuestionTime(
HANDLE hGrd,
void *pQuestion,
DWORD *pdwID,
DWORD *pdwPublic,
QWORD *pqwDongleTime,
DWORD dwDeadTimesSize,
QWORD *pqwDeadTimes,
DWORD *pdwDeadTimesNumbers,
void *pHash,
void *pReserved
); |
Expand |
---|
| hGrd | хэндл, через который будет выполнена данная операция | pQuestion | буфер, куда будет помещен сгенерированный вопрос. Размер буфера 8 байт | pdwID | буфер, куда будет помещено значение ID ключа, для которого сгенерирован вопрос. Длина буфера 4 байта | pdwPublic | буфер, куда будет помещено численное значение Public code ключа, для которого сгенерирован вопрос. Длина буфера 4 байта | pqwDongleTime | зашифрованное время из микросхемы таймера. Длина буфера 8 байт | pdwPublic | буфер, куда будет помещено численное значение Public code ключа, для которого сгенерирован вопрос. Длина буфера 4 байта | dwDeadTimesSize | размер входного буфера pqwDeadTimes в байтах | pqwDeadTimes | зашифрованные значения времен жизни алгоритмов. По 8 байт | pdwDeadTimesNumbers | количество элементов, возвращаемых в pqwDeadTimes | pHash | буфер, куда будет помещено значение MAC ( Message Authentication Code - кода аутентификации сообщения) для верификации вопроса. Длина буфера 8 байт | pReserved | зарезервировано. Должно быть равно NULL |
|
Expand |
---|
title | Возвращаемое значение функции |
---|
| Возможные ошибки GrdE_SystemDataCorrupted | Системные данные TRU повреждены. (Секретный ключ удаленного программирования отсутствует) | GrdE_NoQuestion | Число-вопрос не было сгенерировано или было перегенерировано до записи числа ответа | GrdE_InvalidData | Неверный формат данных для удаленного программирования | GrdE_QuestionOK | Число-вопрос уже было сгенерировано, ключ ожидает данных для удаленного программирования | GrdE_UpdateNotComplete | Ошибка при записи данных удаленного программирования. Операция не была завершена | GrdE_InvalidHash | Неверное значение MAC (Message Authentication Code) | | Стандартный набор ошибок |
|
|
Card |
---|
| Code Block |
---|
| public static GrdE GrdTRU_GenerateQuestionTime(Handle grdHandle, out byte[] question, out uint id, out uint publicCode,
out ulong dongleTime, ulong[] deadTimes, out int deadTimesNumbers, out byte[] hash)
|
|
|
Wiki Markup |
---|
{dojo-tabs:theme=tundra|id=1}
{dojo-tab:title=C|selected=true}
*C*
int GRD_API GrdTRU_GenerateQuestionTime(
HANDLE hGrd,
void *pQuestion,
DWORD *pdwID,
DWORD *pdwPublic,
QWORD *pqwDongleTime,
DWORD dwDeadTimesSize,
QWORD *pqwDeadTimes,
DWORD *pdwDeadTimesNumbers,
void *pHash,
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} |
...