Предлагаю на обсуждение бесплатную утилиту защиты NetObf-Protector
Назначение: защита приложений от взлома (декомпиляция, изучение кода), написанных на C#, VB, ... (.NET)
Функциональные возможности:
— Символьная обфускация. Переименование классов, методов, полей в набор бессмысленных символов (не читабельные символы);
— Поддержка атрибутов управления обфускацией (System.Reflection.ObfuscationAttribute)
— Обфускация символьных данных (шифрование строк);
— Объединение сборок;
— Strong name. Поддержка подписи сборок с использованием ключей .SNK или .PFX
— Поддержка .NET Framework: 1.1/2.0/3.0/3.5
Утилита проста в применении.
Поддерживает 2-а режима работы
— Создание защищенного закрытого проекта.
— Создание защищенного открытого проекта (плагины, библиотеки классов для внешнего использования)
Здравствуйте, ARMSoft, Вы писали:
ARM>тулзу не смотрел, но ИМХО именовать значения Feature так бессмысленно — большие проблемы в будующем (если оно у неё будет) с расширением функционала.
Не вижу причины проблем с будущим расширением, Feature — содержит просто строку,
если что то новое потребуется, можно просто другие строки использовать (например Feature="Clear:Public")
к тому же можно для одного объекта (класса, метода..) задавать подряд несколько
атрибутов [System.Reflection.Obfuscation] с разным назначением и содержанием.
А простые имена в параметре Feature, легче воспринимаются и запоминаются.
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, nildar, Вы писали:
N>>Предлагаю на обсуждение бесплатную утилиту защиты NetObf-Protector
V>И платная и бесплатные версии выдают у нас неработающие образы, крутили по всякому, с шифрованием и без.
При обфускации нужно соблюдать некоторые правила (сериализация, refletion и т.д.)
Если пришлете пример на котором не отрабатывает как надо (с кратким пояснением),
мы посмотрим, и дадим рекомендации как сделать чтобы заработала,
если же ошибка в обфускаторе, то исправим ошибку.
Пример можно отправить по почте support@netobf.com (в архиве с паролем)
либо на сайте через форму http://netobf.com/support
(на формуе лучше сообщить об отправке, чтобы не потерять письмо)
Здравствуйте, nildar, Вы писали:
N>Предлагаю на обсуждение бесплатную утилиту защиты NetObf-Protector
N>Назначение: защита приложений от взлома (декомпиляция, изучение кода), написанных на C#, VB, ... (.NET)
N>Функциональные возможности:
N>- Символьная обфускация. Переименование классов, методов, полей в набор бессмысленных символов (не читабельные символы); N>- Поддержка атрибутов управления обфускацией (System.Reflection.ObfuscationAttribute) N>- Обфускация символьных данных (шифрование строк); N>- Объединение сборок; N>- Strong name. Поддержка подписи сборок с использованием ключей .SNK или .PFX N>- Поддержка .NET Framework: 1.1/2.0/3.0/3.5 N>Утилита проста в применении. N>Поддерживает 2-а режима работы N>- Создание защищенного закрытого проекта. N>- Создание защищенного открытого проекта (плагины, библиотеки классов для внешнего использования)
N>Подробнее: N>http://netobf.com/ N>http://netobf.com/netobf-protector
N>Скачать: N>http://netobf.com/download
Вышла новая версия утилиты NetObf-Protector 1.0.2
Изменения по сравнению с версией 1.0.1
— Исправлена ошибка при обфускации приложений WindowsForms на VB.NET
Inquartos "NetObf Protector" — бесплатный программный продукт предназначенный для защиты приложений, разработанных на базе платформы Microsoft .NET Framework 1.1/2.0/3.0/3.5
Номер версии: 1.0.4
Изменения по сравнению с версией 1.0.3
— Исправлен механизм переименования классов, методов, ... (ошибка с исключением переименования вложенных классов)
Функциональные возможности:
Символьная обфускация:
Переименование классов, методов, полей в набор бессмысленных символов (не читабельные символы);
Поддержка атрибутов управления обфускацией (System.Reflection.ObfuscationAttribute)
Обфускация символьных данных:
Шифрование строк;
Объединение сборок;
Strong name:
Поддержка подписи сборок с использованием ключей .SNK или .PFX
Поддержка .NET Framework:
.NET Framework v 1.1;
.NET Framework v 2.0;
.NET Framework v 3.0;
.NET Framework v 3.5;
Здравствуйте, nildar, Вы писали:
N>Номер версии: 1.0.4
А Silverlight можете обфусцировать?
По идее это тот же .NET, но многие обфускаторы просто ломают сборку (к примеру тот же Spices.Net от 9Rays).
А вот в DeepSea Obfuscator мне понравилась идея с пресетами. Можно в два клика выбрать нужную гонфигурацию.
Re[3]: Обновление бесплатной утилиты NetObf-Protector v 1.0.
Здравствуйте, HotDog, Вы писали:
HD>Здравствуйте, nildar, Вы писали:
N>>Номер версии: 1.0.4
HD>А Silverlight можете обфусцировать? HD>По идее это тот же .NET, но многие обфускаторы просто ломают сборку (к примеру тот же Spices.Net от 9Rays). HD>А вот в DeepSea Obfuscator мне понравилась идея с пресетами. Можно в два клика выбрать нужную гонфигурацию.
Если пришлете пример на котором не работает, то мы посмотрим и если что сделаем чтобы все работало
пример лучше отправлять через форму тех поддержки
Скажите, я так понял, что "command line" — режим не поддерживается?
Запустил — NetObf.exe /?
Получил —
System.ArgumentException: Путь содержит недопустимые знаки.
в System.Security.Permissions.FileIOPermission.HasIllegalCharacters(String[] str)
в System.Security.Permissions.FileIOPermission.AddPathList(FileIOPermissionAccess access, AccessControlActions control, String[] pathListOrig, Boolean checkForDuplicates, Boolean needFullPath, Boolean copyPathList)
в System.Security.Permissions.FileIOPermission..ctor(FileIOPermissionAccess access, AccessControlActions control, String[] pathList, Boolean checkForDuplicates, Boolean needFullPath)
в System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
в System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
в NetObf.Data.BaseObject.ReadFromFile(String file_name)
в NetObf.Data.Project.Load(String file_name)
в NetObf.t.OnLoad(EventArgs e)
в System.Windows.Forms.Form.OnCreateControl()
в System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
в System.Windows.Forms.Control.CreateControl()
в System.Windows.Forms.Control.WmShowWindow(Message& m)
в System.Windows.Forms.Control.WndProc(Message& m)
в System.Windows.Forms.ScrollableControl.WndProc(Message& m)
А так вообще — очень качественная обфускация!
... << RSDN@Home 1.2.0 alpha 4 rev. 1102>>
Re[3]: Обновление бесплатной утилиты NetObf-Protector v 1.0.
Здравствуйте, krserg, Вы писали: K>Здравствуйте, nildar, Вы писали: K>... K>Скажите, я так понял, что "command line" — режим не поддерживается? K>Запустил — NetObf.exe /? K>Получил -
K> А так вообще — очень качественная обфускация!
Коммандная строка поддерживается но в простом виде, без вывода в консоль,
в качестве первого аргимента указывается полное имя файла проекта.