Using various brute force and dictionary attack prevention methods – and why they don’t work