Validación de licencia y llamar a casa

10

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!

VitalyB
fuente
55
Si la casa es inalcanzable y se aprueba, entonces el desarrollo es una pérdida total de dinero y recursos. Haga clic derecho, deshabilite la red, instale. Todos pueden hacer eso. En su lugar, necesita la activación del teléfono, pero es muy molesto para los usuarios.
Codificador
2
Debe tener en cuenta que está entrando en un área gris legal si está "llamando a casa" sin el conocimiento del usuario. AFAIK tiene que decirle al usuario que su programa enviará datos a otra parte.
AndrewC
Si su producto es lo suficientemente caro, puede usar llaves de hardware .
liori
2
editan el archivo hosts para bloquear su IP y nunca encontrará el hogar, y por lo tanto nunca se invalidará ...
Drew
1
Muy fácilmente evitado. Y si lo aprietas, bueno, he tenido suficientes malas experiencias con la activación que necesito una razón extremadamente convincente para comprar algo que necesita activación, e incluso entonces buscaré un pirata pirata a pesar de que he pagado. Si una empresa como Adobe no puede garantizar que la activación simplemente funciona y no puede molestarse en responder llamadas de soporte, y si una empresa como Macromedia puede comprarse para que sus sistemas de activación dejen de existir, ¿qué posibilidades tiene de convencerme? puede confiar en su proceso de activación? Y si se pasa por alto fácilmente, ¿cuál es el punto?
Steve314

Respuestas:

13

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:

  • Intente recompensar a sus clientes que pagan con valor agregado (actualizaciones frecuentes, tutoriales en línea, etc.), en lugar de castigarlos de manera efectiva.
  • No te preocupes demasiado por los piratas. En muchos casos, es poco probable que hayan comprado su software en primer lugar, lo menos que pueden hacer es difundir el conocimiento de su aplicación.
  • Si realmente no puede manejar el hecho de que su software será pirateado, conviértalo en una aplicación en línea (si la naturaleza del software es tal que esto es posible). Hubo un artículo interesante de un desarrollador que hizo este movimiento, y descubrió que su versión web se vendía mucho mejor, era mucho más fácil identificar qué características usaban realmente los usuarios (ya que realmente no está llamando a casa si ya está en el servidor), y hubo mucha menos renuencia para que la gente sacara sus tarjetas de crédito (lo siento, no puedo encontrar el enlace).
Daniel B
fuente
2
"El único movimiento ganador es no jugar" - Juegos de guerra, 1983
Warren P
No solo los usuarios odian este tipo de cosas (o al menos se sienten fuertemente en contra de ellas), algunas industrias debido a la naturaleza específica de su trabajo mantienen el desarrollo. máquinas fuera de la red. Y en esos casos, independientemente del software que necesite, la mayoría de las veces no cambiará su política. CATIA tuvo problemas similares.
Torre el
11

Con algo como esto, debes hacerte a ti mismo (o a tu jefe) la siguiente pregunta:

¿Los costos de desarrollar y mantener un esquema antipiratería son menores o mayores que las pérdidas debidas a la piratería?

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.

ChrisF
fuente
1
+1 para ese último párrafo. ¡Cuidado con los rendimientos decrecientes de implementar sistemas de licencias costosos y complejos!
FrustratedWithFormsDesigner
44
No es solo una cuestión de valor, sino también si la compañía de software realmente quiere que su software sea "difícil de descifrar". Word y ACAD no se convirtieron en estándares de la industria porque solo los usuarios con licencia lo aprendieron y lo usaron.
Rook
55
Torre, sostengo hasta el día de hoy que Word se volvió dominante porque Word 2.0, comprimido, encaja perfectamente en un solo disquete de 1.44mb.
GrandmasterB
1
@GrandmasterB - Bastante, sí. Lo que es más interesante, esa pequeña cosa hizo casi todo lo que necesito de un procesador de textos.
Torre
6

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.

Tangurena
fuente
Bueno, en este caso, el software se aprueba automáticamente. Así que esto no es un problema, todos los que compraron aún pueden usarlo.
VitalyB
Buen punto y una característica para buscar en un servicio de activación de licencia. También es bueno mencionarlo en el proceso de compra para tranquilizar a sus clientes.
Bloque CAD
1

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.

jfrankcarr
fuente
0

De las desventajas de los dongles :

Algunas desventajas familiares son que:

  • El proveedor de software tiene que comprar, almacenar y entregar una pieza de hardware a cada cliente.
  • Los clientes tienen que esperar para ejecutar su licencia, pero hoy los usuarios esperan una entrega de software casi instantánea
  • Los clientes deben mantener un dispositivo USB insertado en su máquina (sobresaliendo en la parte frontal o lateral, donde puede dañarse)
  • Si un cliente desea trasladar la licencia a otra máquina, debe enviar el dongle.
Dominic
fuente
1
Los enlaces desnudos no son buenas respuestas. Si la página vinculada a desaparece, su respuesta se vuelve inútil. Resuma la página aquí (no solo corte y pegue).
ChrisF