私は、Html、Css、Javascript、およびPhPを使用している小さなウェブサイトを持っています。 Webサイトには、ユーザーがパスワードを入力する必要がある基本ログインページが含まれています。その後、パスワードはphpに送られ、phpはSHA-512を使用して暗号化され、データベースに追加されます。Javascriptまたはバックエンドでログインパスワードを暗号化する必要がありますか?
私は不思議に思った。これは物事をするための好ましい方法ですか?私はjavascriptを使ってパスワードを暗号化し、それがすでに暗号化されているときにphpに送る方が良いかもしれないと思った。少なくともそのように、元のパスワードはPOSTリクエスト内にはありません。
本当に正しい方法ですか?誰かが私が使っている暗号化の種類を見ることができれば悪くないですか?
正確な方法は、HTTPSを使用して通過中のパスワードを保護し、パスワード用に作成されたサーバ側の低速ハッシュアルゴリズムを使用することです(* SHA256以外のSHAファミリのメンバー、高速ハッシュ、塩を有する)。 –
@ AlexanderO'Mara私はHTTPSを使用しています。私はちょうどハッシュが行われるべきであるかと思っていた。どんなハッシュでも。 – TheCrafter
ユーザーのパスワードを保護するために単純なハッシュ関数を使用しないでください。 PBKDF2、bcrypt、scrypt、Argon2などの強力なハッシュスキームを使用する必要があります。コスト係数/反復回数が高いことを確認してください。 1回の反復で少なくとも100msかかるようにコストを選択するのが一般的です。詳細:[パスワードを安全にハッシュする方法](http://security.stackexchange.com/q/211/45523) –