¿Cuál es la mejor manera de crear un programa que funciona sólo en el período de prueba predefinida (periodo de evaluación)?

StackOverflow https://stackoverflow.com/questions/2481320

  •  21-09-2019
  •  | 
  •  

Pregunta

Es necesario crear una sencilla aplicación que no funciona después de 30 días.

¿Cómo puedo hacer eso?

¿Hay una manera de utilizar el programa de prueba después de 30 días?

¿Fue útil?

Solución

Siempre hay una manera de utilizar un programa de prueba después de 30 días.

Otros consejos

Si por "mejor" que significa menos frágil, a continuación, en realidad sólo hay un camino: lo convierten en un "software como servicio" basado en Internet aplicación. Si no se proporciona acceso, que no está utilizando el software. Si se trata de una aplicación basada en escritorio , a continuación, algunos pieza clave de funcionalidad aún tendría que estar en un servidor en línea en alguna parte.

Si el hacker tiene toda la aplicación en su máquina local, puede ser ingeniería inversa y "agrietado" de alguna manera. La única manera de superar esto es para asegurar que una parte de la funcionalidad nunca está en su máquina.

Creo que la mejor solución es una aplicación limitada en características - digo que puede hacer las operaciones básicas, pero para aprovechar las mejores características que tiene que obtener una licencia de pago. Esto hace dos cosas - asumiendo que su aplicación es bien hecho e interesante para una variedad de usuarios. En primer lugar, se puede obtener un mayor número de personas a probar su aplicación. En segundo lugar se puede conseguir un poco de buena voluntad por la liberación de la versión "light" libre.

Si realmente necesita hacer una prueba limitada en el tiempo, entonces habría que considerar la posibilidad de escribir una clave de cifrado en el registro (Windows) o un archivo de puntos (Linux). Esta clave podría codificar la fecha de caducidad. El uso de cifrado reversible le permite obtener este valor de vuelta. El uso de una clave secreta ayuda a proteger contra alguien que genera su propia clave (válido). La aplicación con licencia podría utilizar el mismo mecanismo clave, pero el cifrado de un valor clave que permite un uso permanente.

Desde mi respuesta a ejecución de la espiración-fechas-en-una -aplicación / 1871218 # 1871218 :

  

Probablemente el más fácil de usar para hacer esto es hacer un seguimiento del número de días que un usuario ha utilizado el software. Por ejemplo, cada vez que el programa se pone en marcha se podría escribir una fecha para un archivo cifrado (a menos que la fecha ya existe en el archivo). Luego, una vez que hay más de, digamos, 30 fechas en el archivo, que el usuario sepa que es hora de comprar la versión completa.

     

Los productos reales tales como Más allá de comparar el uso de este esquema - grande para los clientes potenciales que instalan su producto y no utilizarlo durante 30 días para encontrar que la prueba ha caducado.

También hay que tener en cuenta que su esquema no tiene que ser perfecto, solo que sea lo suficientemente fuerte que no será conveniente para los usuarios de romperlo.

Tener la solicitud programar una tecla de su servidor en la primera ejecución y comprobar su validez cada vez que se inicia el programa y cada 24 horas.

Otra opción es tener un compilador del lado del servidor al descargar la aplicación. Esto puede "inyectar" una clave de licencia en el binario. Esto se puede hacer usando una constante en un archivo separado. Esto puede estar relacionado con los otros archivos pre-comiled. Este método es más lento pero más difíciles de descifrar y cuando el hacker tendría que descompilar el programa.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top