Estoy haciendo un trabajo de Java para una empresa que tiene algún código que quieren proteger en una aplicación que están entregando a sus clientes.
Por ejemplo, ¿qué sucede si tiene información como FTP o la información de inicio de sesión de DB en el código fuente de la aplicación del lado del cliente? El inicio de sesión sería visible para cualquier persona que haya visto el código, por lo que el acceso a su servidor está abierto, lo que significa que su código en el servidor también sería vulnerable. Debe protegerse la información de inicio de sesión mediante el envío de información mediante HTTPConnection / HTTPClient al servidor que se procesará mientras usa el cifrado en tránsito y el envío de credenciales de inicio de sesión para verificar que la solicitud proviene de una fuente legítima.
Sin embargo, ¿no sería eso también arriesgado en caso de que el servidor sea hackeado / violado, y la fuente de Java esté completamente abierta? (Al parecer, Execelsior puede proteger el servidor con las aplicaciones Tomcat, por lo que también hay eso).
También estaba buscando en varios programas de Java a Exe, como Excelsior Jet, pero también me topé con programas que simulan a Exe's y aparentemente tienen protección como JWrapper.
He leído en esta pregunta enlace
¿Que los ex emulados no están protegidos y aún contienen archivos Jar, así que supongo que la mejor opción son los programas similares a Execelsior Jet, y un programa como JWrapper no sería bueno?
¿A alguien le llevaría más tiempo descompilar el código nativo que intentar piratear un servidor (si supiera qué buscar o si intentamos ocultar algo)? Mi mejor apuesta sería hacer server + Excelsior, pero el precio también sube si quiero obtener su versión Enterprise en lugar de Professional.
Tengo curiosidad sobre qué enfoque recomendarían las personas para los métodos de protección seguros. Gracias.
EDITAR: esta pregunta no es un duplicado, porque la otra pregunta se refiere a la protección del código de aplicación web de "Hosts web".
Estoy preguntando cuál sería el mejor método para proteger mi código fuente. Ya sea de escritorio, o basado en servidor. La otra pregunta podría tener sentido si estaba buscando una solución de servidor, pero no proporciona una solución a mi necesidad.
Gracias.
EDIT2: Parece que el consenso es que "si alguien quiere romper, lo hará ...", pero ¿no tiene sentido protegerlo para evitar que alguien solo vea el código? Hay codificadores que no tienen conocimientos de ingeniería inversa, pero aún pueden entender el código si es legible.