¿Cuál es la mejor manera de ocultar el código fuente de una aplicación web (JavaScript) de miradas indiscretas?

Realmente no creo que esto sea algo que debas intentar. Lo que se envía al navegador del usuario para ejecutar se convierte en propiedad del navegador. A la mayoría de los usuarios no les importará, siempre y cuando el producto sea lo suficientemente convincente, mientras que aquellos que significan que no se dañarán de ninguna manera serán detenidos por intentos tontos de dificultar la lectura del Javascript. Asumirán que estás ocultando algo más e intentarán descubrir qué es.

Recuerdo un sitio web de empleos bien conocido en la República de Irlanda que me hizo esto, hace unos años. Comencé a investigar, porque estaba usando un escritorio Linux en ese momento, y el Javascript solo había sido probado en Internet Explorer. Intentaba enviar mi CV al sitio, pero el Javascript me lo impedía. Al corregir algunos de los errores de JavaScript más elementales y construir formularios locales para POST o GET los valores necesarios para la aplicación web, avancé en el proceso de envío, pero descubrí que también podía crear inyecciones SQL a través de solicitudes AJAX, que me enviaría de vuelta pilas enteras de datos XML, que contienen nombres de usuario, direcciones y contraseñas (en texto plano, por supuesto).

Los envié y un correo electrónico que detalla la vulnerabilidad. Nunca escuché nada de ellos. Todavía están en el negocio, pero no he probado si siguen siendo tan inseguros como lo eran en aquel entonces. No hace falta decir que nunca les envié mi CV.

Recuerde que las miradas curiosas son solo eso: son las miradas curiosas . si temes lo que verán, nunca se los envíes en primer lugar.

El compilador de cierre de Google ( http: //closure-compiler.appspot …) debería ayudar a ofuscar su código JavaScript. Lo compila, hace que sea más difícil de leer para los humanos (al tiempo que hace que su código se cargue más rápido). También puedes usar compiladores similares para compilar tu CSS.

Para HTML, no tienes suerte.

Para ocultar el código del lado del servidor, solo asegúrese de que las personas no puedan acceder a sus archivos PHP (y similares) directamente (use htaccess para configurar los permisos si aún no los ha denegado).

Depende de lo que tu aplicación web esté tratando de lograr. Me movería lo más posible al código creado por el servidor web, como PHP o .NET. Lo siguiente sería considerar JavaScript del lado del servidor. Sin embargo, simplemente comprimir el JavaScript para que use variables cortas y nombres de funciones es una solución buena y fácil. Es difícil descomprimirlos y aún así poder interpretarlos fácilmente.