SRP: il client può autenticarsi utilizzando solo l'hash memorizzato?

3

In base alla descrizione dell'SRP , sembra che per un'applicazione client possa essere possibile memorizzare nella cache la password con hash x e riutilizzalo per le successive autorizzazioni. La vera password p non sembra essere utilizzata per nulla se non calcolando x sul lato client.

Oltre ai vantaggi più ovvi di SRP rispetto all'hashing "normale" client o server (non sono possibili attacchi di dizionario anche su password deboli), le seguenti ipotesi sono vere?

  • Il server non deve memorizzare password o dati equivalenti a password. Se la memoria del server viene compromessa, un avversario che utilizza tali informazioni non sarà in grado di impersonare un cliente dopo l'incidente.

  • Anche il client non deve memorizzare la password o dati equivalenti: la password hash può essere facoltativamente memorizzata come token di autenticazione da utilizzare senza l'interazione dell'utente; in alternativa, può essere scartato e ricalcolato dal sale s e dalla password fornita dall'utente p .

posta lxgr 09.11.2012 - 12:31
fonte

1 risposta

3

Le tue ipotesi sono vere; sono caratteristiche di SRP.

Nella descrizione a cui ti colleghi, si noti che il valore x è calcolato dalla password p e salt s (quindi può essere re -computato sul lato client se necessario), e il verificatore della password v è ottenuto da x con un esponenziazione modulare, che è piuttosto un- modo (il recupero di x da v richiede il calcolo di un logaritmo discreto , che è noto per essere molto difficile, e non fattibile se il modulo è abbastanza grande). Il server memorizza v , non x e la conoscenza di v non è sufficiente per l'autenticazione come client - è necessario x per quello, che il server non memorizza e, in effetti, non impara mai affatto .

    
risposta data 09.11.2012 - 12:39
fonte

Leggi altre domande sui tag