<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум Guardant &mdash; Технологии защиты]]></title>
	<link rel="self" href="https://forum.guardant.ru/feed/atom/forum/3" />
	<updated>2025-12-13T11:15:26Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.guardant.ru/</id>
		<entry>
			<title type="html"><![CDATA[Английская версия GrdDrivers.exe]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1110/new/posts/" />
			<summary type="html"><![CDATA[<p>Здравствуйте!<br />Есть необходимость, чтобы установщик драйверов GrdDrivers.exe отображался на английском языке. У меня Windows 11 с английским интерфейсом. При запуске GrdDrivers.exe все строки на русском. Скачивал GrdDrivers.exe с англ. версии сайта guardant.com, но он также отображается по-русски.<br />Скажите, где можно взять англ. версию GrdDrivers.exe или как заставить GrdDrivers.exe отображаться на русском языке?</p>]]></summary>
			<author>
				<name><![CDATA[Phaza7]]></name>
				<uri>https://forum.guardant.ru/user/705/</uri>
			</author>
			<updated>2025-12-13T11:15:26Z</updated>
			<id>https://forum.guardant.ru/topic/1110/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Что выбрать для кроссплатформенного приложения, .NET или нативный код?]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1109/new/posts/" />
			<summary type="html"><![CDATA[<p>Господа!</p><p>Выбираем на чём делать приложение для windows и linux&nbsp; c GUI. <br />Без учёта защиты предпочтительно было бы на С#, .NET Core, Avalonia. Но!<br />У вас на сайте во многих местах написано </p><div class="quotebox"><blockquote><p>не гарантируется поддержка сборок с Reflection API и GUI-фреймворков, реализующих MVVM (в частности, WPF и AvaloniaUI).</p></blockquote></div><p>Например, тут <a href="https://dev.guardant.ru/display/KB/0023">https://dev.guardant.ru/display/KB/0023</a>.</p><p>Положим, для Avalonia MVVM опционально, но рефлексия в .NET используется очень много где, сериализация, базы ...<br />Поискав по форуму немного вижу ссылок про .NET приложения c GUI, в основном проблемы которые неизвестно как были решены.</p><p>Не хотелось бы начать разработку на Avalonia а потом получить нерешаемые проблемы.<br />Внесите, пожалуйста, ясность, стоит ли использовать с вашими ключами такой вариант или не стоит и нужно разрабатывать приложение компилируемое в машинный код?</p><p>Вы уже давно поддерживаете .NET, какая то статистика у вас накопилась.&nbsp; Что посоветуете?</p>]]></summary>
			<author>
				<name><![CDATA[Алексей]]></name>
				<uri>https://forum.guardant.ru/user/395/</uri>
			</author>
			<updated>2025-12-10T21:48:44Z</updated>
			<id>https://forum.guardant.ru/topic/1109/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Возможность обхода проверки сетевых лицензий]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1108/new/posts/" />
			<summary type="html"><![CDATA[<p>Добрый день.<br />Извините за кликбейтное название поста, но по сути вопрос именно в этом.<br />Наша компания рассматривает сценарии использования сетевых ключей от Guardant. Загрузил SLK, более менее разобрался, как использовать API для проверки лицензии в C/C++/Python. Также попросили посмотреть на легкость обхода лицензии. Возникла пара вопросов.<br />1) Тестовая конфигурация: <br />минимальное тестовое приложение на С, вызывает GrdFeatureLogin()<br /> и GrdFeatureLogout(). </p><div class="codebox"><pre><code>const char* visibility =
&quot;{ \&quot;remoteMode\&quot;: 2, \
\&quot;controlCenter\&quot;: \
{ \
\&quot;hostName\&quot;: [ \&quot;127.0.0.1\&quot; ], \
\&quot;connectionTimeout\&quot; : 10 \
} \
}&quot;;</code></pre></div><p>И приложение и ControlCenter работают на локальной машине с Ubuntu, на ней же установлена лицензия.</p><p>С помощью WireShark записал обмен с ControlCenter на порте 3189. После обмена HTTP&nbsp; пакетами обмен переходит на WebSockets по grdnet-protocol. Записал payload двух пакетов, отправляемых ControlCenter приложению. Подменил&nbsp; ControlCenter на сервер, который шлет эти ответы. Результаты для меня неожиданные —&nbsp; GrdFeatureLogin и Logout успешно отрабатывают для любого feature ID.</p><p>Конфигурация не столь искусственна, как может показаться: мы планируем дать пользователю возможность настраивать IP адрес, на котором находится ControlCenter и возможность rehost лицензии.<br />Собственно, вопрос — это ожидаемое поведение? Если да, то как от него защититься? Усложнить анализ путем увеличения трафика (навтыкать много разных обращений к GCC через API)?</p><p>2. Работа через API предполагает использование статической или динамической библиотеки grdlic (как минимум в Linux исполнении).&nbsp; При линковке нативного приложения я могу использовать статическую библиотеку, убрать символы и обфусцировать. В случае python wrapper предполагается&nbsp; использовать именно динамическую библиотеку. Так ли я понимаю, что в случае динамической библиотеки нет никакой, предоставляемой guardant, защиты от ее подмены на stub? </p><p>Я ни в коей мере не являюсь специалистом по защите или взлому, так что мои вопросы могут показаться тривиальными и ответы очевидными. Тем не менее буду благодарен за ответы)</p>]]></summary>
			<author>
				<name><![CDATA[Павел]]></name>
				<uri>https://forum.guardant.ru/user/2745/</uri>
			</author>
			<updated>2025-12-09T08:46:45Z</updated>
			<id>https://forum.guardant.ru/topic/1108/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Про rust и не только]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1107/new/posts/" />
			<summary type="html"><![CDATA[<p>Здравствуйте.</p><p>Во первых, у вас в разных местах на сайте либо не указан rust, либо указан только для linux (<a href="https://dev.guardant.ru/pages/viewpage.action?pageId=71476159">https://dev.guardant.ru/pages/viewpage. … d=71476159</a>).</p><p>Предполагаю что утилита автозащиты приложение rust зашифрует, а дело просто в том что вы не предоставляете rust-овский крейт для доступа к Guardant API. Если так, не страшно. ИИ поможет его сделать из h файла.<br />Но хочу уточнить на всякий,&nbsp; может быть существуют какие то принципиальные тонкости и защищать стоит только приложения на указанных у вас языках?</p><p>Второй момент. На форуме прочитал что технология SLK требует ключей выпущенных начиная с 2020 года. У наших пользователей много ваших ключей Sign и более ранних выпусков и мы собираемся предоставить и им доступ к будущему приложению.<br />Приложение будет и для win, и для linux. Ранее мы защищённые приложения для linux не делали. Как я понял, автоматическая защита может быть навешана под windows на linux - исполняемый файл или so ? Сборка приложения в linux, в том числе с использованием Guardant API, потом копирование в windows и навешивание автозащиты там. Если так, устраивает если это про SDK, т.к., если для защиты под linux потребуется переходить на SLK и менять ключи у пользователей, ну, тогда надо думать ...</p>]]></summary>
			<author>
				<name><![CDATA[Алексей]]></name>
				<uri>https://forum.guardant.ru/user/395/</uri>
			</author>
			<updated>2025-12-07T23:58:09Z</updated>
			<id>https://forum.guardant.ru/topic/1107/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Включение и определение режима HID]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1105/new/posts/" />
			<summary type="html"><![CDATA[<p>Здравствуйте.</p><p>Наш продукт использует ключи Guardant Sign, которые умеют работать в режиме HID.<br />Для предпродажной подготовки ключей используется собственный софт для прошивки памяти ключа.</p><p>С переводом в режим HID я разобрался, надо вызывать GrdProtect с параметром dwGlobalFlags=GrdGF_HID.</p><p>Не понятно, как и когда использовать функцию GrdSetDriverMode.<br />У меня всегда выдает ошибку 1 GrdE_DongleNotFound.<br />В примерах из SDK нигде не вызывается.<br />Проблема в том, что ключ Sign, а не Code? Хотелось бы пояснений на этот счет.</p><p>Второй вопрос по определению текущего режима ключа Guardant driver/HID.<br />Утилита grddiag.exe показывает &quot;Глобальные флаги HID&quot;.<br />Как мне программно считать глобальные флаги?<br />В адресах GrdSAM_... или GrdUAM_... для GrdRead ничего похожего не нашел.</p><p>Если я руками в grdutil.exe переключаю Driver/HID в панели инструментов, то вижу, что в .nsd-файле меняется 4 байта со смещением 4 в Data. Как мне в runtime поймать это отличие в памяти ключа?</p>]]></summary>
			<author>
				<name><![CDATA[burlak]]></name>
				<uri>https://forum.guardant.ru/user/2732/</uri>
			</author>
			<updated>2025-12-02T10:28:35Z</updated>
			<id>https://forum.guardant.ru/topic/1105/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Работа с DL из PHP на Linux]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1103/new/posts/" />
			<summary type="html"><![CDATA[<p>Добрый день.<br />Есть сервис на php. Передача клиент/сервер использует аппаратное AES шифрование. <br />Клиент на C#, там проблем нет.<br />Серверная часть на php/debian. Сейчас для encode/decode написана программа на C++, которая вызывается из php скрипта. Решение, мягко говоря, так себе.<br />Планируется ли библиотека и примеры под php8?</p>]]></summary>
			<author>
				<name><![CDATA[hexprof]]></name>
				<uri>https://forum.guardant.ru/user/1881/</uri>
			</author>
			<updated>2025-11-08T13:52:07Z</updated>
			<id>https://forum.guardant.ru/topic/1103/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[GrdSRC()выбрасывает исключение]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1099/new/posts/" />
			<summary type="html"><![CDATA[<p>Пытаюсь перейти на SDK 7.9 с SDK 6.3.1.</p><p>Обнаружил, что GrdCRC() выбрасывает исключение &quot;Range Check Error&quot; на некоторых данных.</p>]]></summary>
			<author>
				<name><![CDATA[vlad-mal]]></name>
				<uri>https://forum.guardant.ru/user/767/</uri>
			</author>
			<updated>2025-09-23T11:11:06Z</updated>
			<id>https://forum.guardant.ru/topic/1099/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Программно узнать ID ключа]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1098/new/posts/" />
			<summary type="html"><![CDATA[<p>Добрый день. Хочу узнать ID используемого ключа программно (через API) - и что-то не вижу похожих функций. А он (ID) точно есть. В какую сторону копать?</p>]]></summary>
			<author>
				<name><![CDATA[Aleksandr]]></name>
				<uri>https://forum.guardant.ru/user/2674/</uri>
			</author>
			<updated>2025-09-23T08:38:15Z</updated>
			<id>https://forum.guardant.ru/topic/1098/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[GrdTRU под linux]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1096/new/posts/" />
			<summary type="html"><![CDATA[<p>Иногда GrdTRU работает у клиентов под wine. Но все чаще слышим от них, что wine &quot;нет и не будет&quot;. Ознакомился с документацией на обновление через API <a href="https://dev.guardant.ru/pages/viewpage.action?pageId=1278396">https://dev.guardant.ru/pages/viewpage. … Id=1278396</a>. Хочется, чтобы на стороне клиента в нашем ПО были вызовы GrdTRU_GenerateQuestion и GrdTRU_ApplyAnswer, а на нашей стороне было редактирование прошивки в программе grdutil. Как превратить результат работы GrdTRU_GenerateQuestion в число-вопрос для grdutil? И как превратить число-ответ, сформированное grdutil, в то, что поймет GrdTRU_ApplyAnswer?</p>]]></summary>
			<author>
				<name><![CDATA[AZ]]></name>
				<uri>https://forum.guardant.ru/user/459/</uri>
			</author>
			<updated>2025-08-28T15:55:35Z</updated>
			<id>https://forum.guardant.ru/topic/1096/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Плавный переход с SDK на SLK]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1093/new/posts/" />
			<summary type="html"><![CDATA[<p>Имеется старое приложение, работает через SDK. Пишем новое приложение, хотим применить SLK. Возможно ли:<br /></p><ul><li><p>Перепрошить старые ключи Sign, Stealth II для нового приложения</p></li><li><p>Сделать единую прошивку, подходящую для обоих приложений, чтоб SDK и SLK работали с одним и тем же физическим ключом</p></li></ul>]]></summary>
			<author>
				<name><![CDATA[AZ]]></name>
				<uri>https://forum.guardant.ru/user/459/</uri>
			</author>
			<updated>2025-07-17T11:31:37Z</updated>
			<id>https://forum.guardant.ru/topic/1093/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[station: элемент памяти]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1087/new/posts/" />
			<summary type="html"><![CDATA[<p>При добавлении параметра смещение откуда считается? От предыдущего параметра или от начала?<br />И почему изначально там 0, но если поменять, то вернуть 0 обратно не получается?</p>]]></summary>
			<author>
				<name><![CDATA[barlone]]></name>
				<uri>https://forum.guardant.ru/user/2007/</uri>
			</author>
			<updated>2025-05-30T09:40:03Z</updated>
			<id>https://forum.guardant.ru/topic/1087/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Station прошивка в режиме HID]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1079/new/posts/" />
			<summary type="html"><![CDATA[<p>Station - не отчуждаемая<br />Есть ли возможность указать где-то в настройках, чтобы ключи в новом заказе по умолчанию прошивались в HID режиме?<br />Если ключи в заказе были прошиты в драйверном режиме, есть ли возможность перевести в HID, не формируя новый заказ (и не выполняя прошивку повторно) ?</p>]]></summary>
			<author>
				<name><![CDATA[ivanov]]></name>
				<uri>https://forum.guardant.ru/user/2052/</uri>
			</author>
			<updated>2025-03-10T07:38:25Z</updated>
			<id>https://forum.guardant.ru/topic/1079/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Получить количество дней до деактивации алгоритма]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1078/new/posts/" />
			<summary type="html"><![CDATA[<p>Добрый день! Я использую ключи Code Time, задаю время жизни алгоритма через GrdUtil.exe -&gt; Алгоритм №N -&gt; Временные зависимости <span class="postimg"><a class="fancybox fancybox.image" rel="group" href="https://forum.guardant.ru/uploads/images/2025/02/9cf9bfac896ff20b936d07dbc8848e92.jpg"><img class="fb_img" src="https://forum.guardant.ru/uploads/previews/2025/02/9cf9bfac896ff20b936d07dbc8848e92.jpg" alt="" /></a></span></p><p>Я знаю, что могу получить оставшееся время жизни алгоритма через GrdPI_GetTimeLimit(). Но из нее я получу структуру TGrdSystemTime, которая вернет условно: 0 лет, 5 месяцев, 27 дней, 18 часов, 45 мину, 10 секунд...</p><p>Сам вопрос: как мне пересчитать эти данные в количество оставшихся дней? Имею ли я право просто перемножить года на 365, а месяцы на 30 и сложить? Или внутренний механизм отсчета времени ключа как-то учитывает кол-во дней в текущих месяцах и високосный год?</p><p>Надеюсь объяснился понятно, заранее спасибо!</p>]]></summary>
			<author>
				<name><![CDATA[olegneyfeld]]></name>
				<uri>https://forum.guardant.ru/user/2264/</uri>
			</author>
			<updated>2025-02-12T07:38:11Z</updated>
			<id>https://forum.guardant.ru/topic/1078/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Удаленное обновление ключей]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1076/new/posts/" />
			<summary type="html"><![CDATA[<p>У меня никак не получается улаленно обновить ключ.<br />Я использую функцию vGrdResult = GrdApi.GrdTRU_SetAnswerProperties(vGrdHandle, GrdTRU.Flags_Init | GrdTRU.Flags_Protect, 938, 938, 9, 0, 0);<br />Основная память ключа перезаписывается, а дополнительная защищенная нет.<br />Что я не так делаю?<br />С уважением, Святослав</p>]]></summary>
			<author>
				<name><![CDATA[Святослав]]></name>
				<uri>https://forum.guardant.ru/user/961/</uri>
			</author>
			<updated>2025-02-05T03:03:33Z</updated>
			<id>https://forum.guardant.ru/topic/1076/new/posts/</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Использование Guardant Code в Linux ARM64]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/topic/1075/new/posts/" />
			<summary type="html"><![CDATA[<p>Добрый день.<br />Может ли мне кто-нибудь пояснить, могу ли я в Linux для ARM64 как-либо воспользоваться функционалом загрузки своего кода (Loadable Code) в Guardant Code через grdapi.h ?&nbsp; В Linux для x86 и х64 проблем нет, но мне нужно именно для ARM64.<br />Или для ARM64 доступен только функционал работы с лицензиями (через grdlic.h)?<br />Кто нибудь сталкивался с такой задачей?</p>]]></summary>
			<author>
				<name><![CDATA[tenzor-rt]]></name>
				<uri>https://forum.guardant.ru/user/2148/</uri>
			</author>
			<updated>2024-12-23T08:09:20Z</updated>
			<id>https://forum.guardant.ru/topic/1075/new/posts/</id>
		</entry>
</feed>
