Ho un'app web (che ho parlato prima qui ). Gli utenti possono usarlo per salvare i dettagli di contatto delle persone. Questi dati di contatto sono crittografati per garantire che siano difficili da ottenere se sono trapelati.
Anche il sistema di crittografia è progettato in modo che gli amministratori non possano accedere ai dati. La chiave di crittografia si basa sulla password dell'utente.
Sto esaminando i modi per abilitare il recupero della password. Il problema qui è che una password dimenticata, al momento, comporta anche una perdita totale dei dati - dal momento che la chiave è basata sulla password, se non si conosce la password, la chiave non può essere elaborata ei dati dell'utente non può essere decodificato. Non ideale.
Ho un paio di modi per risolvere questo problema:
- Chiavi di decrittografia del negozio. Sembra un'idea terribile dal punto di vista della sicurezza, quindi preferirei non farlo se è assolutamente evitabile.
- Hai due password. Uno per accedere all'account, uno da utilizzare per la chiave di crittografia. Questo ha un impatto sugli utenti: devono ricordare due password.
Potrebbero esserci anche altri metodi validi a cui non riesco a pensare. Nessuno di questi sembra molto sicuro - o sbaglio? Quali sono i modi sicuri per farlo?