ກວດສອບຄວາມເຂັ້ມແຂງຂອງລະຫັດຜ່ານດ້ວຍ JavaScript ແລະ ສຳ ນວນປົກກະຕິ

ກວດສອບຄວາມເຂັ້ມແຂງຂອງລະຫັດຜ່ານດ້ວຍ JavaScript ແລະ ສຳ ນວນປົກກະຕິ

ຂ້ອຍໄດ້ເຮັດການຄົ້ນຄວ້າບາງຢ່າງກ່ຽວກັບການຊອກຫາຕົວຢ່າງທີ່ດີຂອງຕົວກວດສອບຄວາມເຂັ້ມແຂງຂອງລະຫັດຜ່ານທີ່ໃຊ້ JavaScript ແລະ ສຳ ນວນປົກກະຕິ (Regex). ໃນແອັບພລິເຄຊັນໃນບ່ອນເຮັດວຽກຂອງຂ້ອຍ, ພວກເຮົາເຮັດບົດຕອບຄືນເພື່ອກວດສອບຄວາມເຂັ້ມແຂງຂອງລະຫັດຜ່ານແລະມັນບໍ່ສະດວກ ສຳ ລັບຜູ້ໃຊ້ຂອງພວກເຮົາ.

Regex ແມ່ນຫຍັງ?

ສຳ ນວນປົກກະຕິແມ່ນ ລຳ ດັບຂອງຕົວອັກສອນທີ່ ກຳ ນົດຮູບແບບການຄົ້ນຫາ. ໂດຍປົກກະຕິແລ້ວ, ຮູບແບບດັ່ງກ່າວແມ່ນຖືກ ນຳ ໃຊ້ໂດຍການຄົ້ນຫາຊ່ອຍແນ່ ຊອກຫາ or ຊອກຫາແລະທົດແທນ ປະຕິບັດງານກ່ຽວກັບຊ່ອຍແນ່, ຫຼືສໍາລັບຄວາມຖືກຕ້ອງປ້ອນຂໍ້ມູນ. 

ບົດຂຽນນີ້ແນ່ນອນບໍ່ໄດ້ສອນໃຫ້ທ່ານສະແດງອອກເປັນປະ ຈຳ. ພຽງແຕ່ຮູ້ວ່າຄວາມສາມາດໃນການ ນຳ ໃຊ້ການສະແດງອອກແບບປົກກະຕິຈະເຮັດໃຫ້ການພັດທະນາຂອງທ່ານງ່າຍດາຍທີ່ສຸດເມື່ອທ່ານຄົ້ນຫາຮູບແບບຕ່າງໆໃນຂໍ້ຄວາມ. ມັນຍັງມີຄວາມ ສຳ ຄັນທີ່ຈະຕ້ອງລະວັງວ່າພາສາການພັດທະນາສ່ວນໃຫຍ່ໄດ້ເພີ່ມປະສິດທິພາບການ ນຳ ໃຊ້ການສະແດງອອກແບບປົກກະຕິ…ສະນັ້ນແທນທີ່ຈະແຍກແລະຄົ້ນຫາເບິ່ງແຕ່ລະບາດກ້າວ, Regex ມັກຈະໄວກວ່າທັງ server ແລະ client-side.

ຂ້ອຍໄດ້ຄົ້ນຫາເວບໄຊທ໌ຂ້ອນຂ້າງ ໜ້ອຍ ໜຶ່ງ ກ່ອນທີ່ຂ້ອຍຈະພົບ ເປັນຕົວຢ່າງ ຂອງບາງ ສຳ ນວນປົກກະຕິທີ່ດີທີ່ຊອກຫາການປະສົມປະສານຂອງຄວາມຍາວ, ຕົວອັກສອນແລະສັນຍາລັກ. ເຖິງຢ່າງໃດກໍ່ຕາມ, ລະຫັດແມ່ນຫຼາຍເກີນໄປ ສຳ ລັບລົດຊາດຂອງຂ້ອຍແລະຖືກປັບແຕ່ງໃຫ້ .NET. ສະນັ້ນຂ້າພະເຈົ້າໄດ້ເຮັດລະຫັດງ່າຍໆແລະໃສ່ໃນ JavaScript. ນີ້ເຮັດໃຫ້ມັນສາມາດກວດສອບຄວາມເຂັ້ມແຂງຂອງລະຫັດຜ່ານໄດ້ໃນເວລາຈິງໃນ browser ຂອງລູກຄ້າກ່ອນທີ່ຈະໂພດມັນຄືນ…ແລະຕອບສະ ໜອງ ຄຳ ຄິດເຫັນບາງຢ່າງໃຫ້ກັບຜູ້ໃຊ້ກ່ຽວກັບຄວາມເຂັ້ມແຂງຂອງລະຫັດຜ່ານ.

