2013-07-20 12 views
5

Sto lavorando su un'applicazione Android in cui ho bisogno di ottenere alcuni dati in modo sicuro da un server facendo in modo che nessuno abbia accesso ai dati diversi dall'applicazione e dal server .Come trasferire in modo sicuro alcuni dati da un server a un dispositivo Android

Per questo motivo ho intenzione di utilizzare la crittografia a chiave pubblica/privata. È l'approccio corretto, o c'è un modo migliore?

Sono nuovo sia per Android che per la crittografia. qualsiasi suggerimento su dove posso ottenere alcuni dettagli/esempi su come implementarlo.

Grazie

Edit: Sono anche in programma di usare la chiave privata per la crittografia e la chiave pubblica per la decodifica, che non è la convenzione. Qualche problema con quello?

+0

Decifrare con la chiave pubblica? Quindi è inutile criptare i dati in primo luogo. – ntoskrnl

+0

Quindi il mio server ha alcuni dati che invia al client. ma se il client deve decodificarlo, ha bisogno della chiave privata, ma penso che sia una cattiva pratica. quindi come dovrei farlo? – Sandeep

+0

Fornito con questi dettagli, consiglierei [TLS] (http://en.wikipedia.org/wiki/Transport_Layer_Security). – ntoskrnl

risposta

0

comprimere i dati in un pacchetto JSON e crittografarli sul server con la stessa chiave del client. Assicurarsi che la chiave sul lato mobile sia codificata in modo rigido (campo statico) di una classe e non in alcun file xml. ho visto persone fare questo perché "è più facile" ma non è una buona pratica. E poi trasferirlo attraverso https. (Non Http!)

Se si vuole, si sentono liberi di leggere il OWASP guide

Problemi correlati