Estoy desarrollando una aplicación que, cuando se compra, se puede activar con una licencia.
Actualmente estoy haciendo validación fuera de línea, lo cual es un poco problemático para mí. Soy consciente de que no hay nada que hacer contra las grietas (es decir, los binarios modificados), sin embargo, estoy pensando en tratar de desalentar la piratería de claves de licencia. Aquí está mi plan actual:
- Cuando el usuario activa el software y después de que la validación fuera de línea es exitosa, intenta llamar a casa y validar la licencia. Si el hogar aprueba la licencia o si no se puede acceder al hogar, o si el usuario está fuera de línea, la licencia se aprueba . Si se llega a casa y dice que la licencia no es válida, la validación falla.
- La aplicación con licencia llama a casa de la misma manera cada vez durante el inicio (en segundo plano). Si se revoca la licencia (es decir, la licencia pirateada o se genera a través de keygen), la licencia se desactiva.
Esto debería ayudar con la piratería de licencias: se deshabilitará una licencia no válida y se podrá revocar una licencia válida que fue pirateada (y su propietario legal recibirá una nueva licencia). Los usuarios piratas se verán obligados a usar una versión descifrada, que generalmente es específica de la versión y más difícil de alcanzar.
Si bien en general me suena bien, tengo algunas preocupaciones:
- A los usuarios no les gustan las llamadas a domicilio y la validación en línea. ¿Te molestaría ese tipo de validación? A pesar de que en caso de fuera de línea / falla, la aplicación permanece con licencia?
- Está claro que todo el esquema se puede frustrar al desconectarse / firewall / etc. Creo que la molestia de hacer uno de estos es lo suficientemente grande como para desalentar el intercambio casual de licencias, pero no estoy seguro.
- Como ocurre en general con las licencias y las variaciones de DRM, no estoy seguro de que el tiempo que dedico a ese tipo de protección no se aproveche mejor al mejorar mi producto.
Agradecería su aporte y pensamientos.
¡Gracias!