Stiamo creando una suite di app mobili in cui le comunicazioni da / verso l'API REST del server devono essere il più possibile sicure.
L'intenzione è usare TLS (cioè https) al livello di sessione.
Tuttavia, mi sono reso conto che, su un dispositivo jailbroken / rooted, è possibile sniffare il traffico SSL inserendo un certificato attendibile sul dispositivo stesso.
Pertanto, un'idea era di aggiungere la crittografia anche al livello dell'applicazione. Nelle parole, scambia le chiavi con il server (il server invia la sua chiave pubblica al client, il client invia la sua chiave pubblica al server) quindi le usa come ulteriore livello di sicurezza.
Ciò conferirebbe un ulteriore vantaggio in termini di sicurezza o è un'inutile duplicazione degli sforzi?