2008-09-19 17 views

Respuesta

5

Un par de cosas es posible que desee considerar:

Comprobar suma la DLL. Usando un cryptographic hash function, puede almacenar esto dentro del archivo de licencia o dentro de la DLL. Esto proporciona un método de verificación para determinar si mi archivo DLL original está deshabilitado o si es el archivo de licencia para este archivo DLL. Algunas técnicas simples de intercambio de bytes pueden llevar rápidamente a su función de hash fuera de los caminos trillados (y por lo tanto no es fácil de reproducir).

No guarde su hash como una cuerda, divídalo en pantalones cortos sin firmar en diferentes lugares.

Como dijo Larry, una dirección MAC es bastante común. Hay muchos ejemplos de cómo obtenerlo en The Code Project, pero tenga en cuenta que es fácil de falsificar en estos días.

Mi sugerencia, debe ser el uso de private/public claves para la generación de licencias.

En resumen, los modos de ataque serán binarios (modifique las instrucciones de su archivo DLL) para protegerse de esto o de la generación de claves, de modo que cada usuario de licencia, máquina e incluso la instalación sean específicos.

4

Puede comprobar si hay una licencia dentro de DllMain() y fallecer si no se encuentra.

+0

¡HAGA una lectura de lo que se le permite hacer en DllMain, no es mucho! – MSalters

1

También depende de cómo funciona su algoritmo de licencia. Te sugiero que busques utilizar algo como Diffie–Hellman key exchange (o incluso RSA) para generar algún tipo de clave pública/privada que se pueda pasar a tus usuarios, en función de cierta información.

(De acuerdo con la aplicación, conozco un caso en el que escribí el código de licencia de un contrato para una empresa, utilizaron MAC address y otros datos, lo modificaron y cifraron el hash, dándoles la "clave" valor ", si el número de registro era correcto). Esto asegura que el archivo de clave no se puede mover, (o entregar) a otra máquina, por lo tanto 'robando' el software.

Si quiere conocer en profundidad y evitar hackers, eso es un todo 'tro tema ....

Cuestiones relacionadas