時間ベースのソルトは、MD5 を壊れやすくしません。あなたはまだ、1)ブルートフォース計算を打ち負かすための適切なパスワードを持っているユーザーと、2)MD5が適切なハッシュであることに依存しています。それがあなたの質問に対する基本的な答えです。ただし、とにかくこれは良い考えではないかもしれません。いくつかのコメント--
クライアントまたはサーバーの時刻が同期されていることを確認できない限り (または Javascript を使用して同期を偽造しない限り)、クライアントは使用した時刻をソルトとして送信する必要があります。サーバーは、使用された時間がサーバーの時間に十分近いかどうかを判断する必要があります。
たとえ同期されていたとしても、インターネット上の遅延のために、おそらくプラスマイナス 1 分程度のハッシュを受け入れる必要があります。もう 1 つの問題は、スニッフィングしている場合、この時間枠内にいる限り、このハッシュをすぐに再利用できることです。
上記の問題のため、より良いアイデアは、SSL を使用したくないように思われるため、サーバーが割り当てた 1 回限りのソルトをハッシュと共に使用することです。つまり、ログインフォームがクライアントに送信されるたびに、サーバーはランダムで一意のソルト文字列を生成してクライアントに送信し、これが許容可能なソルトであることを追跡します。次に、クライアントはそれをパスワードと一緒にソルトとして使用します。これが一度送信されると、サーバーはこれを受け入れ可能なソルト文字列として破棄します。2 つのハッシュが同じであってはなりません。これの欠点は、これらの許容可能なソルト文字列を追跡する必要があることです。