09
07
Password Strength Finder Using jQuery Plugin

Hi friends today i am showing you how you can check your password strength. Password is one of the major authentication to prove identity or access approval for the user. In today’s workplace, almost everything we do requires some form of password-guarded access. Everyone know the password should be long, complicate and practically impossible to remember, but many of us still ignore those rules for the sake of convenience. Many people fall foul of poor password security at one point or another. So we are showing the password strength for the user how weak and strength is your password.

Password Strength Finder

The world major password used by the user:
  • 1. 123456
  • 2. 12345678
  • 3. abc123
  • 4. monkey
  • 5. lemon
  • 6. baseball
  • 7. football
  • 8. iloveyou
  • 9. master
  • 10. sunshine
  • 11. passw0rd
  • 12. 123123
  • 13. shadow
  • 14. 111111
  • 15. 654321
  • 16. qazwsx
  • 17. michael
  • 18. america
  • 19. Dragaon
  • 20. ashley
  • 21. bailey
  • 22. trustme
The password which is mentioned above are easily hacked by the user. Id Below are the basic rules how your password should be:
  • 1. Minimum 6 character
  • 2. Include One Uppecase character
  • 3. One special character
  • 4. One aphaumeric character
  • 5. One digit
    • Depending upon the above rules we have created the password strength checker to check your password.

      HTML Code:

      1. <div class="row">  
      2.             <div class="col-md-4 col-md-offset-4">  
      3.                 <div class="panel panel-default">  
      4.                     <div class="panel-body">  
      5.                         <div class="text-center">  
      6.                           <h3><i class="fa fa-lock fa-4x"></i></h3>  
      7.                           <h2 class="text-center">Password Strength Finder</h2>  
      8.                             <div class="panel-body">  
      9.                                 
      10.                               <form class="form">  
      11.                                 <fieldset>  
      12.                                    
      13.                                         
      14.                                 <div class="form-group">  
      15.                                  <label>Password</label>  
      16.                                     <div class="input-group">  
      17.                                         <div class="input-group-addon"><i class="fa fa-  
      18.   
      19. key"></i>  
      20.                                         </div>  
      21.                                         <input class="form-control placeholded" data-val="true" data-val-length="password must be between 6 and 100 characters long." data-val-length-="" max="100" data-val-length-min="6" data-val-required="password is required" id="Password" name="Password" placeholder="min 6 characters" rows="12" type="password">  
      22.                                     </div>  
      23.                                   </div>  
      24.                                 
      25.                                 <div class="form-group">  
      26.                                     <label>Strength</label>  
      27.                                     <div id="pw-val-container">  
      28.                                         <div id="pw-val-progress"></div>  
      29.                                         <div id="pw-val-verdict"></div>  
      30.                                         <div id="pw-val-errors"></div>  
      31.                                     </div>  
      32.                                 
      33.                                   </div>  
      34.                                 </fieldset>  
      35.                               </form>  
      36.                                 
      37.                             </div>  
      38.                         </div>  
      39.                     </div>  
      40.                 </div>  
      41.             </div>  
      42.         </div>  

      Javascript Code:

      1.     $(document).ready(function () {  
      2.         "use strict";  
      3.         var options = {};  
      4.        options.ui = {showErrors:false, showVerdictsInsideProgressBar:true,   
      5.   
      6. container:'#pw-val-container',viewports:{progress:'#pw-val-progress',verdict:'#pw-val-  
      7.   
      8. verdict',errors:'#pw-val-errors'}};  
      9.   
      10.     $('#Password').pwstrength(options);  
      11.   
      12.     });  

      Password Strength Jquery Plugin:

      1. function(n) {  
      2.     var r = {},  
      3.         n, u, t, i, f;  
      4.     try {  
      5.         !n && module && module.exports && (n = require("jquery"), u = require("jsdom").jsdom, n = n(u().parentWindow))  
      6.     } catch (e) {}! function(n, t) {  
      7.         "use strict";  
      8.         var i = {};  
      9.         t.forbiddenSequences = ["0123456789""abcdefghijklmnopqrstuvwxyz""qwertyuiop""asdfghjkl""zxcvbnm""!@#$%^&*()_+"];  
      10.         i.wordNotEmail = function(n, t, i) {  
      11.             return t.match('/^([\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+\.)*[\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+@((((([a-z0-9]{1}[a-z0-9\-]{0,62}[a-z0-9]{1})|[a-z])\.)+[a-z]{2,6})|(\d{1,3}\.){3}\d{1,3}(\:\d{1,5})?)$/i') ? i : 0  
      12.         };  
      13.         i.wordLength = function(n, t, i) {  
      14.             var r = t.length,  
      15.                 u = Math.pow(r, n.rules.raisePower);  
      16.             return r < n.common.minChar && (u += i), u  
      17.         };  
      18.         i.wordSimilarToUsername = function(t, i, r) {  
      19.             var u = n(t.common.usernameField).val();  
      20.             return u && i.toLowerCase().match(u.toLowerCase()) ? r : 0  
      21.         };  
      22.         i.wordTwoCharacterClasses = function(n, t, i) {  
      23.             return t.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/) || t.match(/([a-zA-Z])/) && t.match(/([0-9])/) || t.match(/(.[!,@,#,$,%,\^,&,*,?,_,~])/) && t.match(/[a-zA-Z0-9_]/) ? i : 0  
      24.         };  
      25.         i.wordRepetitions = function(n, t, i) {  
      26.             return t.match(/(.)\1\1/) ? i : 0  
      27.         };  
      28.         i.wordSequences = function(i, r, u) {  
      29.             var f, e = !1;  
      30.             return r.length > 2 && (n.each(t.forbiddenSequences, function(t, i) {  
      31.                 var u = [i, i.split("").reverse().join("")];  
      32.                 n.each(u, function(n, t) {  
      33.                     for (f = 0; f < r.length - 2; f += 1) t.indexOf(r.toLowerCase().substring(f, f + 3)) > -1 && (e = !0)  
      34.                 })  
      35.             }), e) ? u : 0  
      36.         };  
      37.         i.wordLowercase = function(n, t, i) {  
      38.             return t.match(/[a-z]/) && i  
      39.         };  
      40.         i.wordUppercase = function(n, t, i) {  
      41.             return t.match(/[A-Z]/) && i  
      42.         };  
      43.         i.wordOneNumber = function(n, t, i) {  
      44.             return t.match(/\d+/) && i  
      45.         };  
      46.         i.wordThreeNumbers = function(n, t, i) {  
      47.             return t.match(/(.*[0-9].*[0-9].*[0-9])/) && i  
      48.         };  
      49.         i.wordOneSpecialChar = function(n, t, i) {  
      50.             return t.match(/.[!,@,#,$,%,\^,&,*,?,_,~]/) && i  
      51.         };  
      52.         i.wordTwoSpecialChar = function(n, t, i) {  
      53.             return t.match(/(.*[!,@,#,$,%,\^,&,*,?,_,~].*[!,@,#,$,%,\^,&,*,?,_,~])/) && i  
      54.         };  
      55.         i.wordUpperLowerCombo = function(n, t, i) {  
      56.             return t.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/) && i  
      57.         };  
      58.         i.wordLetterNumberCombo = function(n, t, i) {  
      59.             return t.match(/([a-zA-Z])/) && t.match(/([0-9])/) && i  
      60.         };  
      61.         i.wordLetterNumberCharCombo = function(n, t, i) {  
      62.             return t.match(/([a-zA-Z0-9].*[!,@,#,$,%,\^,&,*,?,_,~])|([!,@,#,$,%,\^,&,*,?,_,~].*[a-zA-Z0-9])/) && i  
      63.         };  
      64.         t.validation = i;  
      65.         t.executeRules = function(i, r) {  
      66.             var u = 0;  
      67.             return n.each(i.rules.activated, function(f, e) {  
      68.                 if (e) {  
      69.                     var o, h, c = i.rules.scores[f],  
      70.                         s = t.validation[f];  
      71.                     n.isFunction(s) || (s = i.rules.extra[f]);  
      72.                     n.isFunction(s) && (o = s(i, r, c), o && (u += o), (0 > o || !n.isNumeric(o) && !o) && (h = i.ui.spanError(i, f), h.length > 0 && i.instances.errors.push(h)))  
      73.                 }  
      74.             }), u  
      75.         }  
      76.     }(n, r);  
      77.     try {  
      78.         module && module.exports && (module.exports = r)  
      79.     } catch (e) {}  
      80.     t = {};  
      81.     t.common = {};  
      82.     t.common.minChar = 6;  
      83.     t.common.usernameField = "#username";  
      84.     t.common.userInputs = [];  
      85.     t.common.onLoad = void 0;  
      86.     t.common.onKeyUp = void 0;  
      87.     t.common.zxcvbn = !1;  
      88.     t.common.debug = !1;  
      89.     t.rules = {};  
      90.     t.rules.extra = {};  
      91.     t.rules.scores = {  
      92.         wordNotEmail: -100,  
      93.         wordLength: -50,  
      94.         wordSimilarToUsername: -100,  
      95.         wordSequences: -50,  
      96.         wordTwoCharacterClasses: 2,  
      97.         wordRepetitions: -25,  
      98.         wordLowercase: 1,  
      99.         wordUppercase: 3,  
      100.         wordOneNumber: 3,  
      101.         wordThreeNumbers: 5,  
      102.         wordOneSpecialChar: 3,  
      103.         wordTwoSpecialChar: 5,  
      104.         wordUpperLowerCombo: 2,  
      105.         wordLetterNumberCombo: 2,  
      106.         wordLetterNumberCharCombo: 2  
      107.     };  
      108.     t.rules.activated = {  
      109.         wordNotEmail: !0,  
      110.         wordLength: !0,  
      111.         wordSimilarToUsername: !0,  
      112.         wordSequences: !0,  
      113.         wordTwoCharacterClasses: !1,  
      114.         wordRepetitions: !1,  
      115.         wordLowercase: !0,  
      116.         wordUppercase: !0,  
      117.         wordOneNumber: !0,  
      118.         wordThreeNumbers: !0,  
      119.         wordOneSpecialChar: !0,  
      120.         wordTwoSpecialChar: !0,  
      121.         wordUpperLowerCombo: !0,  
      122.         wordLetterNumberCombo: !0,  
      123.         wordLetterNumberCharCombo: !0  
      124.     };  
      125.     t.rules.raisePower = 1.4;  
      126.     t.ui = {};  
      127.     t.ui.bootstrap2 = !1;  
      128.     t.ui.showProgressBar = !0;  
      129.     t.ui.showPopover = !1;  
      130.     t.ui.showStatus = !1;  
      131.     t.ui.spanError = function(n, t) {  
      132.         "use strict";  
      133.         var i = n.ui.errorMessages[t];  
      134.         return i ? '<span style="color: #d52929">' + i + "<\/span>" : ""  
      135.     };  
      136.     t.ui.errorMessages = {  
      137.         wordLength: "Your password is too short",  
      138.         wordNotEmail: "Do not use your email as your password",  
      139.         wordSimilarToUsername: "Your password cannot contain your username",  
      140.         wordTwoCharacterClasses: "Use different character classes",  
      141.         wordRepetitions: "Too many repetitions",  
      142.         wordSequences: "Your password contains sequences"  
      143.     };  
      144.     t.ui.verdicts = ["Weak""Normal""Medium""Strong""Very Strong"];  
      145.     t.ui.showVerdicts = !0;  
      146.     t.ui.showVerdictsInsideProgressBar = !1;  
      147.     t.ui.showErrors = !1;  
      148.     t.ui.container = void 0;  
      149.     t.ui.viewports = {  
      150.         progress: void 0,  
      151.         verdict: void 0,  
      152.         errors: void 0  
      153.     };  
      154.     t.ui.scores = [14, 26, 38, 50];  
      155.     i = {};  
      156.     ! function(n, t) {  
      157.         "use strict";  
      158.         var r = ["danger""warning""success"],  
      159.             i = ["error""warning""success"];  
      160.         t.getContainer = function(t, i) {  
      161.             var r;  
      162.             return r = n(t.ui.container), r && 1 === r.length || (r = i.parent()), r  
      163.         };  
      164.         t.findElement = function(n, t, i) {  
      165.             return t ? n.find(t).find(i) : n.find(i)  
      166.         };  
      167.         t.getUIElements = function(n, i) {  
      168.             var u, r;  
      169.             return n.instances.viewports ? n.instances.viewports : (u = t.getContainer(n, i), r = {}, r.$progressbar = t.findElement(u, n.ui.viewports.progress, "div.progress"), n.ui.showVerdictsInsideProgressBar && (r.$verdict = r.$progressbar.find("span.password-verdict")), n.ui.showPopover || (n.ui.showVerdictsInsideProgressBar || (r.$verdict = t.findElement(u, n.ui.viewports.verdict, "span.password-verdict")), r.$errors = t.findElement(u, n.ui.viewports.errors, "ul.error-list")), n.instances.viewports = r, r)  
      170.         };  
      171.         t.initProgressBar = function(i, r) {  
      172.             var f = t.getContainer(i, r),  
      173.                 u = "<div class="progress"><div class="";  
      174.             i.ui.bootstrap2 || (u += "progress-");  
      175.             u += "bar">";  
      176.             i.ui.showVerdictsInsideProgressBar && (u += "<span class="password-verdict"><\/span>");  
      177.             u += "<\/div><\/div>";  
      178.             i.ui.viewports.progress ? f.find(i.ui.viewports.progress).append(u) : n(u).insertAfter(r)  
      179.         };  
      180.         t.initHelper = function(i, r, u, f) {  
      181.             var e = t.getContainer(i, r);  
      182.             f ? e.find(f).append(u) : n(u).insertAfter(r)  
      183.         };  
      184.         t.initVerdict = function(n, i) {  
      185.             t.initHelper(n, i, "<span class="password-verdict"><\/span>", n.ui.viewports.verdict)  
      186.         };  
      187.         t.initErrorList = function(n, i) {  
      188.             t.initHelper(n, i, "<ul class="error-list"><\/ul>", n.ui.viewports.errors)  
      189.         };  
      190.         t.initPopover = function(n, t) {  
      191.             t.popover("destroy");  
      192.             t.popover({  
      193.                 html: !0,  
      194.                 placement: "bottom",  
      195.                 trigger: "manual",  
      196.                 content: " "  
      197.             })  
      198.         };  
      199.         t.initUI = function(n, i) {  
      200.             n.ui.showPopover ? t.initPopover(n, i) : (n.ui.showErrors && t.initErrorList(n, i), n.ui.showVerdicts && !n.ui.showVerdictsInsideProgressBar && t.initVerdict(n, i));  
      201.             n.ui.showProgressBar && t.initProgressBar(n, i)  
      202.         };  
      203.         t.possibleProgressBarClasses = ["danger""warning""success"];  
      204.         t.updateProgressBar = function(i, u, f, e) {  
      205.             var h = t.getUIElements(i, u).$progressbar,  
      206.                 o = h.find(".progress-bar"),  
      207.                 s = "progress-";  
      208.             i.ui.bootstrap2 && (o = h.find(".bar"), s = "");  
      209.             n.each(t.possibleProgressBarClasses, function(n, t) {  
      210.                 o.removeClass(s + "bar-" + t)  
      211.             });  
      212.             o.addClass(s + "bar-" + r[f]);  
      213.             o.css("width", e + "%")  
      214.         };  
      215.         t.updateVerdict = function(n, i, r) {  
      216.             var u = t.getUIElements(n, i).$verdict;  
      217.             u.text(r)  
      218.         };  
      219.         t.updateErrors = function(i, r) {  
      220.             var f = t.getUIElements(i, r).$errors,  
      221.                 u = "";  
      222.             n.each(i.instances.errors, function(n, t) {  
      223.                 u += "<li>" + t + "<\/li>"  
      224.             });  
      225.             f.html(u)  
      226.         };  
      227.         t.updatePopover = function(t, i, r) {  
      228.             var f = i.data("bs.popover"),  
      229.                 u = "",  
      230.                 e = !0;  
      231.             return t.ui.showVerdicts && !t.ui.showVerdictsInsideProgressBar && r.length > 0 && (u = "<h5><span class="password-verdict">" + r + "<\/span><\/h5>", e = !1), t.ui.showErrors && (u += "<div>Errors:<ul class="error-list" style="margin-bottom: 0;">", n.each(t.instances.errors, function(n, t) {  
      232.                 u += "<li>" + t + "<\/li>";  
      233.                 e = !1  
      234.             }), u += "<\/ul><\/div>"), e ? void i.popover("hide") : (t.ui.bootstrap2 && (f = i.data("popover")), void(f.$arrow && f.$arrow.parents("body").length > 0 ? i.find("+ .popover .popover-content").html(u) : (f.options.content = u, i.popover("show"))))  
      235.         };  
      236.         t.updateFieldStatus = function(t, r, u) {  
      237.             var e = t.ui.bootstrap2 ? ".control-group" : ".form-group",  
      238.                 f = r.parents(e).first();  
      239.             n.each(i, function(n, i) {  
      240.                 t.ui.bootstrap2 || (i = "has-" + i);  
      241.                 f.removeClass(i)  
      242.             });  
      243.             u = i[u];  
      244.             t.ui.bootstrap2 || (u = "has-" + u);  
      245.             f.addClass(u)  
      246.         };  
      247.         t.percentage = function(n, t) {  
      248.             var i = Math.floor(100 * n / t);  
      249.             return i = 0 > i ? 0 : i, i = i > 100 ? 100 : i  
      250.         };  
      251.         t.getVerdictAndCssClass = function(n, t) {  
      252.             var i, r, u;  
      253.             return 0 >= t ? (i = 0, u = -1, r = n.ui.verdicts[0]) : t < n.ui.scores[0] ? (i = 0, u = 0, r = n.ui.verdicts[0]) : t < n.ui.scores[1] ? (i = 0, u = 1, r = n.ui.verdicts[1]) : t < n.ui.scores[2] ? (i = 1, u = 2, r = n.ui.verdicts[2]) : t < n.ui.scores[3] ? (i = 1, u = 3, r = n.ui.verdicts[3]) : (i = 2, u = 4, r = n.ui.verdicts[4]), [r, i, u]  
      254.         };  
      255.         t.updateUI = function(n, i, r) {  
      256.             var u, e, f;  
      257.             u = t.getVerdictAndCssClass(n, r);  
      258.             f = u[0];  
      259.             u = u[1];  
      260.             n.ui.showProgressBar && (e = t.percentage(r, n.ui.scores[3]), t.updateProgressBar(n, i, u, e), n.ui.showVerdictsInsideProgressBar && t.updateVerdict(n, i, f));  
      261.             n.ui.showStatus && t.updateFieldStatus(n, i, u);  
      262.             n.ui.showPopover ? t.updatePopover(n, i, f) : (n.ui.showVerdicts && !n.ui.showVerdictsInsideProgressBar && t.updateVerdict(n, i, f), n.ui.showErrors && t.updateErrors(n, i))  
      263.         }  
      264.     }(n, i);  
      265.     f = {};  
      266.     ! function(n, u) {  
      267.         "use strict";  
      268.         var f, e;  
      269.         f = function(t) {  
      270.             var o, f, h, e, s = n(t.target),  
      271.                 u = s.data("pwstrength-bootstrap"),  
      272.                 c = s.val();  
      273.             void 0 !== u && (u.instances.errors = [], u.common.zxcvbn ? (o = [], n.each(u.common.userInputs, function(t, i) {  
      274.                 o.push(n(i).val())  
      275.             }), o.push(n(u.common.usernameField).val()), e = zxcvbn(c, o).entropy) : e = r.executeRules(u, c), i.updateUI(u, s, e), f = i.getVerdictAndCssClass(u, e), h = f[2], f = f[0], u.common.debug && console.log(e + " - " + f), n.isFunction(u.common.onKeyUp) && u.common.onKeyUp(t, {  
      276.                 score: e,  
      277.                 verdictText: f,  
      278.                 verdictLevel: h  
      279.             }))  
      280.         };  
      281.         u.init = function(r) {  
      282.             return this.each(function(u, e) {  
      283.                 var h = n.extend(!0, {}, t),  
      284.                     s = n.extend(!0, h, r),  
      285.                     o = n(e);  
      286.                 s.instances = {};  
      287.                 o.data("pwstrength-bootstrap", s);  
      288.                 o.on("keyup", f);  
      289.                 o.on("change", f);  
      290.                 o.on("onpaste", f);  
      291.                 i.initUI(s, o);  
      292.                 n.trim(o.val()) && o.trigger("keyup");  
      293.                 n.isFunction(s.common.onLoad) && s.common.onLoad()  
      294.             }), this  
      295.         };  
      296.         u.destroy = function() {  
      297.             this.each(function(t, r) {  
      298.                 var u = n(r),  
      299.                     e = u.data("pwstrength-bootstrap"),  
      300.                     f = i.getUIElements(e, u);  
      301.                 f.$progressbar.remove();  
      302.                 f.$verdict.remove();  
      303.                 f.$errors.remove();  
      304.                 u.removeData("pwstrength-bootstrap")  
      305.             })  
      306.         };  
      307.         u.forceUpdate = function() {  
      308.             this.each(function(n, t) {  
      309.                 var i = {  
      310.                     target: t  
      311.                 };  
      312.                 f(i)  
      313.             })  
      314.         };  
      315.         u.addRule = function(t, i, r, u) {  
      316.             this.each(function(f, e) {  
      317.                 var o = n(e).data("pwstrength-bootstrap");  
      318.                 o.rules.activated[t] = u;  
      319.                 o.rules.scores[t] = r;  
      320.                 o.rules.extra[t] = i  
      321.             })  
      322.         };  
      323.         e = function(t, i, r) {  
      324.             this.each(function(u, f) {  
      325.                 n(f).data("pwstrength-bootstrap").rules[i][t] = r  
      326.             })  
      327.         };  
      328.         u.changeScore = function(n, t) {  
      329.             e.call(this, n, "scores", t)  
      330.         };  
      331.         u.ruleActive = function(n, t) {  
      332.             e.call(this, n, "activated", t)  
      333.         };  
      334.         n.fn.pwstrength = function(t) {  
      335.             var i;  
      336.             return u[t] ? i = u[t].apply(this, Array.prototype.slice.call(arguments, 1)) : "object" != typeof t && t ? n.error("Method " + t + " does not exist on jQuery.pwstrength-bootstrap") : i = u.init.apply(this, arguments), i  
      337.         }  
      338.     }(n, f)  
      339. }(jQuery)  
      340.   
      341. </li></ul></div></span></h5></li></ul></span></span></div></div></span>  

      By posted on - 9th Jul 2016

Social Oauth Login

Personalized Map Navigation

Online Image Compression Tool

Image Compression

Advertisement

Recent Posts

Categories