Non vorrei essere precipitoso, ma analizzando il codice mi sembra che una volta fissata la password, si ha comunque accesso alla pagina protetta anche con tutti gli anagrammi della parola.
Quindi non è il massimo!!!
Se provi a cambiare l'operatore di assegnazione '*=' con qualcosa di non commutativo come la moltiplicazione, forse otterrai un algoritmo più sicuro.
Spero di essere stato chiaro.
Ciao