Tengo una aplicación de servidor que proporciona funciones a un programa cliente. El cliente también está programado por mí. Ahora quiero autenticar el programa cliente (no cualquier usuario) antes de usar mi servicio. Quiero lograr que mi servicio solo pueda ser utilizado ejecutando mi software cliente. El problema es que el servidor y el cliente no están necesariamente conectados a Internet. Por lo tanto, no se puede utilizar ninguna autenticación a través de una tercera entidad.
En mi opinión, se debe compilar algún secreto en el ejecutable del programa cliente y se debe realizar algo como un procedimiento de respuesta-desafío.
¿Qué piensas acerca de este pensamiento o tienes alguna otra idea?
Ya he pensado en un certificado de cliente, pero el certificado en sí también debe compilarse en el ejecutable.
Gracias de antemano.