<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум Guardant &mdash; Единственный сессионный ключ (OnlyOneSessKey,2ndSessKey)]]></title>
	<link rel="self" href="https://forum.guardant.ru/feed/atom/topic/659/" />
	<updated>2016-09-09T12:14:29Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.guardant.ru/topic/659/</id>
		<entry>
			<title type="html"><![CDATA[Re: Единственный сессионный ключ (OnlyOneSessKey,2ndSessKey)]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/3294/#p3294" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>artemmh пишет:</cite><blockquote><p>В том и дело, что да, позволяет. Обе копии свободно читают данные.<br /><strong>З.Ы.</strong><br />Я заметил такую закономерность. <br />Запускаем первую копию программы, блокируем ключ на чтение. Запускаем вторую копию, ждем сообщения о том, что ключ заблокирован. В первой программе разблокируем ключ. Запустим третью копию и прогоняем полный цикл чтения ключа. Вернемся в первую программу, попробуем снова считать данные и вот только тогда получим сообщение, что сессия занята.</p></blockquote></div><p>У нас такое поведение не воспроизводится.<br />Т.е. при помощи утилиты программирования ключей (<strong>GrdUtil.exe</strong>) ключ был запрограммирован в режиме <strong>1 сессионный ключ для Guardant API</strong>. Последовательно, после логина (<strong>GrdLogin</strong>), выполняется блок функций выполняющих:<br /> </p><ol class="decimal"><li><p>Чтение строки из незащищенной аппаратными запретами области памяти электронного ключа (<strong>GrdRead</strong>)</p></li><li><p>Чтение определителя защищенной ячейки (<strong>GrdPI_Read</strong>)</p></li><li><p>Кодирование\декодирование строки (<strong>GrdCrypt</strong>)</p></li></ol><p>Весь блок выполняется бесконечное количество итераций, каждая новая итерация выполняется после нажатия клавиши.<br />В результате если запустит одну копию приложения, то каждая итерация выполняется корректно. После запуска второй копии первое запущенное приложение после вызова каждой функции возвращает ошибку <strong>Invalid session key</strong> - т.е. как и должно быть.</p><p>Попробуйте запрограммировать ключ при помощи утилиты GrdUtil.exe.</p>]]></content>
			<author>
				<name><![CDATA[Антон Тихиенко]]></name>
				<uri>https://forum.guardant.ru/user/31/</uri>
			</author>
			<updated>2016-09-09T12:14:29Z</updated>
			<id>https://forum.guardant.ru/post/3294/#p3294</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Единственный сессионный ключ (OnlyOneSessKey,2ndSessKey)]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/3290/#p3290" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Антон Тихиенко пишет:</cite><blockquote><p>А первая копия приложения, после удачного запуска второй, повторно позволяет прочесть нужные данные?</p></blockquote></div><p>В том и дело, что да, позволяет. Обе копии свободно читают данные.<br /><strong>З.Ы.</strong><br />Я заметил такую закономерность. <br />Запускаем первую копию программы, блокируем ключ на чтение. Запускаем вторую копию, ждем сообщения о том, что ключ заблокирован. В первой программе разблокируем ключ. Запустим третью копию и прогоняем полный цикл чтения ключа. Вернемся в первую программу, попробуем снова считать данные и вот только тогда получим сообщение, что сессия занята.</p>]]></content>
			<author>
				<name><![CDATA[artemmh]]></name>
				<uri>https://forum.guardant.ru/user/1149/</uri>
			</author>
			<updated>2016-09-07T11:54:35Z</updated>
			<id>https://forum.guardant.ru/post/3290/#p3290</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Единственный сессионный ключ (OnlyOneSessKey,2ndSessKey)]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/3289/#p3289" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>artemmh пишет:</cite><blockquote><p><strong>РАБОТА С КЛЮЧЕМ В ПРОГРАММЕ</strong><br />--Первая программа<br />Логинимся читаем данные<br />...<br />--N-ая программа<br />Логинимся читаем данные. Никаких ошибок, данные свободно читаются</p></blockquote></div><p>Здравствуйте.</p><p>А первая копия приложения, после удачного запуска второй, повторно позволяет прочесть нужные данные?</p>]]></content>
			<author>
				<name><![CDATA[Антон Тихиенко]]></name>
				<uri>https://forum.guardant.ru/user/31/</uri>
			</author>
			<updated>2016-09-07T10:47:36Z</updated>
			<id>https://forum.guardant.ru/post/3289/#p3289</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Единственный сессионный ключ (OnlyOneSessKey,2ndSessKey)]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/3286/#p3286" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>aloch пишет:</cite><blockquote><p>Вот вызов GrdLogout() зачем?</p></blockquote></div><p>Затем, что это две разные программы. Первая программа просто пишет в ключ информацию и все, на этом работа с ключом завершена.<br /></p><div class="quotebox"><blockquote><p>Как правило, сеанс работы с ключом закрывается при завершении работы копии защищенного приложения, когда никакие более операции с данным ключом выполняться не будут.</p></blockquote></div><p>Вторая программа уже работает с ключом, а она уже именно так и работает, сеанс работы с ключом закрывается при выходе из программы.<br /></p><div class="quotebox"><blockquote><p>Вся информация об этой копии приложения в памяти сервера Guardant Net будет уничтожена.</p></blockquote></div><p>Я не работаю с сервером Guardant Net.</p><p>Ключ локальный, Sign[USB]</p>]]></content>
			<author>
				<name><![CDATA[artemmh]]></name>
				<uri>https://forum.guardant.ru/user/1149/</uri>
			</author>
			<updated>2016-09-07T06:24:29Z</updated>
			<id>https://forum.guardant.ru/post/3286/#p3286</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Единственный сессионный ключ (OnlyOneSessKey,2ndSessKey)]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/3283/#p3283" />
			<content type="html"><![CDATA[<p>Вот вызов GrdLogout() зачем?</p><p>Функция GrdLogout <strong>закрывает сеанс работы с локальным или удаленным ключом</strong>. Как правило, сеанс работы с ключом закрывается при завершении работы копии защищенного приложения, когда никакие более операции с данным ключом выполняться не будут. </p><p>Если сеанс был открыт с удаленным ключом, в процессе выполнения функции происходит возврат лицензии (увеличение на 1 счетчика лицензий) серверу Guardant Net и таблице лицензий LMS, с которыми работало приложение. </p><p>Вся информация об этой копии приложения в памяти сервера Guardant Net будет уничтожена. Возврат лицензии серверу осуществляется в том же режиме, что и производился захват. То есть учитывается режим выдачи лицензий рабочим станциям или копиям приложения. С этого момента получить доступ к ключу приложение может, только снова выполнив функцию GrdLogin.</p>]]></content>
			<author>
				<name><![CDATA[aloch]]></name>
				<uri>https://forum.guardant.ru/user/1141/</uri>
			</author>
			<updated>2016-09-06T18:29:46Z</updated>
			<id>https://forum.guardant.ru/post/3283/#p3283</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Единственный сессионный ключ (OnlyOneSessKey,2ndSessKey)]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/3281/#p3281" />
			<content type="html"><![CDATA[<p>Доброго времени суток.</p><p>Подскажите, что я делаю не так, почему ключ позволяет запускать множество экземпляров одной программы?</p><p>Мои действия:</p><p><strong>ЗАПИСЬ В КЛЮЧ</strong><br />1 - GrdSetFindMode, GrdLogin, GrdSetWorkMode, GrdLock<br />2 - инициализирую память ключа GrdInit<br />3 - пишу в ключ данные GrdWrite<br />4 - устанавливаю защиту GrdProtect(hGrd, 0, 0, 0, 0, GrdGF_OnlyOneSessKey, NULL);<br /> или<br />4 - GrdProtect(hGrd, 0, 0, 0, 0, GrdGF_OnlyOneSessKey|GrdGF_2ndSessKey, NULL);<br />5 - GrdUnlock, GrdLogout</p><p><strong>РАБОТА С КЛЮЧЕМ В ПРОГРАММЕ</strong><br />--Первая программа<br />Логинимся читаем данные<br />...<br />--N-ая программа<br />Логинимся читаем данные. Никаких ошибок, данные свободно читаются</p>]]></content>
			<author>
				<name><![CDATA[artemmh]]></name>
				<uri>https://forum.guardant.ru/user/1149/</uri>
			</author>
			<updated>2016-09-06T13:02:21Z</updated>
			<id>https://forum.guardant.ru/post/3281/#p3281</id>
		</entry>
</feed>
