जावास्क्रिप्ट आणि नियमित अभिव्यक्तींसह संकेतशब्द सामर्थ्य तपासा

जावास्क्रिप्ट आणि नियमित अभिव्यक्तींसह संकेतशब्द सामर्थ्य तपासा

मी वापरत असलेल्या संकेतशब्द सामर्थ्य परीक्षकांचे चांगले उदाहरण शोधण्यासाठी मी काही संशोधन करत होतो जावास्क्रिप्ट आणि नियमित अभिव्यक्ती (रीजेक्स) माझ्या कामाच्या अनुप्रयोगात आम्ही संकेतशब्द सामर्थ्य सत्यापित करण्यासाठी एक पोस्ट परत करतो आणि आमच्या वापरकर्त्यांसाठी ती गैरसोयीची आहे.

रेजेक्स म्हणजे काय?

नियमित अभिव्यक्ती म्हणजे वर्णांची अनुक्रम जो शोध नमुना परिभाषित करते. सहसा, अशा नमुन्यांचा वापर स्ट्रिंग शोध अल्गोरिदमसाठी केला जातो शोधणे or शोधा आणि पुनर्स्थित करा तारांवर ऑपरेशन किंवा इनपुट वैधतेसाठी. 

हा लेख आपल्याला नियमित अभिव्यक्ती शिकवण्यासाठी नक्कीच नाही. फक्त हे जाणून घ्या की नियमित अभिव्यक्ती वापरण्याची क्षमता आपला मजकूरातील नमुन्यांचा शोध घेताना आपला विकास पूर्णपणे सुलभ करेल. हे लक्षात घेणे देखील महत्त्वाचे आहे की बर्‍याच विकास भाषांनी नियमित अभिव्यक्ती वापर अनुकूलित केले आहे… म्हणून चरण-दर-चरण तारांचे विश्लेषण आणि शोध घेण्याऐवजी, रेजेक्स सर्व्हर आणि क्लायंट-साइड दोन्हीपेक्षा वेगवान असतो.

मी सापडण्यापूर्वी मी वेबवर थोडा शोध घेतला एक उदाहरण लांबी, वर्ण आणि चिन्हे यांचे संयोजन शोधणार्‍या काही उत्कृष्ट नियमित अभिव्यक्तींचे. तथापि, माझ्या चवसाठी कोड थोडा जास्त होता आणि .नेटसाठी तयार केला. म्हणून मी कोड सोपी केला आणि जावास्क्रिप्टमध्ये ठेवला. हे त्यास परत पोस्ट करण्यापूर्वी क्लायंटच्या ब्राउझरवर रिअल-टाइममध्ये संकेतशब्द सामर्थ्य सत्यापित करते ... आणि संकेतशब्दाच्या सामर्थ्यावर वापरकर्त्यास काही अभिप्राय प्रदान करते.

पासवर्ड टाइप करा

कीबोर्डच्या प्रत्येक स्ट्रोकसह संकेतशब्दाची नियमित अभिव्यक्तीविरूद्ध चाचणी केली जाते आणि त्यानंतर त्यास खाली असलेल्या कालावधीत वापरकर्त्यास अभिप्राय प्रदान केला जातो.




संकेतशब्द टाइप करा

कोड येथे आहे

अगोदर निर्देश केलेल्या बाबीसंबंधी बोलताना नियमित अभिव्यक्ती कोडची लांबी कमी करण्यासाठी एक विलक्षण कार्य करा:

  • अधिक वर्ण - जर लांबी 8 वर्णांपेक्षा कमी असेल.
  • कमकुवत - जर लांबी 10 वर्णांपेक्षा कमी असेल आणि त्यात चिन्हे, सामने, मजकूर यांचे संयोजन नसेल.
  • मध्यम - जर लांबी 10 वर्ण किंवा त्याहून अधिक असेल आणि प्रतीक, सामने, मजकूर यांचे संयोजन असेल.
  • मजबूत - जर लांबी 14 वर्ण किंवा त्याहून अधिक असेल आणि प्रतीक, सामने, मजकूर यांचे संयोजन असेल.

