So che la maggior parte delle funzioni di hash oggi usano la codifica Base64 per le loro funzioni, con conseguente hash che usano a-Z e 0-9 e, a volte, altri caratteri speciali. Ciò comporta 62-76ish possibili valori per ogni carattere, quindi se il tuo hash finisce per dire, 70 caratteri, ci sono 70 ^ 62 combinazioni possibili.
E se esistesse un hashing funzionante progettato per sfruttare UTF-8? Da ciò che ho capito ci sono circa 100.000 valori possibili per ogni personaggio. Ciò significa, per quanto posso dire, che ci sarebbero 70 ^ 100.000 valori possibili, il che è molto. Sembra che non potresti creare un tavolo arcobaleno.
Inoltre, so che la velocità è molto importante nelle funzioni di hashing. Questo sarebbe intrinsecamente più lento di una funzione di hashing di Base64?
So che "bit di entropia" hanno molto a che fare con la sicurezza di una password. Questo in qualche modo migliora quei bit entropiati? Sono abbastanza confuso sull'entropia, a dire il vero.
Nota che non sto parlando di combinazione una funzione esistente con UTF8. Mi chiedo se sia stata creata una funzione di hashing crittografica completamente nuova per sfruttare il set di caratteri più grande di UTF-8, sarebbe meglio (almeno in teoria) rispetto alle funzioni esistenti?
Da quanto ho letto sembra che ci siano alcuni problemi con bit che girano intorno e causano confusione. Sarebbe possibile aggirare questo, o è la ragione per cui non è possibile utilizzare con successo UTF-8 per le password, in quanto il rischio di collisione aumenta in modo drammatico e imprevedibile?