پاس ورڈ کی مضبوطی کا جانچنے والا
پاس ورڈ کی مضبوطی، اینٹروپی اور عام کمزوریوں کا پتہ لگائیں۔ تمام جانچ آپ کے براؤزر میں مقامی طور پر چلتی ہے۔
مضبوطی کا جانچ
- لمبائی
- چھوٹے حروف
- بڑے حروف
- اعداد
- علامات
- ترتیب
- تکرار
- بلاک لسٹ
- کی بورڈ کا پیٹرن
- تاریخ
- دوره
- ساہulat مند لگ رہا ہے! اسے بہتر کرنے کے لیے کوئی نشاندہی نہیں مل رہی ہے۔
استعمال کا طریقہ
خصوصیات
- 100% مقامی تجزیہ، رازداری کو ترجیح دیں۔
- اعلی درجے کی جانچ: کی بورڈ کے چھڑے، تاریخ، دورانیہ کی تکرار، ترتیب، تکرار وغیرہ۔
- Leet وحدت بلاک لسٹ مماثلت (جیسے Pa$$w0rd → password)۔
- لچکدار پالیسی: کم از کم لمبائی اور حروف کی قسم کی ضروریات۔
- ایک کلک میں پالیسی JSON درآمد/برآمد کریں۔
- ایک کلک میں ڈیٹیکٹر میں تجزیہ کریں
عام سوالات
اینٹروپی کا استعمال حروف کے مجموعے اور لمبائی کی بنیاد پر تلاش کے فضا کے سائز کا اندازہ لگانے کے لیے کیا جاتا ہے۔ اگر کوئی ساختی عنصر (پیٹرن، الفاظ) موجود ہو، تو یہاں تک کہ اگر اصل بٹ بہت زیادہ نظر آتے ہیں، بھی موثر اینٹروپی کم ہو جائے گی۔
- ترتیب والا سلسلہ، جیسے abcde یا 12345۔
- ایک ہی حرف کی لمبی تکرار (جیسے aaaa)۔
- صارف کی طرف سے متعین کردہ بلیک لسٹ میں موجود عام کمزور الفاظ/پیٹرن سے مماثل۔
- کی بورڈ کے ترتیب یا ملحقہ کیز کے سلسلے (جیسے qwerty، asdf)۔
- تاریخوں کا انداز (جیسے YYYYMMDD، dd-mm-yyyy)۔
- تکراری ذیلی سلسلوں (جیسے abcabc، 121212)۔
- بلیک لسٹ میں مماثلت کے پہلے لیٹ کو معمول میں تبدیل کرنا (جیسے Pa$$w0rd → password)۔
خراب کرنے کا وقت صرف ایک موٹا اندازہ ہے۔ اصل حملے میں لغت، پردہ اور جی پی یو کا استعمال کیا جاتا ہے۔ چھوٹے اور واضح ساخت والے پاس ورڈ اکثر اپنے ظاہری اینٹروپی کی قیمت سے بہت کمزور ہوتے ہیں۔
- ترجیحاً لمبے بے ترتیب پاس ورڈ فریز (4 سے زیادہ الفاظ) یا پاس ورڈ مینیجر سے تیار کردہ پاس ورڈ استعمال کریں۔
- ذاتی معلومات، تاریخیں اور پیش گوئی کے قابل ساخت سے گریز کریں۔
- پاس ورڈ مینیجر استعمال کریں، اور جہاں تک ممکن ہو کثیر عنصری تصدیق (MFA) کو فعال کریں۔
- پاس ورڈ کو دوبارہ استعمال نہ کریں؛ صرف اس وقت تبدیل کریں جب اسے لیک کیا جائے۔
کمپیوٹر کی زبانوں کے ذریعے پاس ورڈ کی مضبوطی کو کیسے جانچیں
یہاں کمیونٹی کے بالغ لائبریریوں کا کم سے کم مثال ہے، آپ اپنے ٹیکنالوجی اسٹیک کے مطابق منتخب کر سکتے ہیں۔
<!-- CDN -->
<script src="https://unpkg.com/[email protected]/dist/zxcvbn.js"></script>
<script>
const res = zxcvbn('P@ssw0rd!');
console.log(res.score, res.crack_times_display);
</script>
// npm i @zxcvbn-ts/core
import { zxcvbn } from '@zxcvbn-ts/core';
const result = zxcvbn('P@ssw0rd!');
console.log(result.score, result.guesses_log10);
composer require bjeavons/zxcvbn-php
<?php
require __DIR__ . '/vendor/autoload.php';
use ZxcvbnPhp\\Zxcvbn;
$zxcvbn = new Zxcvbn();
$res = $zxcvbn->passwordStrength('P@ssw0rd!');
echo $res['score'];
pip install zxcvbn
from zxcvbn import zxcvbn
res = zxcvbn('P@ssw0rd!')
print(res['score'], res['crack_times_display'])
go get github.com/nbutton23/zxcvbn-go
package main
import (
"fmt"
zxcvbn "github.com/nbutton23/zxcvbn-go"
)
func main() {
res := zxcvbn.PasswordStrength("P@ssw0rd!", nil)
fmt.Println(res.Score, res.Guesses)
}
# Add dependency
cargo add zxcvbn
use zxcvbn::zxcvbn;
fn main() {
match zxcvbn("P@ssw0rd!", &[]) {
Ok(estimate) => {
println!("score: {}", estimate.score()); // 0..4
if let Some(times) = estimate.crack_times() {
println!("offline: {:?}", times.offline_slow_hashing_1e4_per_second());
}
}
Err(err) => eprintln!("zxcvbn error: {err}"),
}
}
وضاحت: یہ لائبریریں طاقت اور پیٹرن کا تخمینہ دیتے ہیں، جو اس صفحے کے جانچ کے آئٹمز سے قدرے مختلف ہو سکتے ہیں۔