El truco no es implementar la función: eso es el cronometraje básico, el uso de archivos, la resta, etc. El truco es asegurarse de que no lo pasen por alto. El cuerpo de trucos que debes buscar en Google se llama "técnicas de ofuscación de código". Si esto fuera fácil, no habría industrias enteras produciéndolos y contrarrestándolos. La tecnología más importante en esta área es DRM, que es básicamente lo que estás creando. Normalmente no funciona si está en una máquina que controlan. Por lo tanto, el software debe estar en uno que usted controle.
Los TPM están diseñados para lograr esto, pero son fallas. La opción web que se menciona otra es posible, pero usted dice que eso es inaceptable. La última solución que puede funcionar de forma autónoma es proporcionar una pieza de hardware que ejecute su software mientras lo protege. Tecnología como CODESEAL [1], SecureCore, SecureME, etc. (Google ellos) permite que el software se ejecute en un sistema sin confiar en la memoria, los dispositivos, etc. Puede combinar una tecnología como CODESEAL, un sistema operativo simple, un controlador y un Una pequeña PC de factor de forma para hacer una solución un poco conveniente para sus usuarios. Conectan el dispositivo a su PC, se instalan los controladores para la comunicación, se instala una aplicación para la interfaz, registran su dispositivo a través de un código (o en línea) y, a partir de ese momento, simplemente hacen clic en un icono para ver la aplicación. Aunque parece que está en su sistema, en realidad se ejecuta en el dispositivo que protege su código a través del cifrado de memoria y amp; control de flujo de protección.
Ese fue mi diseño hace un tiempo para resolver este problema.
[1] enlace