Una pregunta básica, pero no soy un maestro y esto me está desconcertando-
¿Cómo es posible autenticar a un cliente desde la perspectiva del servidor?
es decir, ¿Imagina que usted es el servidor y desea darle una clave al cliente, pero solo si está seguro de que el cliente es realmente el software que usted escribió y no alguien que pretende ser su software para poder agarrar la clave? / p>
La única solución que puedo pensar es en varias combinaciones de codificación física de una clave privada en el cliente, o codificación física de un algoritmo predecible (es decir, el servidor dice "n" y el cliente debe responder "n * 2") ... pero ¿De esto es crackable a través de descompilar ...?
En caso de que sea importante, el software cliente debe ser O / S agnóstico, es decir, ejecutarse en Windows, Mac, Linux, Android, iOS, etc.