შეამოწმეთ პაროლის სიძლიერე JavaScript და Regular Expressions- ით

შეამოწმეთ პაროლის სიძლიერე JavaScript და Regular Expressions- ით

მე ვატარებდი გარკვეულ გამოკვლევას პაროლის სიძლიერის შემმოწმებლის კარგი მაგალითის მოძიებაში JavaScript და რეგულარული გამონათქვამები (რეგექსი). ჩემს ნამუშევარში, ჩვენ ვაგზავნით შეტყობინებას, რომ გადავამოწმოთ პაროლის ძალა და ეს საკმაოდ მოუხერხებელია ჩვენი მომხმარებლებისთვის.

რა არის რეგექსი?

რეგულარული გამოხატვა არის სიმბოლოების თანმიმდევრობა, რომლებიც განსაზღვრავს ძიების ნიმუშს. ჩვეულებრივ, ასეთ შაბლონებს იყენებენ სტრიქონის ძიების ალგორითმებით მოვძებნოთ or იპოვე და ჩაანაცვლე ოპერაციები სტრიქონებზე ან შეყვანის ვალიდაციისთვის. 

ეს სტატია ნამდვილად არ არის იმისთვის, რომ გასწავლოთ რეგულარული გამოთქმები. უბრალოდ იცოდეთ, რომ რეგულარული გამოხატვის გამოყენების შესაძლებლობა აბსოლუტურად გაამარტივებს თქვენს განვითარებას ტექსტში ნიმუშების ძებნისას. ასევე მნიშვნელოვანია აღინიშნოს, რომ განვითარების ენების უმეტესობამ ოპტიმიზირებულია გამოხატვის რეგულარული გამოყენება regular ასე რომ, ვიდრე სტრიქონების ეტაპობრივად გაანალიზება და ძიება, Regex ჩვეულებრივ ბევრად უფრო სწრაფია, როგორც სერვერული, ასევე კლიენტის მხრიდან.

სანამ ინტერნეტს ვიპოვიდი, საკმაოდ ცოტა ვეძებე ინტერნეტში მაგალითად რამდენიმე შესანიშნავი რეგულარული გამოხატვისა, რომლებიც ეძებენ სიგრძის, სიმბოლოებისა და სიმბოლოების კომბინაციას. თუმცა, კოდი ოდნავ გადაჭარბებული იყო ჩემი გემოვნებისთვის და მორგებული იყო .NET– ზე. ასე რომ, მე გავამარტივე კოდი და ჩავდე JavaScript- ში. ეს საშუალებას მისცემს მას, შეამოწმოს პაროლის სიძლიერე რეალურ დროში კლიენტის ბრაუზერზე, სანამ გაგზავნით მის უკან და გარკვეულ უკუკავშირს მისცემს მომხმარებელს პაროლის სიძლიერის შესახებ.

აკრიფეთ პაროლი

კლავიატურის ყოველი დარტყმისას, პაროლი ტესტირდება რეგულარული გამოხატვის საწინააღმდეგოდ და შემდეგ მომხმარებელს მიეწოდება უკუკავშირი მის ქვეშ.




აკრიფეთ პაროლი

აქ არის კოდი

ის რეგულარული გამონათქვამები გააკეთე ფანტასტიკური სამუშაო, კოდის სიგრძის შემცირება:

  • მეტი პერსონაჟი - თუ სიგრძე 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>

თქვენი პაროლის მოთხოვნის გამკვრივება

აუცილებელია, რომ თქვენ უბრალოდ არ დაადასტუროთ პაროლის კონსტრუქცია თქვენს Javascript- ში. ეს საშუალებას მისცემს ნებისმიერს, რომლებსაც ბრაუზერის განვითარების ხელსაწყოები აქვთ, გვერდის ავლით მოახდინონ სკრიპტი და გამოიყენონ ნებისმიერი პაროლი, რომელიც მოისურვებენ. თქვენ ყოველთვის უნდა გამოიყენოთ სერვერის შემოწმება, რომ დაადასტუროთ პაროლის სიძლიერე თქვენს პლატფორმაში შენახვის წინ.

