Формирование списка функций включений/исключений

Добрый день!

Прошу прояснить принцип построения дерева функций для .NET-сборок в конфигурационной утилите ExclusionUtility.
В частности, мне непонятно, почему в режиме "Выбор объектов для обязательной обфускации графа потока управления" видны далеко не все имеющиеся функции в классах. В тоже время в режиме "Выбор объектов для исключения из символьной обфускации" список гораздо более полный. В итоге я не могу защитить только нужные мне методы, потому как половины из них нет в режиме включения обязательной обфускации.

Также замечено, что и при работе профайлера отображаются не все имеющиеся функции.

И еще хочется понять, чем отличается "Конфигурационный файл символьного обфускатора" от "Конфигурационный файл защиты функций". И то и другое - .gpp-файл, а в мастере задается в двух разных местах для одной сборки.

Re: Формирование списка функций включений/исключений

Здравствуйте.

MikhailG пишет:

Добрый день!

Прошу прояснить принцип построения дерева функций для .NET-сборок в конфигурационной утилите ExclusionUtility.
В частности, мне непонятно, почему в режиме "Выбор объектов для обязательной обфускации графа потока управления" видны далеко не все имеющиеся функции в классах. В тоже время в режиме "Выбор объектов для исключения из символьной обфускации" список гораздо более полный. В итоге я не могу защитить только нужные мне методы, потому как половины из них нет в режиме включения обязательной обфускации.

Для применения обфускации графа потока управления подходит не такое большое количество типов функций, как для символьной обфускации. Такие функции должны быть делимыми на блоки.

MikhailG пишет:

Также замечено, что и при работе профайлера отображаются не все имеющиеся функции.

Для профайлера также существуют ограничения, например, generic функции.

MikhailG пишет:

И еще хочется понять, чем отличается "Конфигурационный файл символьного обфускатора" от "Конфигурационный файл защиты функций". И то и другое - .gpp-файл, а в мастере задается в двух разных местах для одной сборки.

Соответственно один файл применяется при работе утилиты обфускации (CodeObfuscator.exe) другой при работе утилиты защиты кода .NET-сборки (CodeProtect.exe).

Re: Формирование списка функций включений/исключений

Вот эти ограничения - о них где можно узнать? В данном случае функции не generic.
Т.е. под какие критерии мне нужно функцию подогнать, чтобы её можно было бы защитить обфускатором и/или протектором?

Re: Формирование списка функций включений/исключений

MikhailG пишет:

Вот эти ограничения - о них где можно узнать? В данном случае функции не generic.
Т.е. под какие критерии мне нужно функцию подогнать, чтобы её можно было бы защитить обфускатором и/или протектором?

Для того, чтобы указать на те функции, которые могут вызывать "сомнения" (и по каким причинам) при обработке их .Net-профайлером и\или ExclusionUtility, пришлите, пожалуйста, нам на почту ( hotline@guardant.ru ) тестовый пример (с исходниками) того приложения, где Вы наблюдаете такие функции.