How to Generate Unguessable Passwords and Never Forget Them