diff --git a/main/ui/src/main/java/org/cryptomator/ui/common/NewPasswordController.java b/main/ui/src/main/java/org/cryptomator/ui/common/NewPasswordController.java index a603f034b..2d0c424eb 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/common/NewPasswordController.java +++ b/main/ui/src/main/java/org/cryptomator/ui/common/NewPasswordController.java @@ -50,7 +50,7 @@ public class NewPasswordController implements FxController { } private void passwordsDidChange(@SuppressWarnings("unused") Observable observable) { - if (hasSamePasswordInBothFields()) { + if (hasSamePasswordInBothFields() && strengthRater.fulfillsMinimumRequirements(passwordField.getCharacters())) { password.set(passwordField.getCharacters()); } else { password.set(""); diff --git a/main/ui/src/main/java/org/cryptomator/ui/common/PasswordStrengthUtil.java b/main/ui/src/main/java/org/cryptomator/ui/common/PasswordStrengthUtil.java index b8be3a0fd..0224118cd 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/common/PasswordStrengthUtil.java +++ b/main/ui/src/main/java/org/cryptomator/ui/common/PasswordStrengthUtil.java @@ -34,6 +34,10 @@ public class PasswordStrengthUtil { this.zxcvbn = new Zxcvbn(); } + public boolean fulfillsMinimumRequirements(CharSequence password) { + return password.length() >= minPwLength; + } + public int computeRate(CharSequence password) { if (password == null || password.length() < minPwLength) { return -1;