Tricks: Як зашифрувати MSIL?

вторник, 18 ноября 2008, Oleksandr Reminnyi

оли розроблялась платформа .NET, одним з найважливіших лозунгів МS була можливість використання коду знову і знову, без того, щоб багато разів його переписувати. Отже, коли ви пишете б-я код на .NET, компілюєте, викладаєте вашу програму (dll, exe) для відкритого закачування, ви можете на 100 % бути впевненим, що якщо захоче користувач, він зможе знову використати ваш код :).

Така вже технологія – що дозволяє „розкомпілювати” ваш код. Не зовсім приємно, коли до випуску готується комерційна програма. Швидко і зручно переглянути сорси ваших конкурентів вам допоможе програма: .NET Reflector.

http://www.red-gate.com/products/reflector/

Скромний лозунг у них: Explore, browse, and analyze .NET assemblies

Але це для Вас, щоб аналізувати чужий код. А як же захистити свій власний?

1. Використання обфускаторів.

Дивне це слово :). Що ж вони роблять?

Аналізують ваш код та змінюють назви, назви, назви.

До:

        private void CalcPayroll(SpecialList employeeGroup)
        {
            while (employeeGroup.HasMore())
            {
                employee = employeeGroup.GetNext(true);
                employee.UpdateSalary();
                DistributeCheck(employee);
            }
        }

Після:

        private void _1(_1 _2)
        {
            while (_2._1())
            {
                _1 = _2._1(true);
                _1._1();
                _1(_1);
            }
        }

Детальніше про обфускацію: http://www.aspnetmania.com/Articles/Article/33.html

2. Використання .NET Reactor

Що він робить – дивіться власними очима:

До:

Після:

Знайти цей тул можна тут: http://www.eziriz.com/

3. Винесення найважливіших частин коду в сервіси чи аналогічні варіанти...

Щоб ваша інтелектуальна власність зберігалась віддалено від „кривих” та неприємних конкурентів.

Вибирайте та користуйтесь;).


Ищите нас в интернетах!

Комментарии

Свежие вакансии