Safe treatment of passwords can be one of the hardest things to do correctly when building a website, but is also one of the most important things to get right.