Pregunta

Estoy pensando en implementar un buen mecanismo de licencias que tiene una buena resistencia contra la piratería. El mecanismo requerido no debe utilizar una conexión a Internet en todas y cada vez que se utiliza el software. Estoy pensando en un mecanismo basado en identificadores de hardware etc. ¿Tienen alguna sugerencia mejor? ¿Cuáles son los parámetros / / algoritmos características que necesito a la preocupación de hacer un mecanismo de licencia de prueba de truco?

¿Fue útil?

Solución

En primer lugar, no es prueba de hackers, por lo que no sería pasar demasiado tiempo en la protección de su software.

La desventaja de un mecanismo basado en identificadores de hardware es cuando un usuario compra un nuevo ordenador o actualizaciones de la mayoría de su equipo que necesita para actualizar la clave también. HWHash es una muy buena aplicación HardwareID, pero supongo que hay más soluciones (gratis). En el trabajo usamos llaves Hardlock y cerrojo , pero estas son soluciones usbkey que no son muy eficiente para aplicaciones pequeñas.

Otros consejos

Lo ideal sería que se necesita algo que es independiente del sistema operativo.

Yo recomendaría que se incrusta la protección de licencia dentro de su código o envoltura de su aplicación dentro de ella de una manera tal que no se puede ejecutar sin el código de protección de copia de haber corrido por primera vez.

Lo mejor sería si la aplicación necesita un archivo de clave de licencia para operar y que esto no se genera localmente.

Una forma de hacer esto es que su aplicación genera algún tipo de código de la imagen basada en el hardware en su ejecución inicial. Esta es suministrado a usted y a cambio se proporcione la clave de licencia que permitirá que el código se ejecute. Mejor basar la imagen de hardware alrededor de la CPU y la placa base ya que estos van a cambiar con menos frecuencia.

Su aplicación. debe comprobar la imagen hardware y el número de licencia en contra cada vez que se ejecute.

Si desea que su aplicación. tiempo de licencia limitada, entonces también debe realizar un seguimiento de cuánto tiempo se ha acabado e incrustarlo dentro del archivo de clave de licencia.

No se olvide de cifrar el archivo de licencia.

Además, no se olvide de hacer que sea más difícil de revertir compilar el ejecutable mediante el uso de un Dotfuscator o similar.

Yo sería muy cuidadoso de los mecanismos de protección de software publicadas, ya que son mucho más propensos a tener cortes publicados. Usted es probablemente mejor usar algunas de las técnicas para obtener una identificación única y persistente usar esto para rodar su propio mecanismo de protección. También creo que es una mala idea simple verificación de la licencia cada vez que se ejecuta el programa, ya que esto conduce al hacker a la ubicación de su mecanismo de Proection. OMI, que ya está mejor control de la licencia de una manera más aleatoria, y más de una vez por sesión.

Fwiw, utilizo bloqueos de hardware (HASP) para el software de escritorio de gama alta, y la concesión de licencias ID de dispositivo basado en soluciones móviles. Si usted está vendiendo pequeñas cantidades de software de alto costo en un mercado vertical, en mi humilde opinión, un buen mecanismo de protección de la licencia tiene sentido, y de hardware de protección funcionan bien. Mi experiencia ha sido que la gente va a utilizar más licencias de las que compran si esto no está en su lugar. Para grandes volúmenes, el software de bajo costo, me tienden a vivir con la piratería basado en el aumento del tamaño de la base de usuarios y la visibilidad del producto.

  

Estoy pensando en implementar un buen mecanismo de licencias que tiene una buena resistencia contra la piratería. El mecanismo requerido no debe utilizar una conexión a Internet en todas y cada vez que se utiliza el software.

A continuación, ¿qué tal un control periódico en línea de la licencia?

Cuando el usuario inicia sesión en el primer tiempo, el usuario verifica la instalación contra su cuenta y un archivo de licencia se almacena en el PC del usuario. Este archivo de licencia está encriptado y contiene todos los datos necesarios para identificar de forma exclusiva la licencia. Esto se almacena todo en su servidor.

El archivo de licencia expira en número determinado de días o incluso meses. Inicio de sesión en el archivo después de que expire cheques contra la cuenta y verifica su legitimidad. Usted podría incluso considerar la generación de un nuevo archivo de licencia en este momento.

No debe haber algunos inteligencia que dan un margen de maniobra en el caso de que los usuarios de Internet se ha reducido y la licencia no puede ser registrado. Tal vez 7 días.

Si se vuelve a instalar el software en un ordenador nuevo que el usuario tiene que repetir el proceso de verificación.

Como los otros han dicho no hay manera de vencer a un pirata decidido, ya que una persona va a cortar el código, pero esto debe prevenir o retrasar la piratería casual.

Se puede extraer de de Microsoft SLP - Yo no tengo usado, pero que sin duda se ve interesante (Yknow, si usted está en MS cosas ...)

Un punto importante a tener en cuenta - no hay mecanismo de licencias le protegerá contra la piratería, o incluso reducir sustancialmente la misma. Por definición, el mecanismo de licencias será del lado del cliente - que es inherentemente frágil. Echar un vistazo a todo lo que sucedió con DRM ...

Por lo tanto,

Su guía debe ser la facilidad de uso - la intención debe es para usarlo como política general, los buenos serán cómodamente limita a lo que se supone que se le permita hacer, y el malos -. así, los malos van a conseguir alrededor de su intención de todos modos, su mejor esperanza es hacer que sea más trabajo

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