Strategia per migrare le password in modo sicuro da un'applicazione all'altra

3

Stiamo lavorando su uno strumento che esporta i dati dall'applicazione di origine "S" ai file CSV. Questi file CSV vengono migrati manualmente nella casella in cui risiede l'applicazione di destinazione "T". Ogni riga in questo CSV è crittografata. I dati sensibili sottoposti a migrazione sono password, cronologia delle password e domande con risposte a domande, ecc.

Utilizzeremmo la crittografia AES crittografare i dati utente. La domanda è: dovremmo generare separatamente una chiave segreta per ciascun utente per codificare / decodificare i dati di quell'utente specifico?

Se sì, come possiamo gestire le chiavi segrete per migliaia di utenti e in quale forma dovremmo memorizzarle.

Altra alternativa facile è usare una chiave segreta per tutte le password e memorizzare questa chiave in un keystore JCEKS.

Quale sarebbe un approccio migliore e più sicuro?

    
posta Rajesh Choudhari 14.10.2015 - 14:13
fonte

1 risposta

3

La domanda che dovresti porci è: quale rischio stai cercando di mitigare?

Usando una chiave diversa per ogni riga, si sta tentando di attenuare il fatto che, se una chiave perde, non comprometterà le altre righe. Questo è bilanciato dal fatto che, più chiavi hai, più difficile è gestirle in modo sicuro.

Ora, supponendo che stai per effettuare una migrazione una tantum, dovrai utilizzare TUTTE queste chiavi contemporaneamente, due volte: una volta durante l'esportazione e una volta durante l'importazione. Ciò significa che la finestra di vulnerabilità non sarà effettivamente ridotta: ci sono poche probabilità che una di queste chiavi possa essere compromessa senza che ALL venga compromessa.

Quindi, a mio parere, non penso che la generazione di chiavi diverse per righe diverse ti garantirà alcun miglioramento significativo nella sicurezza, ma sono abbastanza sicuro che renderà il tuo lavoro più difficile.

    
risposta data 14.10.2015 - 15:01
fonte

Leggi altre domande sui tag