8

の基本的な部分を誤解していると思いSecureStringます。stringが不変であり、パスワードまたは機密データがヒープ上でクリア テキストとして検出されることを理解しています。

私が理解するのに苦労しているのはSecureString、データベースでハッシュ化されたパスワードを検証する必要があるクライアント アプリケーションでどのように使用すればよいですか?

これが私のコンテキストです:

  • WPF クライアント アプリケーションを使用しています。
  • ローカル SQL データベースを (クライアントのマシン上に) 持っています
  • パスワードはハッシュ化され、データベースに保存されます。
  • ユーザーが自分の WPF アプリケーションにログインしようとしています
  • PasswordBox コントロールはSecureString、プロパティを介してパスワードを格納しますSecurePassword

それで?最初に文字列にキャストせずにハッシュするにはどうすればよいですか?SecureString

これまでに受け取ったすべてのアドバイスは、 に変換SecureStringする拡張メソッドを作成しString、それをハッシュしてから、検証のために db に送信することです。しかし、これは演習全体を打ち負かします!

SecureString上記のコンテキストでは役に立たないことを受け入れて、プレーンを使用する必要がありstringますか?

4

1 に答える 1