3

シナリオ:

  • SQL Server 2005 を使用する古い ASP.NET 2.0 アプリケーション。
  • パスワードはプレーンテキストでデータベースに保存されます
  • フォーム認証を使用するようにアプリをアップグレードしたい
  • フォーム認証と同じように、すべてのパスワードを再作成する必要があります

質問:

  • T-SQL を使用してハッシュ化されたパスワード (ソルトを使用) を生成し、フォーム認証で生成されるものと同じデータベースに保存するにはどうすればよいでしょうか。

それでは、これをどのように作成しますか:

DHSicgbY+Av0LyQpBZl2M5EuyOk=

これはハッシュ化されたパスワード (およびソルト) ですが、代わりに T-SQL を使用していますか?

4

1 に答える 1

0

SQL Server 2005 では、できれば SHA1 ハッシュ アルゴリズムを使用してHASHBYTES()を使用します。(SQL Server 2012 は SHA-256 および SHA-512 をサポートするようになりました)

を使用NEWID()して、ソルトのランダム GUID を生成できます。

入力の MD2、MD4、MD5、SHA、または SHA1 ハッシュを返します。

@von v. が指摘したように: T-SQL: Salted Passwords

于 2013-02-21T00:28:21.733 に答える