Как предотвратить декомпиляцию банки - PullRequest
4 голосов
/ 02 декабря 2011

Я создал проект плагина в Eclipse, распространяемый как jar.Пользователь может взять этот jar-файл и декомпилировать его, используя JAD. Есть ли способ остановить декомпиляцию файла JAR? Или, по крайней мере, скрыть свой исходный код от пользователя?

Ответы [ 2 ]

3 голосов
/ 04 июля 2012

Лучший способ предотвратить декомпиляцию вашей фляги - это не давать пользователям никаких оснований этого хотеть.Обфускация - это просто повязка.На самом деле, некоторые люди, вероятно, повернут его вспять, если он достаточно известен.

3 голосов
/ 12 декабря 2011

Если вы не вставите свой исходный код в jar, ваш исходный код - это не то, что декомпилируется декомпилятором, а нечто подобное.

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

ProGuard - бесплатный инструмент сжатия файлов класса Java, оптимизатор,обфускатор и преферификатор.Он обнаруживает и удаляет неиспользуемые классы, поля, методы и атрибуты.Он оптимизирует байт-код и удаляет неиспользуемые инструкции.Переименовывает остальные классы, поля и методы, используя короткие бессмысленные имена.Наконец, выполняется предварительная проверка обработанного кода для Java 6 или для Java Micro Edition.

Поиск других продуктов с термином obfuscator .

...