簡単なログイン スクリプトをいくつか書いています。私はちょうど疑問に思っています.PHPまたはその逆でMySQLのハッシュ関数と暗号化関数を使用する利点はありますか?
ストアド プロシージャを使用すると、機密情報を安全に送信できない可能性があります。一方で、維持するのはより簡単かもしれません。
どちらかを使用する利点はありますか?
簡単なログイン スクリプトをいくつか書いています。私はちょうど疑問に思っています.PHPまたはその逆でMySQLのハッシュ関数と暗号化関数を使用する利点はありますか?
ストアド プロシージャを使用すると、機密情報を安全に送信できない可能性があります。一方で、維持するのはより簡単かもしれません。
どちらかを使用する利点はありますか?
機密データの暗号化に mysql を使用する場合に私が目にする唯一の問題は、php を実行している Web サーバーが mysql の別の場所にある場合、この 2 つの当事者を通信しているネットワークを介して暗号化されていない機密データを送信できることです。
パスワードをハッシュするには、間違いなく MySQL よりも PHP を使用します。クエリを保存して表示する方法はたくさんあります。次のようなクエリが最終的にどこかに保存されると、問題が発生する可能性があります。
SELECT id FROM users WHERE username = 'User123' AND password = MD5(CONCAT('SecretSalt','MyPassword'))
パスワードを保存している場合は、クラックされにくいように設計されたハッシュ関数を使用してください。bcrypt
は合理的な選択であり、ここでの多くの回答は、それを実装する方法について詳しく説明しています。
MySQL のハッシュ方法はこれほど安全ではなく、ドキュメントをハッシュして重複をチェックするなど、他の目的を意図しています。