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

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

É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 líka 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 í strengjum skref fyrir skref, er Regex venjulega miklu hraðari bæði á netþjóni og viðskiptavinur.

Ég leitaði talsvert á vefnum áður en ég fann dæmi af nokkrum frábærum reglulegum tjáningum 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ð staðfesta lykilorðsstyrkinn í rauntíma í vafra viðskiptavinarins áður en hann sendir það aftur ... og veitir notendum viðbrögð 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 í Javascriptinu þínu. Þetta myndi gera öllum með þróunarverkfæri vafra kleift að 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.

34 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ðstyrkskóð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! Ég vildi fanga styrkdóminn og láta formið ekki birta raunverulega uppfærslu á lykilorði notandans nema það stæðist 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!

  29. 33

    Þú ert lifandi bjargvættur! Ég var að flokka strengi til vinstri hægri og miðju og hélt að það væri betri leið og fann kóðann þinn með því að nota Regex. Gat tekist á við það fyrir síðuna mína ... Þú hefur ekki hugmynd um hvað þetta hjálpaði mikið. Takk kærlega Douglas !!

Hvað finnst þér?

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