Estoy diseñando una arquitectura para enviar mensajes privados (es decir, solo el remitente y el receptor pueden leer un mensaje).
Lado del cliente - iOS, lado del servidor - Parse.com
Estoy pensando en usar RSA para cifrar / descifrar mensajes de la siguiente manera:
- La aplicación iOS genera un par de claves privadas / públicas para cada usuario.
- La clave privada se almacena localmente en el llavero de iOS
- La clave pública se almacena en el servidor.
- Cuando un usuario inicia una nueva conversación, obtiene la clave pública del destinatario del servidor, encripta su mensaje y la envía al servidor.
- El destinatario luego obtiene el mensaje y lo desencripta con su clave privada de su Llavero
Mi objetivo es que nadie excepto los participantes de la conversación pueda leer los mensajes. ¿Este sistema asegurará eso?
En la nota al margen, ¿recomendaría alguna biblioteca de iOS para el cifrado / descifrado RSA?