Hash Algorithms Compared: How to Choose Between MD5, SHA-1, SHA-256, and bcrypt | lddi.net