Approcci chiave di stretching

3

Ho visto che un certo numero di algoritmi di allungamento chiave hanno comportato un aumento del numero di operazioni necessarie per calcolare il chiave (ovvero il numero di round all'interno di una funzione hash). Ma, mi chiedo se questi approcci sono più sicuri in quanto aumentano il numero di operazioni necessarie per un importo costante non tenendo conto delle risorse computazionali del dispositivo che esegue l'implementazione.

Non sarebbe più sicuro aumentare il carico di lavoro necessario in funzione delle risorse di calcolo disponibili?

O in alternativa, senza aumentare il numero di round, una piccola sfida potrebbe essere risolta (vale a dire la sfida a 32 bit) e incorporandola nella chiave?

    
posta Sebi 24.09.2015 - 11:20
fonte

1 risposta

1

Hai ragione nel ritenere che la capacità di un algoritmo di allungamento chiave per le risorse hardware disponibili sia superiore all'utilizzo di una forza fissa. Questo è in realtà implementato in alcuni casi, come lo standard di crittografia del disco LUKS, che utilizzerà approssimativamente due secondi di estensione della chiave PBKDF2.

A volte questo non è possibile. Ad esempio, un dispositivo di archiviazione esterno può essere utilizzato su più macchine con specifiche hardware diverse. Ciò che impiega due secondi su un potente computer potrebbe richiedere mezzo minuto su un sistema più economico e di fascia più bassa. In questi casi, è spesso necessaria una difficoltà fissa per lo stretching chiave, utilizzando una difficoltà sufficientemente bassa da consentire ai computer di fascia bassa di eseguire le operazioni abbastanza rapidamente, pur rimanendo sufficientemente elevati da risultare dolorosi per gli aggressori.

    
risposta data 13.11.2018 - 05:18
fonte