<script language="javascript">
    function passwordChanged() {
        var strength = document.getElementById('strength');
        var strongRegex = new RegExp("^(?=.{14,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$", "g");
        var mediumRegex = new RegExp("^(?=.{10,})(((?=.*[A-Z])(?=.*[a-z]))|((?=.*[A-Z])(?=.*[0-9]))|((?=.*[a-z])(?=.*[0-9]))).*$", "g");
        var enoughRegex = new RegExp("(?=.{8,}).*", "g");
        var pwd = document.getElementById("password");
        if (pwd.value.length == 0) {
            strength.innerHTML = 'Type Password';
        } else if (false == enoughRegex.test(pwd.value)) {
            strength.innerHTML = 'More Characters';
        } else if (strongRegex.test(pwd.value)) {
            strength.innerHTML = '<span style="color:green">Strong!</span>';
        } else if (mediumRegex.test(pwd.value)) {
            strength.innerHTML = '<span style="color:orange">Medium!</span>';
        } else {
            strength.innerHTML = '<span style="color:red">Weak!</span>';
        }
    }
</script>
<input name="password" id="password" type="text" size="15" maxlength="100" onkeyup="return passwordChanged();" />
<span id="strength">Type Password</span>

आपली संकेतशब्द विनंती कठोर करीत आहे

आपण फक्त आपल्या जावास्क्रिप्टमध्ये संकेतशब्द बांधकाम सत्यापित करू शकत नाही हे आवश्यक आहे. हे ब्राउझर विकास साधनांसह कोणालाही स्क्रिप्टला बायपास करण्यास आणि त्यांना पाहिजे असलेला संकेतशब्द वापरण्यास सक्षम करेल. आपण आपल्या प्लॅटफॉर्ममध्ये संचयित करण्यापूर्वी संकेतशब्द सामर्थ्य प्रमाणित करण्यासाठी नेहमी सर्व्हर-साइड तपासणीचा वापर केला पाहिजे.

