Decripta le password in base all'utilizzo della password di un utente

3

Sto creando un database per memorizzare le informazioni dei nostri clienti sul posto di lavoro (un centro storico specializzato in genealogia basata sul DNA). Una volta che i risultati di un test tornano, abbiamo persone che utilizzano le informazioni generate su siti come 23andMe per trovare parenti e inviare inviti a parenti per connettersi con i nostri clienti. Questo è fatto con il permesso del cliente. I conti appartengono ai clienti, ci danno solo il permesso di usarli. Questo è il motivo per cui non utilizziamo i nostri nomi utente e password (il client deve poter accedere anche ai siti Web).

Ho il programma di immissione del database per lo più fatto, ma una cosa che devo essere in grado di fare è estrarre il loro nome utente e password (in testo normale) in modo che possiamo accedere ai 3 diversi siti web che usiamo.

Quello che voglio fare è creare una password globale che, applicata a ciò che viene inserito nel campo della password nel programma di immissione dati (per salvare la password) o estratta dal DB (recupera password), è convertibile in chiaro testo (essere in grado di andare avanti e indietro da normale a criptato usando 1 tasto).

Quindi ciascuno dei nostri dipendenti con il permesso di visualizzare la password in testo semplice ha la propria password univoca che, una volta inserita, rende la chiave sopra menzionata.

Il database su cui sto lavorando è MySQL e il programma che i nostri dipendenti stanno utilizzando per manipolare il DB MySQL è stato scritto in Java. Qualsiasi esempio basato su Java o link ad esempi sarebbe fantastico.

    
posta traisjames 15.04.2014 - 20:19
fonte

1 risposta

1

Non sono sicuro che questo offre molta sicurezza, ma il modo migliore che vedo per farlo è:

  1. Hai una chiave master.
  2. Cripta la password di ciascun cliente con la chiave principale.
  3. Cripta la chiave principale con una password derivata (PBKDF2 o simile) dalla password di ciascun dipendente.

Quindi, quando un dipendente accede:

  1. Genera la chiave del dipendente dalla sua password.
  2. Decrittografa la chiave master.
  3. Utilizza la chiave master per decrittografare le password dei clienti.
risposta data 09.05.2014 - 06:19
fonte

Leggi altre domande sui tag