moin,
ich bräuchte mal eure hilfe beim umwandeln einer java function die ich gefunden haben. sie dient dazu wie stark ein passwort sein sollte.
hier mal die java function
hier mal das was ich bis jetzt draus gemacht habe
das prinzip der funktion verstehe ich ja, nur ich komm noch nicht so recht klar mit RegEX, hab heut schon viel drüber gelesen und auch das tutorial hier im forum.
komm aber momentarn einfach nicht weiter.
deswegen bitte ich euch mal um hilfe
ich bräuchte mal eure hilfe beim umwandeln einer java function die ich gefunden haben. sie dient dazu wie stark ein passwort sein sollte.
hier mal die java function
VB.NET-Quellcode
- function ixScorePassword(szPasswort) {
- // Passwort in Gruppen ordnen
- // Zusammenhängende Zeichengruppen werden seperiert
- var szArea = szPasswort;
- szArea=szArea.replace(/[^a-z0-9]/ig,'\1'); // sonderzeichenblöcke \1 ist chr(1) / 0x01 - wird als trenner verwendet
- szArea=szArea.replace(/[a-z]+/g,'\2'); // buchstabenblöcke klein
- szArea=szArea.replace(/[A-Z]+/g,'\3'); // buchstabenblöcke gross
- szArea=szArea.replace(/[0-9]/g,'\4'); // zahlenblöcke
- // Scoring - max. 2Pkt je Kriterium (insgesamt 10)
- // Passwortlänge wird berechnet indem erst alle zeichenwiederholungen rausgenommen werden (abba = aba) und anschliessend die länge-6 die score ergibt (passwort mit 8 zeichen kann demnach schon 2 punkte bringen)
- var iScore = Math.min(4, szPasswort.replace(/(\w)\1{1,}/ig,'$1').length-1); // max. 2 Punkte für Länge wo auch sich wiederholende zeichen rausgeschnitten wurden
- iScore += Math.min(2,szArea.replace(/[^\1]/g,'').length); // Sonderzeichenblöcke addieren
- iScore += Math.min(2,szArea.replace(/[^\2]/g,'').length); // buchstabenblöcke addieren
- iScore += Math.min(2,szArea.replace(/[^\3]/g,'').length); // buchstabenblöcke addieren
- iScore += Math.min(2,szArea.replace(/[^\4]/g,'').length); // zahlenblöcke addieren
- iScore = Math.max(0, Math.min(10, iScore)); // Sicherstellen das Wertebereich 0-10 bleibt
- return iScore;
- };
hier mal das was ich bis jetzt draus gemacht habe
VB.NET-Quellcode
- Function ixScorePassword(ByVal szPasswort)
- Dim szArea = szPasswort
- szArea = Regex.Replace(szArea, "[^a-zA-Z0-9]", "\1", RegexOptions.IgnoreCase)
- szArea = Regex.Replace(szArea, "[a-z]", "\2", RegexOptions.IgnoreCase)
- szArea = Regex.Replace(szArea, "[A-Z]", "\3", RegexOptions.IgnoreCase)
- szArea = Regex.Replace(szArea, "[0-9]", "\4", RegexOptions.IgnoreCase)
- Dim iScore = Math.Min(4, szPasswort.replace("(\w)\1{1,}", "$1").length - 1)
- iScore += Math.Min(2, szArea.Replace("[^\1]", "").Length)
- iScore += Math.Min(2, szArea.Replace("[^\2]", "").Length)
- iScore += Math.Min(2, szArea.Replace("[^\3]", "").Length)
- iScore += Math.Min(2, szArea.Replace("[^\4]", "").Length)
- iScore = Math.Max(0, Math.Min(10, iScore))
- End Function
das prinzip der funktion verstehe ich ja, nur ich komm noch nicht so recht klar mit RegEX, hab heut schon viel drüber gelesen und auch das tutorial hier im forum.
komm aber momentarn einfach nicht weiter.
deswegen bitte ich euch mal um hilfe