ホームページ ウェブフロントエンド jsチュートリアル ユーザーが設定したパスワード強度の正規表現を検証する

ユーザーが設定したパスワード強度の正規表現を検証する

Mar 29, 2018 am 10:29 AM
パスワード 強さ 設定

今回は、ユーザーが設定したパスワードの強度を確認するための正規表現について説明します。ユーザーが設定したパスワードの強度を確認するための注意事項を実際に見てみましょう。一見。

この記事では、パスワードの強度を表す 2 つの正規表現スキームを示します。1 つは単純なもので、もう 1 つはより複雑で安全なものです。そして、2 つのソリューションの分析とテスト手順をそれぞれ示します。一般に、プロジェクトの実際のニーズに基づいて、独自のパスワードの規則的な規則を定義できます。

はじめに

ユーザー登録の際、パスワードの正規性検証が行われます。正しい正規表現を作成するには、最初に式ルールを定義する必要があります。

オプション 1 (単純)

パスワード検証が次のように定義されていると仮定します:

  • 最小 6 桁、最大 16 桁 {6,16}

  • 小文字 [a-z] および大文字 [A-Z]

  • には数字を含めることができます [0-9]

  • アンダースコア [_] とマイナス記号 [-] を含めることができます

上記のルールに従って、規則的なものを与えるのは簡単ですリテラル定義 次のように:

var pattern = /^[\w_-]{6,16}$/;
ログイン後にコピー

シナリオ 1 分析

Literal/ /

正規表現のリテラルは、1 組のスラッシュ (/) の間に含まれる文字として定義されます。例:

var pattern = /s$/;
ログイン後にコピー

上記リテラル 文字「s」で終わる任意の文字列と一致します。

文字クラス [ ]

文字を角括弧で囲んで文字クラスを形成します。文字クラスは、それに含まれる任意の文字と一致します。したがって、正規表現 /[abc]/ は、文字「a」、「b」、または「c」のいずれかと一致します。

文字クラスでは、ハイフンを使用して文字範囲を表すことができます。ラテン語の小文字と一致させるには、 /[a-z]/ を使用します。

文字クラス w

文字クラス w は、[a-zA-Z0-9] に相当する、ASCII 文字で構成される任意の単語に一致します。

[w_-] は、ラテン語の大文字と小文字、数字、アンダースコア、マイナス記号と一致することを意味します。

Repeat {}

正規表現で { } を使用して、要素の繰り返し回数を表します。

  • {n,m} は前の項目と少なくとも n 回一致しますが、m 回以下です

  • {n,} は前の項目と n 回以上一致します

  • {n} は前の項目と一致しますitem n 回の item

[w_-]{6,16} は、少なくとも 6 回、最大で 16 回出現するラテン語の大文字と小文字、数字、アンダースコア、マイナス記号と一致することを意味します。

位置の一致

^ 複数行検索の場合は文字列の先頭に一致し、行の先頭に一致します
$ 複数行の検索の場合は文字列の末尾に一致し、行の末尾に一致します
/^w/ は、大文字または小文字の文字または数字で始まる文字列に一致します。

プラン1のテスト

テスト結果は以下の通りです:

var pattern = /^[\w_-]{6,16}$/;
pattern.test('123456') = true;
pattern.test('-ifat33') = true;
pattern.test('42du') = false;
pattern.test('du42du42du42du421') = false;
pattern.test('42du42@') = false;
ログイン後にコピー

ソースコードを見る

テスト結果によると、プラン1はパスワードを一時的に制限するだけで、強度を保証できないことがわかりますパスワードとアカウントのセキュリティ。

オプション 2 (セキュリティ)

パスワード検証が次のように定義されているとします:

  • 最小値は 6 桁、最大値は 16 桁です {6,16}

  • には 1 が含まれている必要があります数値

  • 小文字が2つ含まれている必要があります

  • 大文字が2つ含まれている必要があります

  • 特殊文字が1つ含まれている必要があります

上記のルールによれば、次のように通常のリテラル定義を与えるのは簡単です以下に続きます:

