Как заблокировать скомпилированные классы Java для предотвращения декомпиляции?
Я знаю, что это должна быть очень хорошо обсуждаемая тема в Интернете, но я не мог прийти к какому-либо выводу после их передачи.
Многие люди предлагают обфускатор, но они просто переименовывают классы, методы и поля с жесткими для запоминания последовательностями символов, но как насчет чувствительных постоянных значений?
Например, вы разработали компонент шифрования и дешифрования на основе метода шифрования на основе пароля. Теперь в этом случае любой средний Java-человек может использовать JAD для декомпиляции файла класса и легко получить значение пароля (определенное как постоянное) как а salt и, в свою очередь, может расшифровать данные, написав небольшую независимую программу!
Или должны ли такие чувствительные компоненты быть построены в собственном коде (например, VС++) и вызвать их через JNI?