34 टिप्पणी

  1. 1

    मला आणखी एक संकेतशब्द सामर्थ्य चेकर्स सापडले. शब्द शब्दकोषावर आधारित त्यांचे अल्गोरिदम. मायक्रोसॉफ्ट.कॉम वर प्रयत्न करा - http://www.microsoft.com/protect/yourself/password/checker.mspx आणि एक itimpl.com वर - http://www.itsimpl.com

  2. 2

    धन्यवाद! धन्यवाद! धन्यवाद! मी इतर वेबसाइट्सवरील निंदनीय संकेतशब्द सामर्थ्य कोडसह 2 आठवड्यांपासून सुमारे मूर्ख बनवित आहे आणि माझे केस बाहेर काढत आहे. आपले छोटे आहे, मला पाहिजे त्याप्रमाणे कार्य करते आणि सर्वांत उत्तम, जावास्क्रिप्ट नवशिक्या सुधारित करणे सोपे आहे! मला सामर्थ्य निर्णयाचा हस्तक्षेप करायचा आहे आणि सामर्थ्य चाचणी पूर्ण केल्याशिवाय फॉर्म पोस्ट वापरकर्त्याच्या संकेतशब्दाचे वास्तविकपणे अद्यतनित करू देणार नाही. इतर लोकांचा कोड खूपच गुंतागुंत होता किंवा कार्य करत नाही किंवा काहीतरी वेगळं. मी तुझ्यावर प्रेम करतो! एक्सएक्सएक्सएक्सएक्सएक्स

  3. 4

    जे लोक खरोखर कोडचा एक तुकडा योग्यरित्या लिहू शकतात अशा देवाचे आभार मानतो.
    जानीस सारखा अनुभव होता.

    हे अगदी बॉक्सच्या बाहेर कार्य करते जे माझ्यासारख्या लोकांसाठी योग्य आहे जे कोड जावास्क्रिप्ट करु शकत नाही!

  4. 5
  5. 6

    नमस्कार, तुमच्या प्रयत्नांसाठी सर्वप्रथम धन्यवाद, मी हे Asp.net सह वापरण्याचा प्रयत्न केला पण कार्य केले नाही, मी वापरत आहे

    टॅगऐवजी, आणि ते कार्य करीत नाही, काही सूचना ?!

  6. 7

    निसरिनला: हायलाइट बॉक्समधील कोड कट'नपॅस्टसह कार्य करत नाही. एकच कोट गोंधळलेला आहे. प्रात्यक्षिक दुव्याचा कोड जरी ठीक आहे.

  7. 8

    अहो, मला तुमची स्क्रिप्ट आवडली! मी त्याचे भाषांतर डचमध्ये केले आणि मी ते माझ्या फोरमवर येथे पोस्ट केले!

  8. 9
  9. 10
  10. 11

    “पी @ एस $ डब्ल्यू ० आरडी” जोरदारपणे दर्शवितो, जरी त्यास एका विलक्षण आक्रमणाने बर्‍याच लवकर वेडसर केले जाईल…
    प्रोफेशनल सोल्यूशनवर असे वैशिष्ट्य उपयोजित करण्यासाठी, माझा विश्वास आहे की या अल्गोरिदमला डिक्टनरी चेकसह एकत्र करणे महत्वाचे आहे.

  11. 12
  12. 13

    माझ्या अभ्यागतांनी त्यांचे संकेतशब्द प्रविष्ट केले तेव्हा मी या संकेतशब्दाची सामर्थ्यता तपासण्यासाठी या लहान कोडबद्दल धन्यवाद.

  13. 14
  14. 15
  15. 16
  16. 17

    इतके सोपे आणि विलक्षण अभिव्यक्ती. परीक्षेच्या रूपाने मी या अभिव्यक्तीतून माझे टीसी घेतले.

  17. 18

    सामायिक केल्याबद्दल धन्यवाद. आपल्याकडे या पृष्ठावरील काही तुटलेले दुवे आहेत. एफवायआय

  18. 19

    कुणीतरी सांगू शकेल, का हे माझ्या का चालत नाही ..?

    मी सर्व कोड कॉपी केला आणि तो ++ पेन वर पेस्ट केला, परंतु हे अजिबात कार्य करत नाही?
    कृपया मला मदत करा..

  19. 20
  20. 21
  21. 22
  22. 23

    चांगले, thx. पण… स्ट्राँग स्ट्रिंगडब्ल्यूचं उदाहरण काय? 'एक सापडत नाही! -}}

  23. 24

    या प्रकारच्या “सामर्थ्य परीक्षक” लोकांना धोकादायक मार्गावर नेतात. हे पासफ्रेज लांबीपेक्षा वर्ण भिन्नतेचे महत्त्व देते, त्याऐवजी कमी, कमी वैविध्यपूर्ण संकेतशब्दापेक्षा अधिक भिन्न, भिन्न संकेतशब्दांना दर देतात. ही एक चूक आहे जी आपल्या वापरकर्त्यांना कधीही हैकिंगच्या गंभीर धोक्याचा सामना केल्यास त्यांना अडचणीत आणेल.

    • 25

      मी सहमत नाही, जॉर्डन! लिपीचे उदाहरण म्हणून उदाहरणे स्पष्टपणे मांडले गेले. लोकांसाठी माझी शिफारस म्हणजे एखाद्या संकेतशब्दाच्या व्यवस्थापनाचे साधन वापरावे जे विशिष्ट नसलेल्या कोणत्याही साइटसाठी स्वतंत्र सांकेतिक वाक्यांश तयार करेल. धन्यवाद!

  24. 26
  25. 27
  26. 28

    याबद्दल मी बर्‍याचदा शोध घेतो याबद्दल खरंच मी त्याची प्रशंसा करतो पण शेवटी मला तुझे पोस्ट मिळाले आणि खरोखर आश्चर्यचकित झाले. धन्यवाद

  27. 29
  28. 31

    मी तुम्हाला सामायिक प्रशंसा! आमच्या वेबसाइटवर संकेतशब्द सामर्थ्यवान बनविण्यासाठी शोधत आहात आणि याने मला पाहिजे त्या मार्गाने कार्य केले. खूप खूप धन्यवाद!

  29. 33

    आपण थेट बचतकर्ता आहात! मी डावीकडील उजवीकडील आणि मध्यभागी विश्लेषित करीत होतो आणि मला वाटले की एक चांगला मार्ग आहे आणि रेजेक्स वापरुन आपला कोड तुकडा सापडला. माझ्या साइटसाठी यासह टिंकल करण्यास सक्षम होते… याने किती मदत केली हे आपल्याला माहिती नाही. धन्यवाद डग्लस !!

तुला काय वाटत?

ही साइट स्पॅम कमी करण्यासाठी अकिस्मेट वापरते आपल्या टिप्पणी डेटावर प्रक्रिया कशी केली जाते ते जाणून घ्या.