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!
Respuestas:
Esta no es realmente una guerra que puedas ganar con el enfoque que has trazado. Como otros han señalado, simplemente deshabilitando la red, o haciendo clic en "no" cuando el cortafuegos le pregunta si permite o no que su aplicación llame a su casa, omitirá el teléfono de la casa. Aparte de eso, los usuarios odian absolutamente este tipo de cosas, y es posible que se le solicite explícitamente que marque una casilla de verificación que dice que entiende lo que el sistema está a punto de llamar a casa (de acuerdo con la ley en algunos países).
¿Entonces que puedes hacer? Mi consejo sería:
fuente
Con algo como esto, debes hacerte a ti mismo (o a tu jefe) la siguiente pregunta:
Si son menos, entonces ve por ello. En este caso, supongo que su software tiene un alto valor (como Microsoft Word o AutoCAD) y la gente no se preocupará por llamar a casa de vez en cuando.
Si son mayores, le sugiero seriamente que no implemente nada demasiado complejo (o de hecho nada) y que se esfuerce por ganar dinero del software de otras maneras. Podrías cobrar por el soporte, o para que las personas participen en el programa de desarrollo, o cualquier otra cantidad de cosas.
Otra cosa a tener en cuenta es que si alguien está decidido a piratear su software, lo hará y agregar más capas no los detendrá, pero molestará a sus usuarios legítimos.
fuente
Una inquietud que no parece abordarse aquí es "se ha ido a la quiebra". Si bien esto puede parecer una variación de "la red está inactiva", es una situación más permanente. Me he encontrado con esto en varios productos para desarrolladores.
fuente
Mi observación es que depende mucho del mercado vertical donde está distribuyendo su aplicación. Algunos son mucho más propensos a la piratería y otros usos no autorizados que otros. Por ejemplo, nunca lanzaré otro producto al mercado de Internet y al mercado de SEO sin hacer un "teléfono de casa" y otras protecciones. La piratería generalizada y casual es la regla en ese nicho. En otros nichos de mercado en los que he trabajado, como el procesamiento de reclamos médicos, me sentiría más cómodo con una protección de copia más flexible.
Como mencionó Daniel B, mover la aplicación en línea, en su totalidad o en parte, es una opción potencial. Este es mi plan actual para una nueva aplicación en la que estoy en la fase de diseño en este momento.
fuente
De las desventajas de los dongles :
fuente