Si può trovare il seme xxhash dato un grande set di hash?

1

xxhash afferma chiaramente che non è crittografico, ma ho avuto problemi a capire cosa questo significhi praticamente. Questo significa che il seme e / o l'input potrebbero essere ricostruiti dato un numero molto grande di hash?

(Supponiamo che il seme sia un 8 byte casuale di dati e che l'input stesso non possa essere indovinato a mano (sebbene i valori di input siano correlati))

    
posta David Mulder 18.09.2016 - 15:46
fonte

1 risposta

1

Un hash crittografico ha diverse proprietà (da Wikipedia):

  • è veloce calcolare il valore di hash per qualsiasi messaggio
  • non è possibile generare un messaggio dal suo valore di hash tranne che provando tutti i possibili messaggi
  • una piccola modifica a un messaggio dovrebbe cambiare il valore dell'hash in modo così estensivo che il nuovo valore di hash appare non correlato con il vecchio valore di hash
  • non è possibile trovare due messaggi diversi con lo stesso valore di hash

Una funzione di hash come xxhash non ha bisogno di quelle proprietà - è pensata per cose come le hashtables e invece cerca la velocità pura e una buona distribuzione dei valori.

Una nota: per "è veloce calcolare il valore di hash per ogni messaggio" per un hash crittografico, in realtà significa che è PRATICO piuttosto che veloce. Uno dei problemi con MD5 (che era considerato un hash crittografico, ma ora è considerato non funzionante) è che ha raggiunto il punto in cui il bruto forzare le password brevi è pratico, perché i cluster basati su GPU possono eseguire dieci miliardi di tentativi al secondo. Questo non è tutto ciò che è rotto su MD5 - ci sono anche alcuni attacchi matematici sull'hash, ma non aiuta. Bcrypt / scrypt / SSHA512 sono tutti molto, molto più lenti, ma comunque pratici per l'uso normale.

    
risposta data 19.09.2016 - 16:21
fonte

Leggi altre domande sui tag