[ad_1]
こんにちは、
ユーザーのログインを必要とする Windows フォーム アプリケーションを作成しています。以前にもこれを実行したことがあります。 前回使用した方法は、プログラムの要求に応じて暗号化/復号化できるファイルにユーザー名とパスワードを保存することでした。 ただし、次のようにプログラムにキーをハードコーディングしました。
C#
private RijndaelManaged rm = new RijndaelManaged(); byte[] key = { 12, 84, 46, 77, 09, 27, 99, 65, 92, 84, 52, 57, 35, 95, 75, 57 }; byte[] IV = { 12, 84, 46, 77, 09, 27, 99, 65, 92, 84, 52, 57, 35, 95, 75, 57 };
これは明らかに悪い考えです。 プログラムの外部でキーを安全に保存/配布するにはどうすればよいですか?
解決策 2
私は上記の両方のコメントに同意しますが、別のオプションは、暗号化されたユーザー名パスワード トークンのみを保存することです。 ユーザー名とパスワードをファイルに個別に保存しないでください。 それ自体がセキュリティ上のリスクです。 トークンを使用すると、ユーザー名/パスワードを別個のエンティティとして使用する代わりに、トークンに対して検証できるようになります。
解決策 3
自分でハッシュ パターンを選択することもできます。
MD5(ユーザー名+”$!#$”+パスワード+ユーザー名.Reverse) – たとえば。
有効なハッシュのみを保持すると、指定されたユーザー名とパスワードを認証できます。 ハッシュ パターンは隠されていませんが、パターンが特殊な場合は解読がより困難になると思います。
[ad_2]
コメント