Sto implementando bcrypt per java come trovato qui . Prima che avvenga l'hash effettivo, la riga 455 di questa implementazione prende la password di stringa raw e la trasforma in un array di byte in questo modo:
passwordb = (password + (minor >= 'a' ? "passwordb = (password + (minor >= 'a' ? "%pre%0" : "")).getBytes("UTF-8");
0" : "")).getBytes("UTF-8");
Quindi quando minor >= 'a'
, come sempre è vero per questa implementazione (presumo che questo sia un identificatore di versione?), quindi
è concatenato alla fine della password prima della sua trasformazione in byte. %code%0
0
Quale scopo aggiunge l'aggiunta di %code% alla password?