Обфускатор должен быть с гуи:
.
Вот пример файла после обфускации:
1. Обфускатор должен добавлять инструкции в байт-код, которые скроют тела методов и заставляют декомпеляторы добавлять комментарий о невозможности декомпиляции
2. Все строки в байткоде должны быть обфусцированы. Их расшифровка происходит в RunTime.
3. Обфускатор должен добавлять мусорные строки в код, что бы idea дольше открывала обфусцированный класс.
4. Open souce деобфускатры не должны расшифовать код.
5. В гуи обфускатора должна быть возможность указать название и кол-во мусорных полей (например static String code_obf; Пример:
.
6. Названия переменных, аргументов и методов должны быть обфусцированы, и их имена не должны повторяться.