Separa la colonna del database per il sale

1

È consigliabile memorizzare il sale in una colonna di database separata o dovremmo concatenarlo insieme alla password? C'è qualche differenza? Ho trovato implementazioni di entrambi i tipi.

Esempio di sale concatenato utilizzato nella funzione di hashing di wordpress.

$P$Bo3k0g.yPKzWx.xmABq/hCuGLLd7A20
    
posta limbenjamin 16.12.2014 - 18:07
fonte

2 risposte

3

In realtà non fa alcuna differenza. Il sale non deve in alcun modo essere tenuto al sicuro. Ci sono probabilmente alcuni vantaggi di sicurezza molto minori per rimanere segreti (dato che fornirebbe una certa protezione contro le password insignificanti), ma se la tua sicurezza dipende da questo, allora la tua sicurezza è rotta.

Inoltre, è improbabile che la differenza tra essere nella stessa colonna rispetto a una diversa sia fare una differenza se il DB è compromesso. Potrebbe essere minimamente vantaggioso inserire entrambi in una colonna crittografata, ma se sono due colonne crittografate o una non fa molta differenza neanche.

    
risposta data 16.12.2014 - 18:34
fonte
1

Direi che è più una questione di prestazioni, in pratica quale di questi schemi di database comporta un sovraccarico minore. In entrambi i casi, se il DB viene compromesso, un utente malintenzionato potrebbe trovare facilmente il sale per ogni hash della password. Poiché un sale ti protegge dagli attacchi pre-calcolo, ma è necessario per l'autenticazione, è difficile e non vale la pena tentare di separarlo dall'hash della password.

    
risposta data 16.12.2014 - 22:10
fonte

Leggi altre domande sui tag