And why bother with any of this if it requires reliable persistent local storage anyway?
Only that particular password reset mechanism I described benefits from local storage. It's difficult to explain in one comment. We'll have clearer diagrams and explanations soon :)