2010-07-28 19 views
11

Back story: Estoy planeando implementar un juego informal para implementar en una aplicación web, pero no quiero usar Flash, sino simplemente Javascript. Sin embargo, uno de los beneficios de Flash que deseo es que distribuya un código binario y no el código fuente, por lo que es más fácil proteger su código para que no sea reutilizado o robado por otra persona o para evitar que el cliente modifique el código para "engañar". ¿el juego?¿Cuáles son los métodos de protección de aplicaciones/juegos web de JavaScript?

Así que mi pregunta es: ¿cuáles son las formas de proteger de manera similar una aplicación de Javascript? ¿Estoy limitado a los métodos habituales de usar un ocultador de código? ¿Será eso suficiente?

+8

Downvoter: los votos a favor son malas preguntas, no son preguntas sobre algo que no quieres que haga la gente. No hay nada técnicamente incorrecto en esta pregunta. – Pointy

+2

No creo que sea particularmente posible. Como dices, hay técnicas de ofuscación. Pero en algún momento el navegador debe poder ver el código para interpretarlo, lo que significa que debe proporcionar el código al cliente. – David

+0

@Roy Tang - ofuscar es todo lo que puedes hacer. Tenga cuidado, porque algunos ofuscadores hacen cosas bastante tontas y pueden hacer que su código funcione más despacio. También hacen poco para realmente "proteger" su código. Si considera que su código o algunas técnicas de implementación son valiosas, no las entregue como Javascript en una página web. – Pointy

Respuesta

2

Usa AJAX para que tu juego verifique contra el código del servidor que controlas. Esto también es útil si el juego es multijugador de alguna manera. La verificación impide que alguien modifique el código para hacer trampa.

También Flash no es inmune en absoluto por ser tomado por otra persona. Las personas pueden descargar el binario y publicarlo donde quieran. Y los compiladores de Flash existen y son bastante efectivos.

+0

esto, me gusta la idea de - ¿tiene más información? –

+0

Gracias! Ya estaba considerando esto, pero significa volver a sincronizar mi estado de juego con una llamada ajax con cada cambio de estado ... podría tener una gran cantidad de solicitudes, por lo que me preguntaba si habría alternativas. –

+0

@Roy - En ese caso: ¿qué tipo de juego es? –

3

Un ofuscador de código es todo lo que puede hacer. No importa lo que hagas, el código ejecutable estará/deberá estar disponible en el navegador.

0

¿Por qué, específicamente, quieres que esté en JavaScript? Puede usar node.js para ejecutar código JavaScript en el lado del servidor para las cosas protegidas e interactuar con él desde el lado del cliente JavaScript.

Cuestiones relacionadas