ພິມລະຫັດຜ່ານ

ດ້ວຍແປ້ນພິມແຕ່ລະເສັ້ນ, ລະຫັດຜ່ານຈະຖືກທົດສອບກັບການສະແດງອອກແບບປົກກະຕິແລະຫຼັງຈາກນັ້ນ ຄຳ ຕິຊົມຈະຖືກຕອບສະ ໜອງ ໃຫ້ຜູ້ໃຊ້ໃນຂອບເຂດດ້ານລຸ່ມຂອງມັນ.




ພິມລະຫັດຜ່ານ

ນີ້ແມ່ນລະຫັດ

ໄດ້ ສຳ ນວນປົກກະຕິ ເຮັດວຽກທີ່ດີເລີດໃນການຫຼຸດຜ່ອນຄວາມຍາວຂອງລະຫັດດັ່ງນີ້:

  • ລັກສະນະເພີ່ມເຕີມ - ຖ້າຄວາມຍາວພາຍໃຕ້ 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

    ຂອບ​ໃຈ! ຂອບ​ໃຈ! ຂອບ​ໃຈ! ຂ້າ​ພະ​ເຈົ້າ​ໄດ້ fooling ປະ​ມານ 2 ອາ​ທິດ​ທີ່​ມີ​ລະ​ຫັດ​ຄວາມ​ເຂັ້ມ​ແຂງ​ລະ​ຫັດ​ຜ່ານ damn ຈາກ​ເວັບ​ໄຊ​ທ​໌​ອື່ນໆ​ແລະ​ດຶງ​ຜົມ​ຂອງ​ຂ້າ​ພະ​ເຈົ້າ​ອອກ. ຂອງເຈົ້າແມ່ນສັ້ນ, ເຮັດວຽກຄືກັບທີ່ຂ້ອຍຕ້ອງການແລະດີທີ່ສຸດ, ງ່າຍສໍາລັບ javascript ຈົວທີ່ຈະດັດແປງ! ຂ້າພະເຈົ້າຕ້ອງການທີ່ຈະເກັບກໍາຄໍາຕັດສິນຂອງຄວາມເຂັ້ມແຂງແລະບໍ່ປ່ອຍໃຫ້ແບບຟອມໂພດເພື່ອອັບເດດລະຫັດຜ່ານຂອງຜູ້ໃຊ້ຢ່າງແທ້ຈິງເວັ້ນເສຍແຕ່ວ່າມັນພົບກັບການທົດສອບຄວາມເຂັ້ມແຂງ. ລະຫັດຂອງຄົນອື່ນສັບສົນເກີນໄປ ຫຼືເຮັດວຽກບໍ່ຖືກຕ້ອງ ຫຼືອັນອື່ນ. ຂ້ອຍ​ຮັກ​ເຈົ້າ! XXXXXX

    • 3

      ທ່ານຍິນດີຕ້ອນຮັບ! ທ່ານຍິນດີຕ້ອນຮັບ! ທ່ານຍິນດີຕ້ອນຮັບ!

      ຂ້ອຍ​ຮັກ​ເຈົ້າ​ຄື​ກັນ!

  3. 4

    ຂອບໃຈພະເຈົ້າສໍາລັບຜູ້ທີ່ສາມາດຂຽນລະຫັດໄດ້ຢ່າງຖືກຕ້ອງ.
    ມີປະສົບການຄືກັນກັບ Janis.

    ນີ້ເຮັດວຽກອອກຈາກກ່ອງທີ່ເຫມາະສົມກັບຄົນເຊັ່ນຂ້ອຍທີ່ບໍ່ສາມາດລະຫັດ javascript!

  4. 5

    ຂໍ​ຂອບ​ໃຈ​ທ່ານ​ສໍາ​ລັບ​ການ​ຂຽນ​ສິ້ນ​ຂອງ​ລະ​ຫັດ​ທີ່​ເຮັດ​ຕາມ​ທີ່​ມັນ​ເວົ້າ​ຢູ່​ໃນ​ກະ​ປ໋ອງ​!

  5. 6

    ສະບາຍດີ, ກ່ອນອື່ນ ຂອບໃຈຫຼາຍໆສຳລັບຄວາມພະຍາຍາມຂອງເຈົ້າ, ຂ້ອຍພະຍາຍາມໃຊ້ມັນກັບ Asp.net ແຕ່ບໍ່ໄດ້ຜົນ, ຂ້ອຍກຳລັງໃຊ້ຢູ່.

    ແທນທີ່ຈະ tag, ແລະມັນບໍ່ໄດ້ເຮັດວຽກ, ຄໍາແນະນໍາໃດໆ?!

  6. 7

    ເຖິງ Nisreen: ລະຫັດໃນປ່ອງທີ່ໄຮໄລ້ໄວ້ໃຊ້ບໍ່ໄດ້ກັບ cut'n'paste. ຄໍາເວົ້າດຽວແມ່ນ messed ເຖິງ. ລະຫັດຂອງລິ້ງການສາທິດແມ່ນດີ.

  7. 8

    ເຮີ້ຍ, ຂ້ອຍມັກບົດຂຽນຂອງເຈົ້າ! ຂ້ອຍໄດ້ແປມັນເປັນພາສາໂຮນລັງ, ແລະຂ້ອຍໄດ້ລົງມັນຢູ່ໃນເວທີສົນທະນາຂອງຂ້ອຍຢູ່ນີ້!

  8. 9
  9. 10
  10. 11

    "P@s$w0rD" ສະແດງໃຫ້ເຫັນຢ່າງແຂງແຮງ, ເຖິງແມ່ນວ່າມັນຈະຖືກແຕກຢ່າງໄວວາດ້ວຍການໂຈມຕີວັດຈະນານຸກົມ ...
    ເພື່ອໃຊ້ຄຸນສົມບັດດັ່ງກ່າວໃນການແກ້ໄຂແບບມືອາຊີບ, ຂ້ອຍເຊື່ອວ່າມັນເປັນສິ່ງສໍາຄັນທີ່ຈະສົມທົບສູດການຄິດໄລ່ນີ້ກັບການກວດສອບວັດຈະນານຸກົມ.

  11. 12
  12. 13

    ຂໍ​ຂອບ​ໃຈ​ສໍາ​ລັບ​ລະ​ຫັດ​ເລັກ​ນ້ອຍ​ນີ້​ຂ້າ​ພະ​ເຈົ້າ​ໃນ​ປັດ​ຈຸ​ບັນ​ສາ​ມາດ​ນໍາ​ໃຊ້​ມັນ​ເພື່ອ​ທົດ​ສອບ​ຄວາມ​ເຂັ້ມ​ແຂງ​ລະ​ຫັດ​ຜ່ານ​ຂອງ​ຂ້າ​ພະ​ເຈົ້າ​ເມື່ອ​ຜູ້​ເຂົ້າ​ຊົມ​ຂອງ​ຂ້າ​ພະ​ເຈົ້າ​ໃສ່​ລະ​ຫັດ​ຜ່ານ​ຂອງ​ເຂົາ​ເຈົ້າ​,

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

    ສະນັ້ນການສະແດງອອກງ່າຍດາຍແລະ fantastic. ຂ້ອຍເປັນຜູ້ທົດສອບໄດ້ເອົາ TCs ຂອງຂ້ອຍຈາກການສະແດງນີ້.

  17. 18

    ຂອບໃຈສໍາລັບການແບ່ງປັນ. ທ່ານມີການເຊື່ອມຕໍ່ທີ່ແຕກຫັກບໍ່ຫຼາຍປານໃດຢູ່ໃນຫນ້ານີ້. FYI.

  18. 19

    ບາງຄົນສາມາດບອກໄດ້, ເປັນຫຍັງມັນບໍ່ເຮັດວຽກຂອງຂ້ອຍ..

    ຂ້າ​ພະ​ເຈົ້າ​ໄດ້​ຄັດ​ລອກ​ລະ​ຫັດ​ທັງ​ຫມົດ​, ແລະ​ວາງ​ມັນ​ກັບ notepad++ , ແຕ່​ວ່າ​ມັນ​ບໍ່​ໄດ້​ເຮັດ​ວຽກ​ທັງ​ຫມົດ​?
    ຊ່ວຍ​ຂ້ອຍ​ແດ່..

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

    ປະເພດຂອງ "ຕົວກວດສອບຄວາມເຂັ້ມແຂງ" ນີ້ເຮັດໃຫ້ຄົນໄປສູ່ເສັ້ນທາງອັນຕະລາຍຫຼາຍ. ມັນໃຫ້ຄຸນຄ່າຄວາມຫຼາກຫຼາຍຂອງຕົວອັກສອນຕໍ່ກັບຄວາມຍາວຂອງລະຫັດຜ່ານ, ເຮັດໃຫ້ມັນໃຫ້ຄະແນນລະຫັດຜ່ານທີ່ສັ້ນກວ່າ, ມີຄວາມຫຼາກຫຼາຍຫຼາຍເປັນລະຫັດຜ່ານທີ່ຍາວກວ່າ, ມີຄວາມຫຼາກຫຼາຍໜ້ອຍກວ່າ. ນັ້ນແມ່ນຄວາມຜິດພາດທີ່ຈະເຮັດໃຫ້ຜູ້ໃຊ້ຂອງທ່ານມີບັນຫາຖ້າຫາກວ່າພວກເຂົາເຄີຍປະເຊີນກັບໄພຂົ່ມຂູ່ການ hacking ທີ່ຮ້າຍແຮງ.

    • 25

      ຂ້ອຍບໍ່ເຫັນດີນໍາ, ຈໍແດນ! ຕົວຢ່າງໄດ້ຖືກຍົກອອກມາເປັນຕົວຢ່າງຂອງ script. ຄໍາແນະນໍາຂອງຂ້ອຍສໍາລັບຄົນແມ່ນການນໍາໃຊ້ເຄື່ອງມືການຄຸ້ມຄອງລະຫັດຜ່ານເພື່ອສ້າງລະຫັດຜ່ານທີ່ເປັນເອກະລາດສໍາລັບເວັບໄຊທ໌ທີ່ເປັນເອກະລັກຂອງມັນ. ຂອບໃຈ!

  24. 26
  25. 27
  26. 28

    ຂ້ອຍຮູ້ສຶກຂອບໃຈແທ້ໆທີ່ເຈົ້າຄົ້ນຫານີ້ຫຼາຍເທື່ອແຕ່ສຸດທ້າຍຂ້ອຍໄດ້ຮັບຂໍ້ຄວາມຂອງເຈົ້າແລະຂ້ອຍປະຫລາດໃຈແທ້ໆ. ຂອບ​ໃຈ

  27. 29
  28. 31

    ຂ້າພະເຈົ້າຂໍຂອບໃຈທີ່ທ່ານແບ່ງປັນ! ໄດ້ຊອກຫາການເພີ່ມຄວາມເຂັ້ມແຂງຂອງລະຫັດຜ່ານຢູ່ໃນເວັບໄຊທ໌ຂອງພວກເຮົາແລະອັນນີ້ເຮັດວຽກຕາມທີ່ຂ້ອຍຕ້ອງການ. ຂອບ​ໃຈ​ຫຼາຍໆ!

  29. 33

    ເຈົ້າເປັນຕົວຊ່ວຍຊີວິດ! ຂ້ອຍ ກຳ ລັງວິເຄາະສະຕຣິງຊ້າຍຂວາແລະກາງແລະຄິດວ່າມີວິທີທີ່ດີກວ່າແລະພົບລະຫັດຂອງເຈົ້າໂດຍໃຊ້ Regex. ສາມາດ tinkle ກັບມັນສໍາລັບເວັບໄຊທ໌ຂອງຂ້ອຍ…ເຈົ້າບໍ່ຮູ້ວ່າອັນນີ້ຊ່ວຍໄດ້ຫຼາຍປານໃດ. ຂອບໃຈຫຼາຍໆ Douglas!!

ທ່ານຄິດແນວໃດ?

ເວັບໄຊທ໌ນີ້ໃຊ້ Akismet ເພື່ອຫຼຸດຜ່ອນການຂີ້ເຫຍື້ອ. ຮຽນຮູ້ວິທີທີ່ຂໍ້ມູນຂອງທ່ານຖືກປະຕິບັດ.