2009-01-18 10 views
7

Estoy a punto de entregar una aplicación Adobe AIR a un cliente. Pero es mi primera entrega de cualquier tipo, es decir Tengo sin experiencia alguna con licencias, etc.protección de adobe air apps

Los usuarios de esta aplicación pueden o no estar en línea, por lo que no pueden contar con eso. De hecho, es 99% seguro de que estarán fuera de línea.

Tampoco espero que sean muy conocedores de la tecnología, ¿quién va a pasar suficiente tiempo buscando formas de "crackearlo".

Entonces, ¿hay algún tipo de forma okeish para proteger esta aplicación ? Es decir, no quiero que la gente simplemente copie la carpeta de instalación, llévela a otra máquina y ejecútela. Debería ser un poco más difícil que esto.

Ah, y también estoy usando PHP y MySql, con el cual se comunica esta aplicación de AIR. Así que cualquier cosa con la que me puedan ayudar es muy bienvenido.

+0

Si el 99% de los usuarios estarán desconectados pero la aplicación requiere un backend PHP y MySQL ... ¿cómo funciona la aplicación? – dragonmantank

Respuesta

0

No puede proteger nada que esté basado en la web o en JavaScript, simplemente porque hay un código fuente completo.

Cualquier persona que sepa cómo usar 'clic derecho' podría copiar sus archivos. Puedes ofuscar tu código, pero no puedes protegerlo. Si crees que esto no debería ser posible, escribe una aplicación de escritorio en un lenguaje de programación "real".

3

proteger la aplicación php api y no la aplicación de frontend. tener una clave de licencia que está vinculada a una dirección IP y autenticar la solicitud (que contiene la clave) proviene de la dirección IP correcta.

+0

Las direcciones IP cambian con frecuencia. No diría que este es un enfoque sensato y es probable que cabree a muchos clientes que pagan. –

+0

Enlazar cuentas a una dirección IP es probablemente una mala idea, pero la idea de proteger la API y no la interfaz es la forma correcta de hacerlo, creo. La API y el acceso a ella están completamente bajo su control. La aplicación de front end nunca lo será. –

1

Si quiere proteger su aplicación Flex, puede usar irrObfuscator. Hay una demostración gratuita de 30 días.

Si desea ofuscar su código PHP, sugeriría ioncube. Hay un ofuscador en línea que puede pagar a la carta. Bastante útil. Aunque necesita cargadores ioncube, que es un conjunto de extensiones PHP que encontrará en la sección de productos. No estoy seguro, pero creo que puede instalar cargadores sin jugar con la configuración de PHP, por lo que es amigable con el alojamiento compartido.

0

Cuando la aplicación se instala, yo haría lo siguiente:

  1. crear un archivo en "app-storage" que básicamente indica que la aplicación se ha instalado.
  2. fuego de una llamada de servicio y crea un registro de la instalación
  3. cambiar un archivo en el directorio de aplicación para indicar la aplicación se ha instalado

En ejecuciones posteriores, verificar la presencia del archivo como siempre que el archivo en el directorio de la aplicación indique que se ha instalado la aplicación. Si ve que el cliente sigue instalando su aplicación una y otra vez, esto podría marcarse en su cuenta y tomarse las medidas adecuadas. Si quieres ser elegante, el archivo en "almacenamiento de aplicaciones" podría ser un hash unidireccional de cierta información del archivo en el directorio de la aplicación (¿fecha de instalación?) Más algún valor almacenado en la aplicación AIR.

En general, creo que la clave aquí es confiar en sus usuarios y no asumir que están intentando robar. Desea que el sistema sea lo menos doloroso posible.No crea una buena relación con los clientes cuando los trata como delincuentes, por lo que crear un enfoque "blindado" probablemente ni siquiera sea la mejor idea.

0

Creo que la única buena manera de hacerlo es exigir la activación después de la instalación (activación en línea, con una copia de seguridad del teléfono).

Por lo que dices, parece que el servidor está instalado en el sitio y no podría proporcionar una protección de copia adecuada.

Cuestiones relacionadas