Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Deck of Cards
id001
Card
defaulttrue
labelC
Code Block
languagecpp
int  GRD_API GrdTRU_DecryptQuestionTime( 
		HANDLE	hGrd,			
		DWORD	dwAlgoNum_GSII64,
		DWORD	dwAlgoNum_HashS3,	
		void	*pQuestion,	
		DWORD	dwID,		 
		DWORD	dwPublic,	
		QWORD *pqwDongleTime,	
		QWORD	*pqwDeadTimes,
		DWORD	dwDeadTimesNumbers,
		void	*pHash			
	);	
Expand
titleПараметры функции

hGrd

хэндл, через который будет выполнена данная операция

dwAlgoNum_GSII64

номер аппаратного алгоритма типа GSII64, который будет использоваться для расшифровывания числа-вопроса

dwAlgoNum_Hash64

номер аппаратного алгоритма Hash64, который будет использоваться для проверки подлинности числа-вопроса на основании MAC

pQuestion

буфер, содержащий присланное удаленным пользователем число-вопрос. Длина буфера 8 байт

dwID

ID ключа удаленного пользователя, для которого будет произведена операция

dwPublic

численное значение Public Code ключа удаленного пользователя, для которого будет произведена операция

pqwDongleTime

зашифрованное значение времени ключа. 8 байт.

pqwDeadTimes

зашифрованные значения времён жизни алгоритмов. По 8 байт

dwDeadTimesNumbers

количество 8 байтовых элементов в pqwDeadTimes

pHash

буфер, содержащий MAC, вычисленный на ключе удаленного пользователя. Длина буфера 8 байт

Expand
titleВозвращаемое значение функции

pQuestion

после выполнения функции в этот буфер возвращается расшифрованное число-вопрос. Длина буфера 8 байт

Возможные ошибки

GrdE_SystemDataCorrupted

Системные данные TRU повреждены. (Секретный ключ удаленного программирования отсутствует)

GrdE_NoQuestion

Число-вопрос не было сгенерировано или было перегенерировано до записи числа ответа

GrdE_InvalidData

Неверный формат данных для удаленного программирования

GrdE_QuestionOK

Число-вопрос уже было сгенерировано, ключ ожидает данных для удаленного программирования

GrdE_UpdateNotComplete

Ошибка при записи данных удаленного программирования. Операция не была завершена

GrdE_InvalidHash

Неверное значение MAC (Message Authentication Code)

 

Стандартный набор ошибок

Card
labelC#
Code Block
languagec#
public static GrdE GrdTRU_DecryptQuestionTime(Handle grdHandle, GrdAlgNum algNum_GSII64, GrdAlgNum algNum_HashS3, byte[] question,
	uint id, uint publicCode, ref ulong dongleTime, ulong[] deadTimes, int deadTimesNumbers, byte[] hash)
Expand
titleПараметры метода

grdHandle [in] 

Тип: Handle

Нэндл, через который будет выполнена данная операция.

algNum_GSII64 [in] 

Тип: GrdAlgNum

Номер аппаратного алгоритма типа GSII64, который будет использоваться для расшифровывания числа-вопроса.

algNum_HashS3 [in] 

Тип: GrdAlgNum

Номер аппаратного алгоритма Hash64, который будет использоваться для проверки подлинности числа-вопроса на основании MAC.

question [in] 

Тип: byte [ ]

Буфер, содержащий присланное удаленным пользователем число-вопрос.

id [in]

Тип: uint

ID ключа удаленного пользователя, для которого будет произведена операция.

publicCode [out]

Тип: uint

Численное значение Public Code ключа удаленного пользователя, для которого будет произведена операция.

dongleTime [out]

Тип: ulong

Зашифрованное значение времени ключа.

deadTimes [out]

Тип: ulong [ ]

Зашифрованное значение времен жизни алгоритмов.

deadTimesNumbers [out]

Тип: int

Количество элементов, возвращаемых в deadTimes.

hash [out]

Тип: byte [ ]

Буфер, содержащий MAC, вычисленный на ключе удаленного пользователя.

Expand
titleВозвращаемое значение метода

 

Card
labelJava
Code Block
languagejava
public static GrdE GrdTRU_DecryptQuestionTime(Handle grdHandle, int algoNum_GSII64, int algoNum_HashS3, 
	byte[] question, int id, int publicCode, long[] dongleTime, long[] deadTimes, int deadTimesNumbers, byte[] hash)
Expand
titleПараметры метода

 

Expand
titleВозвращаемое значение метода

 

...