Buenas, a ver tengo un problemilla, mas de forma que de fondo.
Tengo que hacer una aplicación cliente y otra servidor en java. La idea es que los clientes se conecten al servidor y se sincronicen una serie de tablas de la bd del cliente y del servidor.
Pero los clientes tienen que autenticarse. La comunicación es por Sockets, no hay nada web. Había pensado en que el servidor tuviera un par de claves rsa y cuando se realizara la conexión en el socket, el servidor le enviara al cliente la clave pública, este cifrara su nick y contraseña y enviara al servidor. El problema que veo ahí es que las claves caducan, y querría generar un par nuevo cada cierto tiempo por eso enviaría la clave pública al empezar la conexión. ¿Es una buena idea?. ¿Podría generar el servidor las claves usando keytool desde la aplicación, él solito y guardar sustituir el par por el nuevo en un almacén de claves?.
Muchas gracias y espero respuestas, estoy un poco desorientado sobre cómo hacer el tema de la autenticación.