Si dovrebbe crittografare il traffico anche quando si utilizza HTTPS? [duplicare]

2

Ho dato un'occhiata a google e qui e non ho trovato la risposta a questa domanda:

Diciamo che ho un Webservice e un'app per Android. Comunicano tramite HTTPS. Dovrei crittografare il traffico o posso presumere che le comunicazioni siano relativamente sicure?

Non sto pensando di appuntare qui. In questo caso, l'uso del pin cert cambierebbe le misure di sicurezza che dovrei mettere in atto?

Modifica 1 :

Questo scenario mi viene in mente considerando che un utente malintenzionato che controlla il dispositivo che esegue l'app (che è abbastanza facile) può intercettare la comunicazione e vedere ogni bit di informazioni chiare trasmesse.

Scenario : ho un'app che può effettuare pagamenti con carta di credito. Devo fare affidamento su TLS per proteggere i dati della carta di credito inviati?

    
posta luizfzs 21.07.2017 - 20:39
fonte

2 risposte

1

Se la comunicazione avviene su HTTPS, è già crittografata. HTTPS include la crittografia end-to-end SSL / TLS tra client e server web.

Quindi, in breve, no, non è necessario crittografarlo ulteriormente purché tu abbia implementato correttamente HTTPS.

Per maggiori dettagli, vedi questo post: Come funziona SSL / TLS?

UPDATE in risposta all'aggiornamento della domanda:

Se un utente malintenzionato è in "controllo" del dispositivo utente che esegue l'app, la sicurezza è compromessa, indipendentemente dal modo in cui la si guarda. Le procedure di crittografia / sicurezza entrano in azione prima che le informazioni sensibili vengano comunicate tramite la rete. Tuttavia, mentre l'utente inserisce, ad esempio, il suo numero di carta di credito sul suo cellulare, è ancora in chiaro e vulnerabile per l'aggressore in controllo.

Quindi sì, puoi fare affidamento su TLS per proteggere i dati della carta di credito inviati. Ma non c'è molto che puoi fare come sviluppatore di app contro un utente malintenzionato che controlla il dispositivo.

    
risposta data 21.07.2017 - 20:45
fonte
1

In generale, dipende da cosa è il tuo modello di minaccia e da come intendi crittografare i dati.

Per lo scenario specifico che descrivi, un modulo di pagamento basato sul web in cui un utente inserisce i dati della carta di credito, un ulteriore livello di crittografia ha poco senso. Devi ancora essere in grado di decrittografare i dati una volta arrivati a te e, a parte lo stesso TLS, non hai un meccanismo semplice e sicuro con cui ottenere una chiave per l'utente per fare un ulteriore livello di crittografia.

Per altri scenari, come un gestore di password, un ulteriore livello di crittografia può avere un senso ... Quando la crittografia può essere contenuta in un'estensione del browser, ad esempio, e la chiave può essere derivata in memoria da una password, e il tuo servizio deve solo archiviare il blob crittografato e non ha bisogno di accedere ai dati in chiaro.

Quindi, il caso d'uso è importante, il modello di minaccia per l'applicazione e i dati sono importanti e i meccanismi a cui si ha accesso e che possono essere ragionevolmente inflitti agli utenti sono importanti prima di poter decidere se questo abbia un senso o meno. Sembra che per il tuo caso, non è così, e TLS da solo, ben configurato, dovrebbe essere sufficiente.

    
risposta data 21.07.2017 - 21:12
fonte

Leggi altre domande sui tag