La crittografia lato client aggiunge davvero sicurezza?

4

Molti gestori di password sembrano promuovere la crittografia lato client come caratteristica chiave del loro servizio. Ad esempio: LastPass, Firefox Sync, PasswordBox, ecc.

Tutti dicono qualcosa come

Even we don't know your master password and cannot decrypt your data, hence it is more secure.

Facendo in modo che l'utente pensi di proteggerlo dal gestore di password che sta utilizzando.

Ma, in realtà, controllano il codice che esegue la crittografia sul lato client e possono cambiarlo ogni volta che vogliono invece eseguire la crittografia sul server e non si noterà nulla.

Quindi aggiunge sicurezza?

    
posta Gudradain 23.10.2014 - 18:04
fonte

2 risposte

7

La crittografia lato client non protegge da un fornitore di applicazioni attendibili malevoli che decide di sovvertire il proprio sistema.

Protegge dagli attacchi che violano il negozio centrale. Quelle persone non possono decifrare senza chiavi e se il provider non ha le chiavi (la funzione chiave (sic) descritta sopra), allora l'aggressore non può rubarle nello stesso modo. Dovrebbero compromettere sia l'archivio centrale che gli endpoint dell'utente, rendendo molto più difficile un compromesso dei dati.

Quindi aggiunge davvero sicurezza? Sì. Non per il caso di utilizzo ogni , ma per i casi d'uso che rappresentano realisticamente una minaccia maggiore e una maggiore probabilità.

    
risposta data 23.10.2014 - 18:11
fonte
3

Innanzitutto, la crittografia lato client rende difficile per l'azienda vendere o estrarre i dati, almeno come modello di business.

Ciò che dici è vero, è ancora necessario verificare che il software faccia ciò che promette e non contenga backdoor. Sfortunatamente il problema è ancora irrisolto. Soprattutto perché risolverlo non aiuta, inoltre, come gli attacchi mirati riescono attraverso bug nel software, che sono costosi da trovare. Ma puoi costruire un sistema di verifica che il software non contenga backdoor:

  1. verifica che il software faccia ciò che promette. Questo può essere fatto attraverso le revisioni della sicurezza.
  2. assicurati che il codice che è stato esaminato corrisponda al binario. Questo viene fatto attraverso build deterministiche.
  3. assicurati che il software non venga modificato. Questo è un problema di distribuzione del software ed è più grave con gli aggiornamenti automatici e l'accesso Web e meno severo con il software installato. La cosa migliore è richiedere che l'hash del software venga rilasciato su servizi notarili pubblici come la blockchain di bitcoin.

Visualizza anche la mia risposta su " È possibile progettare un sistema in cui il client non fa" t fidarsi del server? ".

Inoltre, la crittografia sul lato client significa che devi ancora fidarti del client, ma non devi fidarti del server. Quindi se server e client sono forniti da fornitori distinti, devi solo fidarti del server.

Pensa a chi aggiungi alla tua lista di aziende fidate. Se utilizzi un gestore di password che incolla le password nei campi del browser, la crittografia del browser lato client nativo è buona, dato che devi già fidarti del browser.

    
risposta data 24.10.2014 - 00:00
fonte

Leggi altre domande sui tag