Как я могу предотвратить обратное проектирование файлов .war JavaEE 6?

У нас есть несколько приложений JavaEE 6 (файлы .war), которые нам нужно защитить от реверс-инжиниринга, но, похоже, здесь не так много доступных вариантов.

Мне нравится идея зашифрованного файла .jar (SJAR), используемого в продуктах JarCrypt / JInstaller , но не ясно, будет ли JarCrypt / JInstaller работать на сервере приложений JavaEE 6, таком как Glassfish3.1. .Зашифрованные файлы SJAR должны быть расшифрованы собственной библиотекой с использованием пользовательского загрузчика классов, поэтому, очевидно, мне придется добавить пользовательский загрузчик классов в Glassfish.

Кто-нибудь использовал технологии JInstaller / JarCrypt? Работают ли они на сервере приложений ?

Я также рассмотрел обфускацию, но для приложений JavaEE есть много проблем. Мне пришлось бы оставить все веб-службы и поиск JNDI в покое. Использование таких вещей, как abcMyClass.class (то есть для создания логгеров log4j) проблематично. Чтение файлов журналов становится затруднительным. И для всех этих проблем обфускат ion практически ничего не делает для защиты нашего кода.

Я пробовал Proguard, но очевидно, что он не может работать с библиотеками JavaEE 6 .

Есть ли другие альтернативы, или это все, что у меня есть?

Спасибо.

9
задан Community 23 May 2017 в 12:10
поделиться