34 კომენტარები

  1. 1

    კიდევ ერთი პაროლის სიძლიერის ქვები ვიპოვნე. მათი ალგორითმი დაფუძნებულია სიტყვების ლექსიკონზე. სცადეთ ერთი microsoft.com - ზე http://www.microsoft.com/protect/yourself/password/checker.mspx და ერთი itsimpl.com - ზე http://www.itsimpl.com

  2. 2

    ᲒᲛᲐᲓᲚᲝᲑᲗ! ᲒᲛᲐᲓᲚᲝᲑᲗ! ᲒᲛᲐᲓᲚᲝᲑᲗ! მე უკვე 2 კვირა ვიყავი სულელი სხვა ვებსაიტების პაროლის კოდის გამოყენებით და თმას ვიწევ. შენი მოკლეა, მუშაობს ისევე, როგორც მე მსურს და რაც მთავარია, ადვილია javascript დამწყებთათვის შეცვლა! მინდოდა ძალაში გამოეტანა განაჩენი და ფორმაში გამოქვეყნების უფლება არ მიეცა, რომ რეალურად განახლებულიყო მომხმარებლის პაროლი, თუ იგი არ დააკმაყოფილებდა ძალას. სხვისი კოდი ძალიან რთული იყო ან არ მუშაობდა სწორად ან რაიმე სხვა. Მიყვარხარ! XXXXX

  3. 4

    მადლობა ღმერთს იმ ადამიანებისთვის, რომელთაც რეალურად შეუძლიათ კოდის სწორად წერა.
    იგივე გამოცდილება ჰქონდა, როგორც ჯენისს.

    ეს მუშაობს ყუთიდან, რაც შესანიშნავია ჩემნაირი ადამიანებისთვის, რომლებიც ვერ ადგენენ JavaScript– ს კოდს!

  4. 5
  5. 6

    გამარჯობა, უპირველეს ყოვლისა დიდი მადლობა ძალისხმევისთვის, მე შევეცადე ამის გამოყენება Asp.net– თან, მაგრამ არ გამომივიდა, მე ვხმარობ

    ნაცვლად ნიშნისა და ის არ მუშაობდა, რაიმე შემოთავაზება გაქვთ ?!

  6. 7
  7. 8
  8. 9
  9. 10
  10. 11

    "P @ s $ w0rD" კარგად ჩანს, თუმცა საკმაოდ სწრაფად გაიბზარება დიქციალური შეტევით ...
    პროფესიონალური გადაწყვეტისთვის ასეთი მახასიათებლის განსახორციელებლად, მე მჯერა, რომ მნიშვნელოვანია ამ ალგორითმის შერწყმა ასახული შემოწმებით.

  11. 12
  12. 13

    მადლობა ამ პატარა კოდისთვის, ახლა შემიძლია გამოვიყენო ჩემი პაროლის სიძლიერის შესამოწმებლად, როდესაც ჩემი ვიზიტორები შემოდიან მათ პაროლებში,

  13. 14
  14. 15
  15. 16
  16. 17
  17. 18
  18. 19
  19. 20
  20. 21

    მშვენიერი სამუშაო ბიჭია! მარტივი და ეფექტური. დიდი მადლობა გაზიარებისთვის!

  21. 22
  22. 23
  23. 24

    ამ ტიპის "ძალაუფლების შემოწმება" ხალხს ძალიან საშიში ბილიკისკენ მიჰყავს. იგი აფასებს პერსონაჟის მრავალფეროვნებას საიდუმლო ფრაზის სიგრძეზე, რის შედეგადაც იგი შეაფასებს უფრო მოკლე, უფრო მრავალფეროვან პაროლებს, როგორც უფრო ძლიერს, ვიდრე გრძელი, ნაკლებად მრავალფეროვანი პაროლები. ეს არის შეცდომა, რომელიც თქვენს მომხმარებლებს პრობლემები შეექმნებათ, თუკი ოდესმე სერიოზული საშიში საფრთხის წინაშე აღმოჩნდებიან.

    • 25

      არ ვეთანხმები, ჯორდან! ეს მაგალითი სცენარის მაგალითს წარმოადგინეს. ჩემი რეკომენდაცია ხალხისთვის არის პაროლის მართვის ინსტრუმენტის გამოყენება დამოუკიდებელი საიდუმლო ფრაზების შესაქმნელად ნებისმიერი საიტისთვის, რომელიც მისთვის დამახასიათებელია. მადლობა!

  24. 26
  25. 27
  26. 28
  27. 29
  28. 31

    მე ვაფასებ თქვენს გაზიარებას ჩვენს ვებგვერდზე ცდილობდა გაეძლიერებინა პაროლი და ეს ისე მუშაობდა, როგორც მე მინდოდა. Დიდი მადლობა!

  29. 33

    თქვენ ხართ ცოცხალი შემნახველი! მე ვაანალიზებდი სიმებს მარცხნივ მარჯვნივ და ცენტრში და ვფიქრობდი, რომ უკეთესი გზაა და ვიპოვნე შენი კოდის ნაწილი Regex– ის გამოყენებით. შეძლო ამის მოგვარება ჩემი საიტისთვის ... თქვენ წარმოდგენა არ გაქვთ, რამდენადაა ეს დახმარება. დიდი მადლობა დუგლას !!

ეს საიტი იყენებს Akismet- ს, რათა შეამციროს სპამი. შეისწავლეთ თქვენი კომენტარის მონაცემები დამუშავებული.