diff --git a/src/main/java/PasswordValidator.java b/src/main/java/PasswordValidator.java index 5c63f9c..46fac42 100644 --- a/src/main/java/PasswordValidator.java +++ b/src/main/java/PasswordValidator.java @@ -4,6 +4,7 @@ import java.io.StringReader; import java.math.BigInteger; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; +import java.util.Locale; import java.util.regex.Pattern; public class PasswordValidator { @@ -135,12 +136,13 @@ public class PasswordValidator { public static boolean isInWordlist(String password) { try { + String lowerPassword = password.toLowerCase(); ResourceApi resourceApi = new ResourceApi(); String germanWordlist = resourceApi.getFileFromResourceAsString("german_wordlist.txt"); BufferedReader bufReader = new BufferedReader(new StringReader(germanWordlist)); String line = null; while ((line = bufReader.readLine()) != null) { - if (line.contains(password)) { + if (lowerPassword.contains(line.trim().toLowerCase())) { return true; } } diff --git a/src/test/java/PasswordValidatorTest.java b/src/test/java/PasswordValidatorTest.java index 44657e1..6c6a72a 100644 --- a/src/test/java/PasswordValidatorTest.java +++ b/src/test/java/PasswordValidatorTest.java @@ -92,7 +92,8 @@ class PasswordValidatorTest { @Test void isInWordlist() { - assertTrue(PasswordValidator.isInWordlist("Sonne")); + assertTrue(PasswordValidator.isInWordlist("Sonnenblume")); + assertTrue(PasswordValidator.isInWordlist("_Sonnenblume123")); assertFalse(PasswordValidator.isInWordlist("=phan0johB4aisae6Mie0jeip9Saejahc0iuvuth7ahv9uoni6o*_.+")); } }