diff --git a/app/src/main/java/app/notesr/activity/security/AuthActivity.java b/app/src/main/java/app/notesr/activity/security/AuthActivity.java index a1217cc1..c778e757 100644 --- a/app/src/main/java/app/notesr/activity/security/AuthActivity.java +++ b/app/src/main/java/app/notesr/activity/security/AuthActivity.java @@ -25,7 +25,7 @@ public final class AuthActivity extends ActivityBase { - public static final String HEX_KEY = "hex_key"; + public static final String CACHE_KEY_HEX_KEY = "hexKey"; public static final String EXTRA_MODE = "mode"; @AllArgsConstructor @@ -39,7 +39,7 @@ public enum Mode { private final String mode; } - private AuthActivityExtension extension; + private AuthHandler authHandler; private Mode currentMode; private final SecureStringBuilder passwordBuilder = new SecureStringBuilder(); @@ -57,7 +57,7 @@ protected void onCreate(Bundle savedInstanceState) { String mode = getIntent().getStringExtra(EXTRA_MODE); var appSecurityService = new AppSecurityService(getApplicationContext()); - extension = new AuthActivityExtension(this, appSecurityService, passwordBuilder); + authHandler = new AuthHandler(this, appSecurityService, passwordBuilder); try { currentMode = Mode.valueOf(mode); @@ -122,10 +122,10 @@ private void configure() { authButton.setOnClickListener(view -> { switch (currentMode) { - case AUTHENTICATION -> extension.authenticate(); - case CREATE_PASSWORD -> extension.createPassword(); - case KEY_RECOVERY -> extension.recoverKey(); - case CHANGE_PASSWORD -> extension.changePassword(); + case AUTHENTICATION -> authHandler.authenticate(); + case CREATE_PASSWORD -> authHandler.createPassword(); + case KEY_RECOVERY -> authHandler.recoverKey(); + case CHANGE_PASSWORD -> authHandler.changePassword(); } }); diff --git a/app/src/main/java/app/notesr/activity/security/AuthActivityExtension.java b/app/src/main/java/app/notesr/activity/security/AuthHandler.java similarity index 95% rename from app/src/main/java/app/notesr/activity/security/AuthActivityExtension.java rename to app/src/main/java/app/notesr/activity/security/AuthHandler.java index dc36ad62..8a801f5a 100644 --- a/app/src/main/java/app/notesr/activity/security/AuthActivityExtension.java +++ b/app/src/main/java/app/notesr/activity/security/AuthHandler.java @@ -5,7 +5,7 @@ package app.notesr.activity.security; -import static app.notesr.activity.security.AuthActivity.HEX_KEY; +import static app.notesr.activity.security.AuthActivity.CACHE_KEY_HEX_KEY; import static app.notesr.core.util.CharUtils.bytesToChars; import static app.notesr.core.util.CharUtils.charsToBytes; @@ -37,9 +37,8 @@ import lombok.RequiredArgsConstructor; @RequiredArgsConstructor -public final class AuthActivityExtension { +public final class AuthHandler { private static final int MAX_ATTEMPTS = 3; - private static final int MIN_PASSWORD_LENGTH = 4; private static final int ON_WRONG_PASSWORD_DELAY_MS = 1500; private final AuthActivity activity; @@ -95,7 +94,7 @@ public void recoverKey() { if (password != null) { try { - byte[] hexKeyBytes = SecretCache.take(HEX_KEY); + byte[] hexKeyBytes = SecretCache.take(CACHE_KEY_HEX_KEY); if (hexKeyBytes == null) { throw new RuntimeException("Missing hex key"); @@ -143,13 +142,13 @@ private char[] proceedPasswordSetting() { TextView topLabel = activity.findViewById(R.id.authTopLabel); if (createdPassword == null) { - if (passwordBuilder.length() >= MIN_PASSWORD_LENGTH) { + if (passwordBuilder.length() >= CryptoSecrets.PASSWORD_MIN_LENGTH) { createdPassword = password; topLabel.setText(activity.getString(R.string.repeat_access_code)); } else { showToastMessage(String.format( activity.getString(R.string.minimum_password_length_is_n), - MIN_PASSWORD_LENGTH)); + CryptoSecrets.PASSWORD_MIN_LENGTH)); } } else { if (Arrays.equals(password, createdPassword)) { diff --git a/app/src/main/java/app/notesr/activity/security/KeyRecoveryActivity.java b/app/src/main/java/app/notesr/activity/security/KeyRecoveryActivity.java index 08f5eace..85d349fc 100644 --- a/app/src/main/java/app/notesr/activity/security/KeyRecoveryActivity.java +++ b/app/src/main/java/app/notesr/activity/security/KeyRecoveryActivity.java @@ -103,7 +103,7 @@ private void apply(EditText hexKeyField, char[] hexKey) try { if (appSecurityService.isKeyMatchingWithStored(keyBytes)) { byte[] hexKeyBytes = charsToBytes(hexKey, StandardCharsets.UTF_8); - SecretCache.put(AuthActivity.HEX_KEY, hexKeyBytes); + SecretCache.put(AuthActivity.CACHE_KEY_HEX_KEY, hexKeyBytes); // The hex key has already been wiped by charsToBytes wipeSecretData(keyBytes, hexKeyField);