Debo proporcionar una solución de hardware + software. El software es una aplicación en c ++ que se ejecuta en windows. El hardware es placa base + procesador + disco + memoria. Para proteger la solución, necesito desarrollar un dongle USB.
Estoy planeando desarrollar una aplicación que generará los dongles USB mediante el cifrado de diferentes datos (datos del cliente, componentes de hardware ...) mezclados con una contraseña.
La solución comprobará si este dispositivo USB está presente cada 60 segundos. Si es así, la solución descifrará el contenido del dispositivo USB y lo comparará con lo que la solución ha cargado internamente (en código). Si hay una coincidencia, la solución seguirá funcionando hasta el próximo ciclo (60 segundos después). Si no, la solución se detendrá.
Preguntas:
-
¿Tiene sentido?
-
¿Debo verificar el número de serie de los componentes de hardware (cpu ...) en cada ciclo? ¿Cómo hacer este cheque realmente rápido?