Perfect Passwords: Selection, Protection, Authentication