std::cin を使用した安全なパスワード入力
パスワードなどの機密性の高いユーザー情報を取得する場合、入力された文字が不正に入力されないようにすることが重要です。プライバシー上の懸念から、画面にエコー表示されます。これを std::cin で実現するために、プラットフォーム固有のメカニズムが採用されています。
Windows 解決策:
Windows は SetConsoleMode 関数を利用してエコー動作を切り替えます。以下のコード スニペットは、ENABLE_ECHO_INPUT フラグをクリアしてエコーを無効に設定します。
Unix (Linux/macOS) 解決策:
Unix ベースのシステムは、 termios ライブラリとその tcsetattr 関数。エコーをオフにするコードは次のとおりです:
使用例:
エコーを無効にする関数を配置した状態で、std::cin を使用して次のことを行う方法を示します。パスワードを安全に読み取る:
これらのプラットフォーム固有の方法を採用することで、次のことを確実に行うことができます。ユーザーのパスワードは画面にエコー表示されないため、アプリケーションのプライバシーとセキュリティの両方が維持されます。
以上がコンソールにエコーせずに std::cin を使用してパスワードを安全に読み取るにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。