こんにちは、シェルを閉じてもユーザー名とパスワードを記憶できるプログラムを作成する方法を考えていました。
1 に答える
これを行う最良の方法は、ユーザー名とそのパスワードハッシュの組み合わせをデータベースに保存することだと思います。私はSQLデータベースの操作に最も精通しており、それでうまくいくでしょう。
パスワードハッシュの概念を詳しく説明するために、パスワードをプレーンテキストで保存しないでください。hashlibを使用してパスワードをハッシュしてください。ハッシュ関数は入力文字列を受け取り、それを固定長の文字の寄せ集めに決定論的に変換します。入力が与えられると、ハッシュを決定するのは簡単ですが、ハッシュが与えられると、それを作成したであろう入力を決定するのは非常に困難です。
したがって、パスワードがユーザーによって最初に設定されたときにパスワードをハッシュし、ハッシュされた値をデータベースに保存してから、ユーザーがログイン時に入力したものをハッシュして一致を確認する必要があります。
とはいえ、実際に安全な認証システムを最初から実装しようとしているのであれば、おそらく頭を悩ませているでしょう。非常に優れたプログラマーでさえ気付かないかもしれないセキュリティには多くのニュアンスがあり、多くのフレームワークにこのタイプの機能が組み込まれているのには理由があります。
しかし、これが単なる理論的な演習である場合、またはいくつかのプログラミング手法を学ぶ方法である場合は、Pythonを使用してSQLデータベースと対話するためのチュートリアルを確認することから始めます。