ホームページ バックエンド開発 PHPチュートリアル ユーザーのパスワードを安全に保存する方法

ユーザーのパスワードを安全に保存する方法

Aug 04, 2017 pm 05:55 PM
安全性 パスワード ユーザー

1: 基本: Salt を使用したハッシュ

私たちは、悪意のある攻撃者がルックアップ テーブルとレインボー テーブルを使用して通常のハッシュ暗号化をいかに迅速に解読できるかをすでに知っています。また、ランダムにソルトされたハッシュを使用すると、この問題を解決できることも

学びました。しかし、どのような種類のソルトを使用し、パスワードにどのように

混ぜ込むのでしょうか?

ソルト値は、Cryptographically Secure Pseudo-Random

Number Generator (CSPRNG) を使用して生成する必要があります。 CSPRNG は、「C」言語の rand() 関数などの通常の擬似乱数ジェネレータとは大きく異なります。名前が示すように、CSPRNG は暗号的に安全になるように設計されており、非常にランダムで完全に予測不可能な乱数を提供します。ソルト値を予測可能にしたくないので、CSPRNG を使用する必要があります。

次の表に、現在の主流のプログラミング プラットフォームの CSPRNG メソッドを示します。

プラットフォームCSPRNGPHPmcrypt_create_iv、openssl_random_pseudo_bytesjava.security.SecureR andom System.Security。 Cryptography.RNGCryptoServiceProviderSecureRandomos.urandomMath::Random::SecureCryptGenRandom/dev/random または /dev/urandom から読み取ります各ユーザーのすべてのパスワードは一意のソルト値を使用する必要があります。ユーザーがアカウントを作成するか、パスワードを変更するたびに、パスワードには新しいランダムなソルト値が設定される必要があります。 ソルト値を再利用しないでください。また、ソルト値は、ハッシュ暗号化に使用するのに十分なソルト値が存在するように、十分な長さである必要があります。経験則として、salt
Java
Dot NET (C#、VB)
Ruby
Python
Perl
C/C++ (Windows API)
GNU/Linux または Unix 上の任意の言語


の値は少なくともハッシュ関数の出力と同じ長さである必要があります。このソルトは、パスワード ハッシュとともにユーザー アカウント テーブルに保存する必要があります。

パスワードを保存する手順:

CSPRNG を使用して、十分な長さのランダムなソルト値を生成します。

  1. パスワードにソルトを混ぜて、Argon2、bcrypt、scrypt、PBKDF2 などの標準のパスワード ハッシュ関数を使用して暗号化します。

  2. ソルト値と対応するハッシュ値を一緒にユーザーデータベースに保存します。

  3. パスワードを確認する手順:

ユーザーのソルト値と対応するハッシュ値をデータベースから取得します。

  1. ユーザーが入力したパスワードにソルト値を混合し、一般的なハッシュ関数を使用して暗号化します。

  2. 前のステップの結果を比較して、データベースに保存されているハッシュ値と同じかどうかを確認します。それらが同じであれば、パスワードは正しいです。それ以外の場合、パスワードは間違っています。

以上がユーザーのパスワードを安全に保存する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

携帯電話を使用してルーターのWiFiパスワードを設定する方法(携帯電話をツールとして使用) 携帯電話を使用してルーターのWiFiパスワードを設定する方法(携帯電話をツールとして使用) Apr 24, 2024 pm 06:04 PM

ワイヤレス ネットワークは、今日のデジタル世界で人々の生活に不可欠な部分となっています。ただし、個人のワイヤレス ネットワークのセキュリティを保護することが特に重要です。強力なパスワードを設定することは、WiFi ネットワークが他人にハッキングされないようにするための鍵となります。ネットワークのセキュリティを確保するために、この記事では、携帯電話を使用してルーターの WiFi パスワードを変更する方法を詳しく紹介します。 1. ルーター管理ページを開く - モバイルブラウザでルーター管理ページを開き、ルーターのデフォルトの IP アドレスを入力します。 2. 管理者のユーザー名とパスワードを入力します - アクセスするには、ログイン ページに正しい管理者のユーザー名とパスワードを入力します。 3. ワイヤレス設定ページに移動します。ルーター管理ページでワイヤレス設定ページを見つけてクリックし、そのページに入ります。 4.現在のWiを見つける

携帯電話のWi-Fiパスワード変更チュートリアル(簡単操作) 携帯電話のWi-Fiパスワード変更チュートリアル(簡単操作) Apr 26, 2024 pm 06:25 PM

インターネットの急速な発展に伴い、ワイヤレス ネットワークは私たちの生活に欠かせないものになりました。ただし、個人情報とネットワークのセキュリティを保護するために、Wi-Fi パスワードを定期的に変更することが非常に重要です。ホーム ネットワークのセキュリティをより適切に保護するために、この記事では、携帯電話を使用して WiFi パスワードを変更する方法に関する詳細なチュートリアルを紹介します。 1. WiFi パスワードの重要性を理解する WiFi パスワードは、インターネット時代において、個人情報とネットワーク セキュリティを保護するための第一の防御線です。その重要性を理解することで、パスワードを定期的に変更する必要がある理由をよりよく理解できます。 2. 電話機が Wi-Fi に接続されていることを確認します。まず、Wi-Fi パスワードを変更する前に、パスワードを変更する Wi-Fi ネットワークに電話機が接続されていることを確認します。 3. 電話機の設定メニューを開き、電話機の設定メニューに入ります。

Win10 のパスワードがパスワード ポリシーの要件を満たしていない場合はどうすればよいですか? コンピューターのパスワードがポリシーの要件を満たしていない場合はどうすればよいですか? Win10 のパスワードがパスワード ポリシーの要件を満たしていない場合はどうすればよいですか? コンピューターのパスワードがポリシーの要件を満たしていない場合はどうすればよいですか? Jun 25, 2024 pm 04:59 PM

Windows 10 システムでは、パスワード ポリシーは、ユーザーが設定したパスワードが特定の強度と複雑さの要件を満たしていることを確認するための一連のセキュリティ ルールです。システムがパスワードがパスワード ポリシーの要件を満たしていないことを示すメッセージを表示する場合、それは通常、パスワードがパスワード ポリシーの要件を満たしていないことを意味します。パスワードは、複雑さ、長さ、または文字の種類に関して Microsoft が設定した要件を満たしていません。どうすればこれを回避できますか?ユーザーはローカル コンピュータ ポリシーでパスワード ポリシーを直接見つけて操作を実行できます。以下を見てみましょう。パスワード ポリシーの仕様に準拠していない解決策: パスワードの長さを変更する: パスワード ポリシーの要件に従って、元の 6 桁のパスワードを 8 桁以上に変更するなど、パスワードの長さを増やすことができます。特殊文字の追加: パスワード ポリシーでは、@、#、$ などの特殊文字を含める必要があることがよくあります。私

接続されている携帯電話の WiFi パスワードを簡単に取得する方法 (携帯電話に保存されている WiFi パスワードをすぐに見つける) 接続されている携帯電話の WiFi パスワードを簡単に取得する方法 (携帯電話に保存されている WiFi パスワードをすぐに見つける) May 08, 2024 pm 01:10 PM

携帯電話は現代社会において私たちの生活に欠かせないものとなっています。ワイヤレス ネットワーク接続も、私たちの日常生活に欠かせないツールになっています。しかし、他のデバイスに接続したいのに接続できない、WiFi に接続したがパスワードを忘れたなどの状況に直面することがあります。接続されている携帯電話の WiFi パスワードを簡単に取得するにはどうすればよいですか?電話機に保存されている WiFi パスワードを見つける 1. 設定で「WiFi」オプションを見つけてクリックし、電話機の設定インターフェイス「WiFi」に入り、WiFi 設定ページのオプションに入ります。 2. 接続されている WiFi ネットワークの詳細を開き、接続されている WiFi ネットワークの名前を見つけ、クリックして WiFi 設定ページのネットワークの詳細情報ページに入ります。 3.

ルーター経由で Wi​​Fi パスワードをリセットする方法 (ホーム ネットワークのセキュリティを保護するための簡単な手順) ルーター経由で Wi​​Fi パスワードをリセットする方法 (ホーム ネットワークのセキュリティを保護するための簡単な手順) May 03, 2024 pm 03:01 PM

無線ネットワークは現代社会において私たちの生活に不可欠な部分となっています。ただし、自宅の WiFi ネットワークを保護することもますます重要になってきています。 WiFi パスワードのリセットは、ネットワークのセキュリティを確保するための重要なタスクです。ホームネットワークのセキュリティを保護するために、この記事ではルーターを通じてWiFiパスワードをリセットする方法を紹介します。ルーターのログイン インターフェイスを理解して、管理者のユーザー名とパスワードを入力し、現在の WiFi 名とパスワードを入力します。新しい WiFi パスワードを設定し、デバイスを再接続して、接続が成功したかどうかを確認します。

Java フレームワークのセキュリティ アーキテクチャ設計は、ビジネス ニーズとどのようにバランスをとる必要がありますか? Java フレームワークのセキュリティ アーキテクチャ設計は、ビジネス ニーズとどのようにバランスをとる必要がありますか? Jun 04, 2024 pm 02:53 PM

Java フレームワーク設計では、セキュリティ ニーズとビジネス ニーズのバランスをとることでセキュリティを実現し、主要なビジネス ニーズを特定し、関連するセキュリティ要件に優先順位を付けます。柔軟なセキュリティ戦略を策定し、脅威に階層的に対応し、定期的に調整します。アーキテクチャの柔軟性を考慮し、ビジネスの進化をサポートし、抽象的なセキュリティ機能を考慮します。効率と可用性を優先し、セキュリティ対策を最適化し、可視性を向上させます。

PHP マイクロフレームワーク: Slim と Phalcon のセキュリティに関する議論 PHP マイクロフレームワーク: Slim と Phalcon のセキュリティに関する議論 Jun 04, 2024 am 09:28 AM

PHP マイクロフレームワークにおける Slim と Phalcon のセキュリティ比較では、Phalcon には CSRF および XSS 保護、フォーム検証などのセキュリティ機能が組み込まれていますが、Slim にはすぐに使用できるセキュリティ機能がなく、手動で実装する必要があります。セキュリティ対策。セキュリティ クリティカルなアプリケーションの場合、Phalcon はより包括的な保護を提供するため、より良い選択肢となります。

C++ での機械学習アルゴリズムの実装: セキュリティに関する考慮事項とベスト プラクティス C++ での機械学習アルゴリズムの実装: セキュリティに関する考慮事項とベスト プラクティス Jun 01, 2024 am 09:26 AM

C++ で機械学習アルゴリズムを実装する場合、データ プライバシー、モデルの改ざん、入力検証などのセキュリティを考慮することが重要です。ベスト プラクティスには、安全なライブラリの採用、権限の最小化、サンドボックスの使用、継続的な監視が含まれます。実際のケースでは、Botan ライブラリを使用して CNN モデルを暗号化および復号化し、安全なトレーニングと予測を確保する方法を示します。

See all articles