Athugaðu styrkleika lykilorðs með JavaScript og reglulegu segð

Athugaðu styrkleika lykilorðs með JavaScript og reglulegu segð
Lestur tími: 2 mínútur

Ég var að gera nokkrar rannsóknir á því að finna gott dæmi um lykilorðastyrkara sem notar JavaScript og Venjuleg tjáning (Regex). Í forritinu í vinnunni minni sendum við til baka til að staðfesta styrkleika lykilorðsins og það er mjög óþægilegt fyrir notendur okkar.

Hvað er Regex?

Regluleg tjáning er röð stafa sem skilgreinir leitarmynstur. Venjulega eru slík mynstur notuð af strengjaleitarreikniritum fyrir finna or finna og skipta út aðgerðir á strengjum, eða til að staðfesta inntak. 

Þessi grein er örugglega ekki til að kenna þér reglulega orðatiltæki. Veistu bara að hæfileikinn til að nota reglulega segð mun algerlega einfalda þróun þína þegar þú leitar að mynstri í texta. Það er einnig mikilvægt að hafa í huga að flest þróunarmál hafa fínstillt notkun reglulegrar tjáningar ... þannig að frekar en að flokka og leita strengi skref fyrir skref, er Regex venjulega mun hraðari bæði á netþjóni og viðskiptavinarhlið.

Ég leitaði talsvert á vefnum áður en ég fann dæmi af nokkrum frábærum reglulegum svipbrigðum sem leita að sambandi af lengd, stöfum og táknum. Hins vegar var kóðinn svolítið óhóflegur fyrir minn smekk og sérsniðinn fyrir .NET. Svo ég einfaldaði kóðann og setti hann í JavaScript. Þetta gerir það að verkum að það staðfestir lykilorðsstyrkinn í rauntíma í vafra viðskiptavinarins áður en hann birtir það aftur ... og veitir notendum svör um styrk lykilorðsins.

Sláðu inn lykilorð

Með hverju höggi á lyklaborðinu er lykilorðið prófað gegn venjulegri tjáningu og síðan er notendum veitt endurgjöf í sviðinu undir því.




Sláðu inn lykilorð

Hér er kóðinn

The Venjuleg tjáning gera frábært starf við að lágmarka lengd kóðans:

  • Fleiri persónur - Ef lengdin er undir 8 stöfum.
  • veik - Ef lengdin er minni en 10 stafir og inniheldur ekki sambland af táknum, hástöfum, texta.
  • Medium - Ef lengdin er 10 stafir eða meira og hefur sambland af táknum, hástöfum, texta.
  • Strong - Ef lengdin er 14 stafir eða meira og hefur sambland af táknum, hástöfum, texta.

<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>

Hertu lykilorðsbeiðni þína

Það er nauðsynlegt að þú staðfestir ekki bara lykilorðagerðina í Javascript þínu. Þetta myndi gera öllum með þróunarverkfæri vafra kleift að komast framhjá handritinu og nota hvaða lykilorð sem þeir vilja. Þú ættir ALLTAF að nota athugun á netþjóninum til að sannreyna styrkleika lykilorðsins áður en þú geymir það á kerfinu þínu.

32 Comments

  1. 1
  2. 2

    ÞAKKA ÞÉR FYRIR! ÞAKKA ÞÉR FYRIR! ÞAKKA ÞÉR FYRIR! Ég er búinn að vera að fíflast í 2 vikur með helvítis lykilorðsstyrkskóða frá öðrum vefsíðum og draga hárið úr mér. Kveðja er stutt, virkar eins og ég vil og best af öllu, auðvelt fyrir javascript nýliða að breyta! Mig langaði til að fanga styrkdóminn og láta formið ekki birtast til að uppfæra lykilorð notandans í raun nema það uppfyllti styrkprófið. Kóði annarra var of flókinn eða virkaði ekki rétt eða eitthvað annað. Ég elska þig! XXXXX

  3. 4

    þakka guði fyrir fólk sem getur í raun skrifað kóða rétt.
    Hafði sömu reynslu og Janis.

    Þetta virkar strax úr kassanum sem er fullkomið fyrir fólk eins og mig sem getur ekki kóða JavaScript!

  4. 5
  5. 6

    Hæ, fyrst og fremst takk mikið fyrir viðleitni þína, ég reyndi að nota þetta með Asp.net en virkaði ekki, ég er að nota

    í stað merkis, og það virkaði ekki, einhverjar uppástungur ?!

  6. 7
  7. 8

    Hey, mér líkar vel við handritið þitt! Ég þýddi það á hollensku og setti það inn á spjallborðið mitt hér!

  8. 9
  9. 10
  10. 11

    „P @ s $ w0rD“ sýnir á sterkum, þó að það yrði klikkað nokkuð fljótt með orðabókaárás ...
    Til að dreifa slíkum eiginleika í faglegri lausn tel ég mikilvægt að sameina þessa reiknirit við orðabókaathugun.

  11. 12
  12. 13

    Takk fyrir þennan litla kóða, ég get nú notað hann til að prófa styrk lykilorðs míns þegar gestir mínir leggja fram lykilorð þeirra,

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

    getur einhver sagt, af hverju það virkaði ekki mitt ..

    ég afritaði allan kóðann og límdi hann á notepad ++ en virkar alls ekki?
    Vinsamlegast hjálpaðu mér..

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

    Þessi tegund af „styrktareftirliti“ leiðir fólk niður mjög hættulega braut. Það metur fjölbreytni persóna yfir lengd lykilorða, sem leiðir til þess að stytta, fjölbreyttari lykilorð eru sterkari en lengri, minna fjölbreytt lykilorð. Það er rökvilla sem kemur notendum þínum í vandræði ef þeir standa frammi fyrir alvarlegri tölvuþrjótunarógn.

    • 25

      Ég er ekki ósammála, Jórdanía! Dæmið var einfaldlega sett fram sem dæmi um handritið. Mín tilmæli fyrir fólk eru að nota lykilorðsstjórnunartæki til að búa til sjálfstæð lykilorð fyrir hvaða síðu sem er einstök fyrir það. Takk fyrir!

  24. 26
  25. 27
  26. 28

    ég er mjög þakklátur fyrir að leitað er að þér oft en að síðustu fékk ég póstinn þinn og er mjög hress. ÞAKKA ÞÉR FYRIR

  27. 29
  28. 31

    Ég þakka að þú deilir! Hef verið að leita að því að auka lykilorðsstyrkinn á vefsíðunni okkar og þessi virkaði eins og ég vildi. Þakka þér kærlega!

Hvað finnst þér?

Þessi síða notar Akismet til að draga úr ruslpósti. Lærðu hvernig ummæli þín eru unnin.