2014-12-22 14 views
7

La mia squadra sta prendendo in considerazione l'utilizzo di IndexedDb per memorizzare nella cache i dati nelle sessioni utente. Questi dati possono essere abbastanza grandi da costituire un reale aumento delle prestazioni per poterli mantenere nel browser per un uso futuro invece di doverli scaricare ogni volta che l'utente ne ha bisogno.I browser moderni crittografano o proteggono in altro modo l'archiviazione IndexedDb?

Sono preoccupato per problemi di sicurezza con IndexedDb. I dati in questione non sono molto sensibili, ma c'è un motivo per cui abbiamo bisogno di un utente/pass per raggiungerlo. Mi preoccupo che questi dati siano accessibili se il laptop di un utente venisse rubato. Questi file sono disposti in modo non criptato sul file system?

+3

La cosa migliore da fare è crittografare l'intera unità del portatile per cominciare. se sei preoccupato per i dati nella tua perdita di db, probabilmente sarai anche preoccupato che altre cose ALTROVE anche nel portatile. Soprattutto se il db è criptato - dovresti memorizzare le credenziali di decrypt SOMEWHERE, e se questo è in testo chiaro altrove sull'unità, non hai ottenuto nulla. –

+0

anche se ha crittografato il suo file system, il db in testo normale sarebbe ancora visibile nella sua memoria del browser, quindi questo non porterebbe a termine molto. La risposta di @Kyaw Tun è l'approccio migliore – user2765977

risposta

2

A meno che i tuoi utenti non utilizzino la crittografia completa del disco sui loro laptop, quei file sono lì senza crittografia. Potresti prendere in considerazione la possibilità di crittografare i dati che memorizzi utilizzando una crypto javascript con una chiave derivata dalla password dell'utente.

3

È possibile crittografare prima di archiviare in indexeddb. Ecco come faccio nella mia libreria open source, http://dev.yathit.com/ydn-db/doc/usage/encryption.html

Una cosa da notare, il database crittografato non può essere interrogato. Puoi recuperare solo con la chiave primaria conosciuta.

È ancora necessario passare la chiave di crittografia dal server dopo il login dell'utente.

Problemi correlati