<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Форум Guardant &mdash; Электронная цифровая подпись]]></title>
		<link>https://forum.guardant.ru/topic/810/</link>
		<atom:link href="https://forum.guardant.ru/feed/rss/topic/810" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Электронная цифровая подпись».]]></description>
		<lastBuildDate>Wed, 30 May 2018 12:02:52 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3912/#p3912</link>
			<description><![CDATA[<div class="quotebox"><cite>tonal пишет:</cite><blockquote><p>Я правильно понимаю, что можно защитить приложение и dll-ку вместе, а потом protectstorage.dll поместить в общий каталог типа windows\system32?</p></blockquote></div><p>Да. Или добавить путь к нужному каталогу в <a href="https://msdn.microsoft.com/en-us/library/ms682586%28v=vs.85%29.aspx">переменную среды path</a> .</p>]]></description>
			<author><![CDATA[null@example.com (Антон Тихиенко)]]></author>
			<pubDate>Wed, 30 May 2018 12:02:52 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3912/#p3912</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3909/#p3909</link>
			<description><![CDATA[<p>У нас приложение и dll-ка плагин в разных каталогах.<br />Я правильно понимаю, что можно защитить приложение и dll-ку вместе, а потом protectstorage.dll поместить в общий каталог типа windows\system32?</p><p>Ну и при этом приложение и dll-ка плагин должны быть одной разрядности.</p>]]></description>
			<author><![CDATA[null@example.com (tonal)]]></author>
			<pubDate>Tue, 29 May 2018 13:08:21 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3909/#p3909</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3893/#p3893</link>
			<description><![CDATA[<div class="quotebox"><cite>tonal пишет:</cite><blockquote><p>Или Guardant Armor самостоятельно может отследить что dll-ку, например подменили?</p></blockquote></div><p>В определенном смысле да, т.е. сам принцип работы защищенного приложения такой, что виртуализированные и зашифрованные ф-ии выносятся в специальное хранилище (&quot;по умолчанию&quot; <strong>protectstorage.dll</strong>) куда и передается управление после вызова защищенных ф-ий.</p><p>А если библиотеку и приложение защитить таким образом, что у них будет общее хранилище, то на его уровне и будет контролироваться валидность компонентов приложения (<strong>\защ.exe\</strong> —&gt; вызов —&gt; <strong>protectstorage.dll</strong> &lt;— вызов &lt;— <strong>\защ.dll\</strong>).</p><p>Чтобы подменить библиотеку или исполняемый файл придется пропатчить все вызовы к хранилищу, да еще и так, чтобы все приложение осталось работоспособным. По сути, все сводится к тому, чтобы это было настолько трудоемко делать, что просто бессмысленно. Но в явном виде сообщать что &quot;кто-то подменил библиотеку&quot;, Armor не умеет сейчас и не понятно есть ли в этом смысл.</p>]]></description>
			<author><![CDATA[null@example.com (Антон Тихиенко)]]></author>
			<pubDate>Tue, 15 May 2018 06:15:14 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3893/#p3893</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3892/#p3892</link>
			<description><![CDATA[<div class="quotebox"><cite>Антон Тихиенко пишет:</cite><blockquote><p>Вообщем то Guardant Armor нужен и для 1-го случая, а если надо, то дополнительно усилить защиту можно реализовав свои уникальные, хитрые проверки ключа.</p></blockquote></div><p>Под 1-ым случаем я имел в виду, что приложение при старте должно как-то проверить что dll-ка под защитой.<br />Причём длл-ка подгружаемая сторонним процессом.<br />И наоборот, dll-ка должна убедится, что приложение не изменено. Причём приложение не которое его грузит, а то, которое инициирует его загрузку.</p><p>Можно использовать для этого механизм подписи SignTool из WinSDK.<br />Т. е. подписываем все модули (exe и dll) секретным ключём разработчика, а на старте проверяем что модули не изменены.</p><p>Или Guardant Armor самостоятельно может отследить что dll-ку, например подменили?</p>]]></description>
			<author><![CDATA[null@example.com (tonal)]]></author>
			<pubDate>Thu, 10 May 2018 08:45:58 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3892/#p3892</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3891/#p3891</link>
			<description><![CDATA[<div class="quotebox"><cite>tonal пишет:</cite><blockquote><p>Вопрос был именно про 1-вый случай. Со вторым, надеемся, Armor разберётся. :)</p></blockquote></div><p>Вообщем то Guardant Armor нужен и для 1-го случая, а если надо, то дополнительно усилить защиту можно реализовав свои уникальные, хитрые проверки ключа.</p>]]></description>
			<author><![CDATA[null@example.com (Антон Тихиенко)]]></author>
			<pubDate>Thu, 10 May 2018 07:30:21 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3891/#p3891</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3890/#p3890</link>
			<description><![CDATA[<p>Ну, можно рассматривать 2 ситуации:<br />1. С программы и/или с длл-ки удалось &quot;снять&quot; защиту и система работает либо полностью без защиты, либо частично, позволяя перехватить данные на &quot;взломанном&quot; компоненте.</p><p>2. Во время работы системы изменяется код одного из компонентов, что позволяет обходить защиту.</p><p>Вопрос был именно про 1-вый случай. Со вторым, надеемся, Armor разберётся. :)</p><p>Хотя, как мне кажется, возможность коммуницировать со связанными приложениями может серьёзно поднять уровень защиты и это было бы не плохо добавить это в штатные режимы автозащиты. :)</p>]]></description>
			<author><![CDATA[null@example.com (tonal)]]></author>
			<pubDate>Wed, 09 May 2018 10:40:16 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3890/#p3890</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3889/#p3889</link>
			<description><![CDATA[<div class="quotebox"><cite>tonal пишет:</cite><blockquote><p>На старте приложения идёт запрос-ответ.<br />Соответственно длл-ка и приложение могут передать друг другу блок данных.</p><p>Да и головное приложение и dll-ки.</p></blockquote></div><p>Как вариант можно при помощи <a href="https://dev.guardant.ru/display/DOC/10+Guardant+API">Guardant API</a> организовать перекрестную проверку рандомных блоков данных, точнее проверку подписи (ф-ии <a href="https://dev.guardant.ru/display/DOC/GrdSign">GrdSign</a> и <a href="https://dev.guardant.ru/display/DOC/GrdVerifySign">GrdVerifySign</a>) таких блоков. Причем генерировать&nbsp; данные для подписи лучше не только на старте приложения и загрузке библиотеки, но и по другим событиям (например, при некоторых действиях пользователя, по временным меткам, счетчикам и т.п.).</p><p>Т.е. приложение генерирует данные, отправляет для подписи в ключ, получает буфер с подписанными данными и отдает его в библиотеку. Библиотека выполняет проверку подписи и, если все в порядке, то продолжает работать и в свою очередь также генерирует данные, подписывает их при помощи аппаратного ключа, а приложению отдает для проверки.</p><p>Таким образом библиотека и приложение могут производить некую взаимную аутентификацию и проверку наличия нужного аппаратного ключа. Но это не защита именно кода самого приложения, для этого есть Guardant Armor.</p>]]></description>
			<author><![CDATA[null@example.com (Антон Тихиенко)]]></author>
			<pubDate>Tue, 08 May 2018 06:57:55 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3889/#p3889</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3888/#p3888</link>
			<description><![CDATA[<div class="quotebox"><cite>Антон Тихиенко пишет:</cite><blockquote><p>Какие именно механизмы коммуникации у библиотеки и приложения есть?</p></blockquote></div><p>На старте приложения идёт запрос-ответ.<br />Соответственно длл-ка и приложение могут передать друг другу блок данных.</p><div class="quotebox"><cite>Антон Тихиенко пишет:</cite><blockquote><p>Доступ к исходным кодам приложения тоже имеется?</p></blockquote></div><p>Да и головное приложение и dll-ки.</p>]]></description>
			<author><![CDATA[null@example.com (tonal)]]></author>
			<pubDate>Mon, 07 May 2018 09:32:41 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3888/#p3888</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3887/#p3887</link>
			<description><![CDATA[<div class="quotebox"><cite>tonal пишет:</cite><blockquote><p>Между основной программой и дллкой есть возможность некоторой коммуникации.<br />Можно ли как-то проверить из программы что дллка не взломана и наоборот?</p></blockquote></div><p>Какие именно механизмы коммуникации у библиотеки и приложения есть?<br />Доступ к исходным кодам приложения тоже имеется?</p>]]></description>
			<author><![CDATA[null@example.com (Антон Тихиенко)]]></author>
			<pubDate>Mon, 07 May 2018 07:50:14 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3887/#p3887</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3886/#p3886</link>
			<description><![CDATA[<p>И ещё вопрос: возможно ли из организовать перекрёстную проверку?</p><p>Ну то есть зашита на основной программе и на дллке, которая является плагином к другой программе.<br />Между основной программой и дллкой есть возможность некоторой коммуникации.<br />Можно ли как-то проверить из программы что дллка не взломана и наоборот?</p><p>Или это нужно решать исключительно своими силами?</p>]]></description>
			<author><![CDATA[null@example.com (tonal)]]></author>
			<pubDate>Mon, 07 May 2018 05:28:35 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3886/#p3886</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3881/#p3881</link>
			<description><![CDATA[<div class="quotebox"><cite>li.volker пишет:</cite><blockquote><p>А возможно ли при помощи Armor защитить только одну dll, которая будет подключаться как плагин в другую программу?</p></blockquote></div><p>Да.<br /></p><div class="quotebox"><cite>li.volker пишет:</cite><blockquote><p>И возможно ли Armor использовать вместе с API? Я в ключ загружаю свои алгоритмы, аппаратные алгоритмы, резервирую память под разные данные. Если я подключу Armor, я так понимаю у меня же нарушиться все содержимое ключа?</p></blockquote></div><p><a href="https://dev.guardant.ru/display/DOC/11+Guardant+Armor">Guardant Armor</a> — это консольная утилита и при защите приложения она использует аппаратный ключ также, как и обычные <a href="https://dev.guardant.ru/pages/viewpage.action?pageId=1277969">консольные утилиты автоматической защиты</a>. Т.е. на момент выполнения защиты в ключе уже должны быть запрограммированные заранее алгоритмы и другие данные, сам Armor ничего в ключ не записывает.</p>]]></description>
			<author><![CDATA[null@example.com (Антон Тихиенко)]]></author>
			<pubDate>Fri, 27 Apr 2018 08:16:50 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3881/#p3881</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3879/#p3879</link>
			<description><![CDATA[<p>А возможно ли при помощи Armor защитить только одну dll, которая будет подключаться как плагин в другую программу?<br />И возможно ли Armor использовать вместе с API? Я в ключ загружаю свои алгоритмы, аппаратные алгоритмы, резервирую память под разные данные. Если я подключу Armor, я так понимаю у меня же нарушиться все содержимое ключа?</p>]]></description>
			<author><![CDATA[null@example.com (li.volker)]]></author>
			<pubDate>Fri, 27 Apr 2018 07:27:58 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3879/#p3879</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3875/#p3875</link>
			<description><![CDATA[<div class="quotebox"><cite>li.volker пишет:</cite><blockquote><p>Под Armor проверки начинают медленно работать, и запуск становится очень долгим. Защита конечно хорошая, но не всегда требуется такой уровень.</p></blockquote></div><p>Запускали приложение под <a href="https://dev.guardant.ru/pages/viewpage.action?pageId=1279358">профайлером</a>?<br />Также можно исключить из защиты заведомо тяжеловесные функции перечислив их в специальном *.ini-файле (опция <strong>-INI=&lt;ini-файл&gt;</strong>).</p>]]></description>
			<author><![CDATA[null@example.com (Антон Тихиенко)]]></author>
			<pubDate>Wed, 25 Apr 2018 08:04:35 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3875/#p3875</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3873/#p3873</link>
			<description><![CDATA[<p>Под Armor проверки начинают медленно работать, и запуск становится очень долгим. Защита конечно хорошая, но не всегда требуется такой уровень.</p>]]></description>
			<author><![CDATA[null@example.com (li.volker)]]></author>
			<pubDate>Wed, 25 Apr 2018 07:41:11 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3873/#p3873</guid>
		</item>
		<item>
			<title><![CDATA[Re: Электронная цифровая подпись]]></title>
			<link>https://forum.guardant.ru/post/3872/#p3872</link>
			<description><![CDATA[<div class="quotebox"><cite>tonal пишет:</cite><blockquote><p>Здравствуйте.<br />Вопрос возник от того, что кроме основного приложения в проекте существует ещё несколько нативных dll.<br />Причём одна из них грузится сторонним приложением.<br />Вот их целостность и хочется контролировать.</p></blockquote></div><p>Эти библиотеки также можно защитить и привязать к ключу с помощью Guardant Armor.</p>]]></description>
			<author><![CDATA[null@example.com (Антон Тихиенко)]]></author>
			<pubDate>Wed, 25 Apr 2018 07:22:10 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/3872/#p3872</guid>
		</item>
	</channel>
</rss>
