- Ако искате сигурност, ВИЕ. ТРЯБВА ДА. ИЗПОЛЗВАЙТЕ. HTTPS. С подходящ, несамоподписан сертификат. Каквото и да правите, самоличностите, които са удостоверени в некриптирана комуникация, ще бъдат тривиални за кражба. (Няма значение паролата, нападателят може просто да открадне бисквитката на сесията, която се предоставя при всяка заявка.)
- Хеширането е безполезно само по себе си, трябва да го солите. (Това всъщност не е свързано с удостоверяване - това е втори слой на защита в случай, когато някой открадне вашата база данни. Което вероятно ще се случи рано или късно, ако станете обещаваща цел.) Използвайте bcrypt с дълга произволна сол за всеки потребител, sha* е несигурен, защото е твърде бърз.
- Използвайте методи, които вече се използват от големи проекти, съобразени със сигурността. Тези методи до известна степен издържаха изпитанието на времето. Има методи, базирани на предизвикателство и отговор, които избягват изпращането на паролата под каквато и да е форма, но крипто е трудно и е много лесно да се внедрят сигурни алгоритми по несигурен начин. Използвайте добра рамка за сигурност (напр. PHPass ), не разчитайте на код, който не се използва широко.