<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум Guardant &mdash; Использование TRU для предпродажной подготовки ключей]]></title>
	<link rel="self" href="https://forum.guardant.ru/feed/atom/topic/221" />
	<updated>2017-02-21T07:58:33Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.guardant.ru/topic/221/</id>
		<entry>
			<title type="html"><![CDATA[Re: Использование TRU для предпродажной подготовки ключей]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/3553/#p3553" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>vityusha пишет:</cite><blockquote><div class="quotebox"><cite>Виталий Мирошниченко пишет:</cite><blockquote><p>Разобрался с некоторыми нюансами.<br />Экспериментально установил, что nsd не подходит :( Дамп прошивки вроде бы обрабатывается нормально, но при применении уже к клиентскому ключу (метод GrdTRU_ApplyAnswer) возвращает код ошибки GrdE_InvalidData (в случае применения безопасной перегрузки метода генерации) или код ошибки GrdE_InvalidArg (в случае применения перегрузки с указателями. Ошибка в обвёртке?). Разные комбинации параметров настройки и генерации ответа не привели к вменяемому результату.</p></blockquote></div><p>Имею такую же проблему. GrdTRU_ApplyAnswer возвращает&nbsp; GrdE_InvalidArg.<br />Удалось ли как-то решить эту проблему?</p></blockquote></div><p>Ответ был направлен на ваш электронный адрес.</p>]]></content>
			<author>
				<name><![CDATA[Тимофей Ершов]]></name>
				<uri>https://forum.guardant.ru/user/1116/</uri>
			</author>
			<updated>2017-02-21T07:58:33Z</updated>
			<id>https://forum.guardant.ru/post/3553/#p3553</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Использование TRU для предпродажной подготовки ключей]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/3545/#p3545" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Виталий Мирошниченко пишет:</cite><blockquote><p>Разобрался с некоторыми нюансами.<br />Экспериментально установил, что nsd не подходит :( Дамп прошивки вроде бы обрабатывается нормально, но при применении уже к клиентскому ключу (метод GrdTRU_ApplyAnswer) возвращает код ошибки GrdE_InvalidData (в случае применения безопасной перегрузки метода генерации) или код ошибки GrdE_InvalidArg (в случае применения перегрузки с указателями. Ошибка в обвёртке?). Разные комбинации параметров настройки и генерации ответа не привели к вменяемому результату.</p></blockquote></div><p>Имею такую же проблему. GrdTRU_ApplyAnswer возвращает&nbsp; GrdE_InvalidArg.<br />Удалось ли как-то решить эту проблему?</p>]]></content>
			<author>
				<name><![CDATA[vityusha]]></name>
				<uri>https://forum.guardant.ru/user/422/</uri>
			</author>
			<updated>2017-02-16T10:34:50Z</updated>
			<id>https://forum.guardant.ru/post/3545/#p3545</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Использование TRU для предпродажной подготовки ключей]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/1061/#p1061" />
			<content type="html"><![CDATA[<p>Разобрался с некоторыми нюансами.</p><div class="quotebox"><blockquote><p>1. Параметр pGSII64_Key128 метода GrdTRU_SetKey должен быть байтовым массивом длиной в 16 байт?</p></blockquote></div><p>Да :)</p><div class="quotebox"><blockquote><p>2. Какими должны быть длины байтового массива вопроса и хеша для метода GrdTRU_GenerateQuestionEx?</p></blockquote></div><p>16 и 32 байта соответственно. Во всяком случае для Code и Code Time</p><div class="quotebox"><blockquote><p>3. Для метода GrdTRU_DecryptQuestionEx какие необходимо указывать флаги режима (GrdTRU)?</p></blockquote></div><p>В моём случае это GrdTRU_CryptMode_AES128SHA256</p><div class="quotebox"><blockquote><p>4. Необходимо ли использовать метод GrdTRU_SetAnswerProperties или достаточно записать в ответ образ?</p></blockquote></div><p>Увы так и не понял :(</p><div class="quotebox"><blockquote><p>5. Собственно главный вопрос: данные для записи в ключа, которые передаются в метод GrdTRU_EncryptAnswerEx - это образ в формате файла nsd? Если нет, то возможно ли получить необходимую информацию из nsd-файла?</p></blockquote></div><p>Экспериментально установил, что nsd не подходит :( Дамп прошивки вроде бы обрабатывается нормально, но при применении уже к клиентскому ключу (метод GrdTRU_ApplyAnswer) возвращает код ошибки GrdE_InvalidData (в случае применения безопасной перегрузки метода генерации) или код ошибки GrdE_InvalidArg (в случае применения перегрузки с указателями. Ошибка в обвёртке?). Разные комбинации параметров настройки и генерации ответа не привели к вменяемому результату. </p><div class="quotebox"><blockquote><p>6. В параметрах метода GrdTRU_EncryptAnswerEx фигурирует некий стартовый адрес по которому будет произведена запись. Какое должно быть его значение в данном случае?</p></blockquote></div><p>Собственно до сих пор не понятно. Но имею подозрение, что для полной прошивки нужно указывать 0.</p><p>Пока всё. Надеюсь что в понедельник кто-то мне ответит. Если будет какой-нибудь прогресс, я отпишусь в новом посте.</p><p>PS надеюсь мои попытки и эксперименты помогут кому-то в подобных задачах.</p>]]></content>
			<author>
				<name><![CDATA[Виталий Мирошниченко]]></name>
				<uri>https://forum.guardant.ru/user/396/</uri>
			</author>
			<updated>2012-10-07T10:33:12Z</updated>
			<id>https://forum.guardant.ru/post/1061/#p1061</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Использование TRU для предпродажной подготовки ключей]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/1060/#p1060" />
			<content type="html"><![CDATA[<p>Добрый день.</p><p>Я сейчас работаю над проектом, использующим ключи Guardant Code Time для защиты клиентского приложения. Была поставлена задача по написанию системы автоматической предпродажной подготовки ключей. Основное требование - независимость от Guardant SDK. То есть подготовка только что доставленного чистого ключа должна проходить исключительно средствами системы без участия Guardant SDK. Другими словами - исключительно средствами GuardantApi.</p><p>Следует так же указать, что система пишется на dotNet.</p><p>Возникло ряд вопросов связанных с методами GrdTRU_*:</p><p>1. Параметр pGSII64_Key128 метода GrdTRU_SetKey должен быть байтовым массивом длиной в 16 байт?</p><p>2. Какими должны быть длины байтового массива вопроса и хеша для метода GrdTRU_GenerateQuestionEx?</p><p>3. Для метода GrdTRU_DecryptQuestionEx какие необходимо указывать флаги режима (GrdTRU)?</p><p>4. Необходимо ли использовать метод GrdTRU_SetAnswerProperties или достаточно записать в ответ образ?</p><p>5. Собственно главный вопрос: данные для записи в ключа, которые передаются в метод GrdTRU_EncryptAnswerEx - это образ в формате файла nsd? Если нет, то возможно ли получить необходимую информацию из nsd-файла?</p><p>6. В параметрах метода GrdTRU_EncryptAnswerEx фигурирует некий стартовый адрес по которому будет произведена запись. Какое должно быть его значение в данном случае?</p><p>Вроде бы всё. Заранее спасибо за ответ.</p><p>PS пытаюсь во всём разобраться сам. Возникла проблема! Метод GrdTRU_DecryptQuestionEx возвращает результат NoService. Я завёл алгоритмы AES128 Decode и SHA256 на ключе разработчика, а так же точно указал их в параметрах метода а mode установил в GrdTRU.CryptMode_AES128SHA256. В чём я ошибся?</p>]]></content>
			<author>
				<name><![CDATA[Виталий Мирошниченко]]></name>
				<uri>https://forum.guardant.ru/user/396/</uri>
			</author>
			<updated>2012-10-06T09:12:32Z</updated>
			<id>https://forum.guardant.ru/post/1060/#p1060</id>
		</entry>
</feed>