var pattern = /^.*(?=.{6,16})(?=.*\d)(?=.*[A-Z]{2,})(?=.*[a-z]{2,})(?=.*[!@#$%^&*?\(\)]).*$/;
ログイン後にコピー

方案2分析

字符类 .

字符类 . 表示除换行符和其他Unicode行终止符之外的任意字符。

正向先行断言 (?= )

在符号“(?=” 和 “)” 之间加入一个表达式,它就是一个先行断言,用以说明圆括号内的表达式必须正确匹配。比如: /Java(?=\:)/ 只能匹配Java且后面有冒号的。

(?=.*[!@#$%^&*?\(\)])

该先行断言表示,必须包括一个特殊字符。上述表达式中的10个特殊字符为键盘1,2...0的上档键字符,也可以添加别的特殊字符。注意:如果添加字符是正则表达式中具有特殊含义的,需要在符号前加反斜线(\)转义。

方案2测试

给出测试结果如下:

var pattern = /^.*(?=.{6,16})(?=.*\d)(?=.*[A-Z]{2,})(?=.*[a-z]{2,})(?=.*[!@#$%^&*?\(\)]).*$/;
pattern.test('du42DU!') = true;
pattern.test('duDUd!') = false;
pattern.test('42dud!') = false;
pattern.test('42DUD!') = false;
pattern.test('42duDU') = false;
pattern.test('42duU(') = false;
pattern.test('42dUU!') = false;
ログイン後にコピー

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

Vue.js自定义事件如何进行表单输入组件

Vue用下表修改数组时页面不渲染如何处理

以上がユーザーが設定したパスワード強度の正規表現を検証するの詳細内容です。詳細については、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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Windows 11 で続行するために管理者のユーザー名とパスワードの入力を求められる問題を解決するにはどうすればよいですか? Windows 11 で続行するために管理者のユーザー名とパスワードの入力を求められる問題を解決するにはどうすればよいですか? Apr 11, 2024 am 09:10 AM

Win11 を使用している場合、管理者のユーザー名とパスワードの入力を要求される場合があるため、この記事ではその対処方法について説明します。方法 1: 1. [Windows ロゴ] をクリックし、[Shift+Restart] を押してセーフ モードに入るか、[スタート] メニューをクリックして [設定] を選択するという方法でセーフ モードに入ります。 「更新とセキュリティ」を選択し、「回復」で「今すぐ再起動する」を選択し、再起動してオプションを入力した後、 - トラブルシューティング - 詳細オプション - 起動設定 -&mdash を選択します。

Douyinで作品の公開予定時刻を設定するにはどうすればよいですか?動画の長さはどのように設定されますか? Douyinで作品の公開予定時刻を設定するにはどうすればよいですか?動画の長さはどのように設定されますか? Mar 27, 2024 pm 06:11 PM

Douyinで作品を公開すると注目やいいねが集まりやすくなりますが、リアルタイムで作品を公開することが難しい場合もありますので、その場合はDouyinの予約公開機能をご利用ください。 Douyin のスケジュールリリース機能を使用すると、ユーザーはスケジュールされた時間に作品を自動的に公開できるため、リリース計画をより適切に計画し、作品の露出と影響力を高めることができます。 1. Douyin で作品を公開する予定時間を設定するにはどうすればよいですか?リリース予定時刻を設定するには、まずDouyinの個人ホームページにアクセスし、右上隅にある「+」ボタンを見つけて、クリックしてリリースページに入ります。公開ページの右下隅に時計アイコンがあります。クリックすると、スケジュールされた公開インターフェイスが表示されます。インターフェースでは、短いビデオ、長いビデオ、ライブブロードキャストなど、公開したい作品の種類を選択できます。次に、作品を公開する時間を設定する必要があります。 TikTokが提供する

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

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

Douyinタグはどこに設定されていますか?正確にプッシュできるようにするにはどうすればタグ付けできるでしょうか? Douyinタグはどこに設定されていますか?正確にプッシュできるようにするにはどうすればタグ付けできるでしょうか? Mar 27, 2024 am 11:01 AM

世界で最も人気のあるショートビデオ プラットフォームの 1 つである Douyin を使用すると、誰もがクリエイターになって人生のあらゆる瞬間を共有できます。 Douyin ユーザーにとって、タグは非常に重要な機能であり、ユーザーがコンテンツをより適切に分類して取得できるようになり、プラットフォームが適切なコンテンツをより正確にユーザーにプッシュできるようになります。では、Douyin タグはどこに設定されているのでしょうか?この記事ではDouyinでのタグの設定方法と使い方を詳しく解説します。 1.Douyinタグはどこに設定されていますか? Douyin でタグを使用すると、ユーザーが自分の作品をより適切に分類およびラベル付けできるようになり、他のユーザーが作品を見つけてフォローしやすくなります。ラベルを設定する方法は次のとおりです。 1. Douyin APP を開き、アカウントにログインします。 2. 画面下部の「+」記号をクリックし、「公開」ボタンを選択します。 3.

パスワードが間違っています。BitLocker の警告に注意してください パスワードが間違っています。BitLocker の警告に注意してください Mar 26, 2024 am 09:41 AM

この記事では、間違ったパスワードの問題を解決する方法、特に BitLocker の警告に対処する際の注意の必要性について説明します。この警告は、ドライブのロックを解除するために BitLocker に間違ったパスワードを複数回入力するとトリガーされます。通常、この警告は、不正なログイン試行を制限するポリシーがシステムにあるために発生します (通常、ログイン試行は 3 回まで許可されます)。この場合、ユーザーは適切な警告メッセージを受け取ります。完全な警告メッセージは次のとおりです: 入力されたパスワードが間違っています。間違ったパスワードを入力し続けると、アカウントがロックされることに注意してください。これは、データのセキュリティを保護するためです。アカウントのロックを解除する必要がある場合は、BitLocker 回復キーを使用する必要があります。パスワードが間違っています。コンピュータにログインするときに表示される BitLocker 警告に注意してください

携帯電話の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 桁以上に変更するなど、パスワードの長さを増やすことができます。特殊文字の追加: パスワード ポリシーでは、@、#、$ などの特殊文字を含める必要があることがよくあります。私

Weibo でスケジュール公開を設定する方法_Weibo でスケジュール公開を設定する方法のチュートリアル Weibo でスケジュール公開を設定する方法_Weibo でスケジュール公開を設定する方法のチュートリアル Mar 29, 2024 pm 03:51 PM

1. Weibo クライアントを開き、編集ページで 3 つの小さな点をクリックし、[予約投稿] をクリックします。 2. 予約投稿をクリックすると、公開時間の右側に時間オプションが表示されますので、時間を設定し、記事を編集し、右下の黄色の文字をクリックして投稿を予約します。 3. モバイル版 Weibo は現在予約公開をサポートしていないため、この機能は PC クライアントでのみ使用できます。

See all articles