ユーザーが Facebook または通常のフォームでサインアップできるシステムがあります。ユーザーが Facebook でサインアップした場合、ユーザーが必要に応じて Facebook なしでログインできるようにするために、私のシステムはランダムなパスワードを生成します。通常のフォームを使用してユーザーがサインアップする場合、ユーザーは任意のパスワードを入力できます。どちらの方法でも、パスワードは MD5 ハッシュにエンコードされますが、ソルティングは行われません。それは安全ではありません、私は知っています、これが私がここにいる理由です。
パスワードを安全なものに変換するための最善の戦略がわかりません...まず、MD5 の安全でないパスワードを保持することを考えています。ユーザーのログイン時に、salt、salt-it、および次に、データベースを更新します。しかし、システムは安全でないパスワードを受け入れるため、私の問題は解決しません。それに加えて、ユーザーはまだFacebookを使用してログインできますが、魔女はパスワードを更新することを許可していません(彼はそれを使用していないため)。
では、全員にパスワードの更新を強制するのではなく、影響を最小限に抑えるためのアイデアはありますか?
ありがとう!