Leggevo su PwdHash e mi ha ispirato a creare un piccolo progetto in cui inserisci una password principale e un alias facile da ricordare in un hash della password, come bcrypt, e quindi ottieni un hash.
Fin qui tutto bene; che l'hash dovrebbe essere abbastanza sicuro e nessuno dovrebbe essere in grado di indovinare la mia password principale da esso.
Il problema è che questo hash non è realmente una password utilizzabile. Ad esempio, il sito web ha tutti i tipi di requisiti per la password come non più di 20 caratteri, deve contenere il simbolo, il numero, la lettera minuscola e la lettera maiuscola, non deve iniziare con un numero, ecc ...
Quindi: hash + requisiti = password utilizzabile
Ma ho una preoccupazione. È possibile che applicando i requisiti all'hash per produrre una password utilizzabile, perderò parte della sicurezza che l'hash produce?
Ad esempio, supponiamo che l'hash sia composto da 60 caratteri e che la password non possa contenere più di 20 caratteri. È male prendere solo i primi 20 caratteri dell'hash? Sarebbe meglio produrre i 20 caratteri della password combinando insieme i 60 caratteri dell'hash?
Quindi la domanda generale è:
Come dovrei procedere a creare una password utilizzabile da quell'hash? Devo preoccuparmi?