ຂ້ອຍໄດ້ເຮັດການຄົ້ນຄວ້າບາງຢ່າງກ່ຽວກັບການຊອກຫາຕົວຢ່າງທີ່ດີຂອງຕົວກວດສອບຄວາມເຂັ້ມແຂງຂອງລະຫັດຜ່ານທີ່ໃຊ້ 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 ຂອງທ່ານເທົ່ານັ້ນ. ສິ່ງນີ້ຈະຊ່ວຍໃຫ້ທຸກຄົນທີ່ມີເຄື່ອງມືພັດທະນາໂປຣແກຣມທ່ອງເວັບສາມາດຂ້າມຜ່ານສະຄິບແລະໃຊ້ລະຫັດຜ່ານທີ່ພວກເຂົາຕ້ອງການ. ທ່ານຄວນ ນຳ ໃຊ້ການກວດສອບດ້ານເຊີຟເວີເພື່ອຢັ້ງຢືນຄວາມເຂັ້ມແຂງຂອງລະຫັດຜ່ານກ່ອນທີ່ຈະເກັບມັນໄວ້ໃນເວທີຂອງທ່ານ.
ຂ້ອຍພົບຕົວກວດຄວາມເຂັ້ມຂອງລະຫັດຜ່ານອື່ນ. ສູດການຄິດໄລ່ຂອງພວກເຂົາໂດຍອີງໃສ່ວັດຈະນານຸກົມຄໍາສັບຕ່າງໆ. ລອງໃຊ້ຢູ່ microsoft.com – http://www.microsoft.com/protect/yourself/password/checker.mspx ແລະຫນຶ່ງຢູ່ທີ່ itsimpl.com – http://www.itsimpl.com
ຂອບໃຈ! ຂອບໃຈ! ຂອບໃຈ! ຂ້າພະເຈົ້າໄດ້ fooling ປະມານ 2 ອາທິດທີ່ມີລະຫັດຄວາມເຂັ້ມແຂງລະຫັດຜ່ານ damn ຈາກເວັບໄຊທ໌ອື່ນໆແລະດຶງຜົມຂອງຂ້າພະເຈົ້າອອກ. ຂອງເຈົ້າແມ່ນສັ້ນ, ເຮັດວຽກຄືກັບທີ່ຂ້ອຍຕ້ອງການແລະດີທີ່ສຸດ, ງ່າຍສໍາລັບ javascript ຈົວທີ່ຈະດັດແປງ! ຂ້າພະເຈົ້າຕ້ອງການທີ່ຈະເກັບກໍາຄໍາຕັດສິນຂອງຄວາມເຂັ້ມແຂງແລະບໍ່ປ່ອຍໃຫ້ແບບຟອມໂພດເພື່ອອັບເດດລະຫັດຜ່ານຂອງຜູ້ໃຊ້ຢ່າງແທ້ຈິງເວັ້ນເສຍແຕ່ວ່າມັນພົບກັບການທົດສອບຄວາມເຂັ້ມແຂງ. ລະຫັດຂອງຄົນອື່ນສັບສົນເກີນໄປ ຫຼືເຮັດວຽກບໍ່ຖືກຕ້ອງ ຫຼືອັນອື່ນ. ຂ້ອຍຮັກເຈົ້າ! XXXXXX
ທ່ານຍິນດີຕ້ອນຮັບ! ທ່ານຍິນດີຕ້ອນຮັບ! ທ່ານຍິນດີຕ້ອນຮັບ!
ຂ້ອຍຮັກເຈົ້າຄືກັນ!
ຂອບໃຈພະເຈົ້າສໍາລັບຜູ້ທີ່ສາມາດຂຽນລະຫັດໄດ້ຢ່າງຖືກຕ້ອງ.
ມີປະສົບການຄືກັນກັບ Janis.
ນີ້ເຮັດວຽກອອກຈາກກ່ອງທີ່ເຫມາະສົມກັບຄົນເຊັ່ນຂ້ອຍທີ່ບໍ່ສາມາດລະຫັດ javascript!
ຂໍຂອບໃຈທ່ານສໍາລັບການຂຽນສິ້ນຂອງລະຫັດທີ່ເຮັດຕາມທີ່ມັນເວົ້າຢູ່ໃນກະປ໋ອງ!
ສະບາຍດີ, ກ່ອນອື່ນ ຂອບໃຈຫຼາຍໆສຳລັບຄວາມພະຍາຍາມຂອງເຈົ້າ, ຂ້ອຍພະຍາຍາມໃຊ້ມັນກັບ Asp.net ແຕ່ບໍ່ໄດ້ຜົນ, ຂ້ອຍກຳລັງໃຊ້ຢູ່.
ແທນທີ່ຈະ tag, ແລະມັນບໍ່ໄດ້ເຮັດວຽກ, ຄໍາແນະນໍາໃດໆ?!
ເຖິງ Nisreen: ລະຫັດໃນປ່ອງທີ່ໄຮໄລ້ໄວ້ໃຊ້ບໍ່ໄດ້ກັບ cut'n'paste. ຄໍາເວົ້າດຽວແມ່ນ messed ເຖິງ. ລະຫັດຂອງລິ້ງການສາທິດແມ່ນດີ.
ເຮີ້ຍ, ຂ້ອຍມັກບົດຂຽນຂອງເຈົ້າ! ຂ້ອຍໄດ້ແປມັນເປັນພາສາໂຮນລັງ, ແລະຂ້ອຍໄດ້ລົງມັນຢູ່ໃນເວທີສົນທະນາຂອງຂ້ອຍຢູ່ນີ້!
ດີຫຼາຍ! ມັນຄວນຈະເຮັດແນວໃດກັບລູກຄ້າຢ່າງແທ້ຈິງ
ວຽກງາມຫຼາຍ….
ຂອບໃຈ Douglas, ຂ້ອຍໃຊ້ມັນສໍາລັບວຽກປະຈຸບັນຂອງຂ້ອຍ.
"P@s$w0rD" ສະແດງໃຫ້ເຫັນຢ່າງແຂງແຮງ, ເຖິງແມ່ນວ່າມັນຈະຖືກແຕກຢ່າງໄວວາດ້ວຍການໂຈມຕີວັດຈະນານຸກົມ ...
ເພື່ອໃຊ້ຄຸນສົມບັດດັ່ງກ່າວໃນການແກ້ໄຂແບບມືອາຊີບ, ຂ້ອຍເຊື່ອວ່າມັນເປັນສິ່ງສໍາຄັນທີ່ຈະສົມທົບສູດການຄິດໄລ່ນີ້ກັບການກວດສອບວັດຈະນານຸກົມ.
ເຮັດວຽກໄດ້ດີໃນ XULRunner ທີ່ມີການປ່ຽນແປງເລັກນ້ອຍ. ຂອບໃຈ!
ຂໍຂອບໃຈສໍາລັບລະຫັດເລັກນ້ອຍນີ້ຂ້າພະເຈົ້າໃນປັດຈຸບັນສາມາດນໍາໃຊ້ມັນເພື່ອທົດສອບຄວາມເຂັ້ມແຂງລະຫັດຜ່ານຂອງຂ້າພະເຈົ້າເມື່ອຜູ້ເຂົ້າຊົມຂອງຂ້າພະເຈົ້າໃສ່ລະຫັດຜ່ານຂອງເຂົາເຈົ້າ,
ສິ້ນທີ່ຍິ່ງໃຫຍ່ຂອງການເຂົ້າລະຫັດ
ບົດຂຽນແມ່ນ Super. ຂ້ອຍເຄີຍໃຊ້ໃນໂຄງການປະຈຸບັນຂອງພວກເຮົາ
ຂອບໃຈສໍາລັບການແບ່ງປັນ!
ສະນັ້ນການສະແດງອອກງ່າຍດາຍແລະ fantastic. ຂ້ອຍເປັນຜູ້ທົດສອບໄດ້ເອົາ TCs ຂອງຂ້ອຍຈາກການສະແດງນີ້.
ຂອບໃຈສໍາລັບການແບ່ງປັນ. ທ່ານມີການເຊື່ອມຕໍ່ທີ່ແຕກຫັກບໍ່ຫຼາຍປານໃດຢູ່ໃນຫນ້ານີ້. FYI.
ບາງຄົນສາມາດບອກໄດ້, ເປັນຫຍັງມັນບໍ່ເຮັດວຽກຂອງຂ້ອຍ..
ຂ້າພະເຈົ້າໄດ້ຄັດລອກລະຫັດທັງຫມົດ, ແລະວາງມັນກັບ notepad++ , ແຕ່ວ່າມັນບໍ່ໄດ້ເຮັດວຽກທັງຫມົດ?
ຊ່ວຍຂ້ອຍແດ່..
ອັດສະຈັນ!!!!! ຂອບໃຈ.
ຄົນເກັ່ງ! ງ່າຍດາຍແລະປະສິດທິຜົນ. ຂອບໃຈຫຼາຍໆທີ່ແບ່ງປັນ!
ຂອບໃຈ
ດີ, thx. ແຕ່... ຕົວຢ່າງຂອງ STRONG pw ແມ່ນຫຍັງ? 'ຊອກບໍ່ເຫັນ!-{}
ປະເພດຂອງ "ຕົວກວດສອບຄວາມເຂັ້ມແຂງ" ນີ້ເຮັດໃຫ້ຄົນໄປສູ່ເສັ້ນທາງອັນຕະລາຍຫຼາຍ. ມັນໃຫ້ຄຸນຄ່າຄວາມຫຼາກຫຼາຍຂອງຕົວອັກສອນຕໍ່ກັບຄວາມຍາວຂອງລະຫັດຜ່ານ, ເຮັດໃຫ້ມັນໃຫ້ຄະແນນລະຫັດຜ່ານທີ່ສັ້ນກວ່າ, ມີຄວາມຫຼາກຫຼາຍຫຼາຍເປັນລະຫັດຜ່ານທີ່ຍາວກວ່າ, ມີຄວາມຫຼາກຫຼາຍໜ້ອຍກວ່າ. ນັ້ນແມ່ນຄວາມຜິດພາດທີ່ຈະເຮັດໃຫ້ຜູ້ໃຊ້ຂອງທ່ານມີບັນຫາຖ້າຫາກວ່າພວກເຂົາເຄີຍປະເຊີນກັບໄພຂົ່ມຂູ່ການ hacking ທີ່ຮ້າຍແຮງ.
ຂ້ອຍບໍ່ເຫັນດີນໍາ, ຈໍແດນ! ຕົວຢ່າງໄດ້ຖືກຍົກອອກມາເປັນຕົວຢ່າງຂອງ script. ຄໍາແນະນໍາຂອງຂ້ອຍສໍາລັບຄົນແມ່ນການນໍາໃຊ້ເຄື່ອງມືການຄຸ້ມຄອງລະຫັດຜ່ານເພື່ອສ້າງລະຫັດຜ່ານທີ່ເປັນເອກະລາດສໍາລັບເວັບໄຊທ໌ທີ່ເປັນເອກະລັກຂອງມັນ. ຂອບໃຈ!
ຂອບໃຈມັນເຮັດວຽກໄດ້ດີ.
ຂໍຂອບໃຈທ່ານເຮັດວຽກໄດ້ດີ
ຂ້ອຍຮູ້ສຶກຂອບໃຈແທ້ໆທີ່ເຈົ້າຄົ້ນຫານີ້ຫຼາຍເທື່ອແຕ່ສຸດທ້າຍຂ້ອຍໄດ້ຮັບຂໍ້ຄວາມຂອງເຈົ້າແລະຂ້ອຍປະຫລາດໃຈແທ້ໆ. ຂອບໃຈ
ຂໍຂອບໃຈການຫາຄູ່. ພຽງແຕ່ໃຊ້ຢູ່ໃນເວັບໄຊທ໌ຂອງຂ້ອຍແລະມັນກໍ່ເຮັດວຽກໄດ້ດີ.
ຮັກທີ່ໄດ້ຍິນ! ທ່ານຍິນດີຕ້ອນຮັບທີ່ສຸດ!
ຂ້າພະເຈົ້າຂໍຂອບໃຈທີ່ທ່ານແບ່ງປັນ! ໄດ້ຊອກຫາການເພີ່ມຄວາມເຂັ້ມແຂງຂອງລະຫັດຜ່ານຢູ່ໃນເວັບໄຊທ໌ຂອງພວກເຮົາແລະອັນນີ້ເຮັດວຽກຕາມທີ່ຂ້ອຍຕ້ອງການ. ຂອບໃຈຫຼາຍໆ!
ຂອບໃຈ, ຫວັງວ່າເຈົ້າສາມາດປັບແຕ່ງໄດ້ຕາມຄວາມຕ້ອງການ.
ເຈົ້າເປັນຕົວຊ່ວຍຊີວິດ! ຂ້ອຍ ກຳ ລັງວິເຄາະສະຕຣິງຊ້າຍຂວາແລະກາງແລະຄິດວ່າມີວິທີທີ່ດີກວ່າແລະພົບລະຫັດຂອງເຈົ້າໂດຍໃຊ້ Regex. ສາມາດ tinkle ກັບມັນສໍາລັບເວັບໄຊທ໌ຂອງຂ້ອຍ…ເຈົ້າບໍ່ຮູ້ວ່າອັນນີ້ຊ່ວຍໄດ້ຫຼາຍປານໃດ. ຂອບໃຈຫຼາຍໆ Douglas!!
ດີເລີດທີ່ຈະໄດ້ຍິນ!