diff --git a/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/DatabaseEncryptionAlgorithmPreferenceDialogFragmentCompat.java b/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/DatabaseEncryptionAlgorithmPreferenceDialogFragmentCompat.java index ba5efe0b0..bdd59ccad 100644 --- a/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/DatabaseEncryptionAlgorithmPreferenceDialogFragmentCompat.java +++ b/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/DatabaseEncryptionAlgorithmPreferenceDialogFragmentCompat.java @@ -52,6 +52,8 @@ public class DatabaseEncryptionAlgorithmPreferenceDialogFragmentCompat extends D protected void onBindDialogView(View view) { super.onBindDialogView(view); + setExplanationText(R.string.encryption_explanation); + RecyclerView recyclerView = view.findViewById(R.id.pref_dialog_list); recyclerView.setLayoutManager(new LinearLayoutManager(getContext())); ListRadioItemAdapter encryptionAlgorithmAdapter = new ListRadioItemAdapter<>(getActivity()); diff --git a/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/DatabaseKeyDerivationPreferenceDialogFragmentCompat.java b/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/DatabaseKeyDerivationPreferenceDialogFragmentCompat.java index 4911c73f9..d2f349141 100644 --- a/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/DatabaseKeyDerivationPreferenceDialogFragmentCompat.java +++ b/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/DatabaseKeyDerivationPreferenceDialogFragmentCompat.java @@ -56,6 +56,8 @@ public class DatabaseKeyDerivationPreferenceDialogFragmentCompat extends Databas protected void onBindDialogView(View view) { super.onBindDialogView(view); + setExplanationText(R.string.kdf_explanation); + RecyclerView recyclerView = view.findViewById(R.id.pref_dialog_list); recyclerView.setLayoutManager(new LinearLayoutManager(getContext())); ListRadioItemAdapter kdfAdapter = new ListRadioItemAdapter<>(getActivity()); diff --git a/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/InputPreferenceDialogFragmentCompat.java b/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/InputPreferenceDialogFragmentCompat.java index 0f81dd37b..7fb9444d6 100644 --- a/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/InputPreferenceDialogFragmentCompat.java +++ b/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/InputPreferenceDialogFragmentCompat.java @@ -19,6 +19,7 @@ */ package com.kunzisoft.keepass.settings.preferenceDialogFragment; +import android.support.annotation.StringRes; import android.support.v7.preference.PreferenceDialogFragmentCompat; import android.view.View; import android.widget.TextView; @@ -53,4 +54,8 @@ public abstract class InputPreferenceDialogFragmentCompat extends PreferenceDial textExplanationView.setVisibility(View.VISIBLE); } } + + public void setExplanationText(@StringRes int explanationTextId) { + setExplanationText(getString(explanationTextId)); + } } diff --git a/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/MemoryUsagePreferenceDialogFragmentCompat.java b/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/MemoryUsagePreferenceDialogFragmentCompat.java index a1a3eadc8..2c2aee14e 100644 --- a/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/MemoryUsagePreferenceDialogFragmentCompat.java +++ b/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/MemoryUsagePreferenceDialogFragmentCompat.java @@ -46,6 +46,7 @@ public class MemoryUsagePreferenceDialogFragmentCompat extends InputDatabaseSave protected void onBindDialogView(View view) { super.onBindDialogView(view); + setExplanationText(R.string.memory_usage_explanation); setInputText(database.getMemoryUsageAsString()); } diff --git a/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/ParallelismPreferenceDialogFragmentCompat.java b/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/ParallelismPreferenceDialogFragmentCompat.java index 8885f65bd..29fb51033 100644 --- a/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/ParallelismPreferenceDialogFragmentCompat.java +++ b/app/src/main/java/com/kunzisoft/keepass/settings/preferenceDialogFragment/ParallelismPreferenceDialogFragmentCompat.java @@ -46,6 +46,7 @@ public class ParallelismPreferenceDialogFragmentCompat extends InputDatabaseSave protected void onBindDialogView(View view) { super.onBindDialogView(view); + setExplanationText(R.string.parallelism_explanation); setInputText(database.getParallelismAsString()); } diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index cbc178d55..264ca6465 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -74,7 +74,7 @@ Échec lors de l\'ouverture du lien. Le nom de fichier est obligatoire. Impossible de créer le fichier : - Base de données invalide. + Base de données invalide ou clé maitresse non reconnue. Chemin invalide. Le nom est obligatoire. Un fichier clé est requis. @@ -150,12 +150,18 @@ Effacer Rijndael (AES) Racine + Algorithme pour chiffrer toute la base de données. (Les mots de passe, noms d\'utilisateur, notes et toutes les données dans la base de données sont chiffrés avec l\'algorithme sélectionné) + Afin de générer la clé pour l\'algorithme de chiffrement, la clé maîtresse compressée (SHA-256) est transformée en utilisant une fonction de dérivation de clé (avec un salage aléatoire). Tours de transformation Un niveau de chiffrement supérieur assure une protection supplémentaire contre les attaques de force brute, mais peut considérablement ralentir l\'ouverture et l\'enregistrement. niveaux Résolution de la base de données Clé de niveau de chiffrement avant corruption Si votre base de données a été corrompue, entrez le nombre de tours utilisés précédemment pour essayer d\'ouvrir votre base de données. + Utilisation de la Mémoire + Quantité de mémoire (en octets) à utiliser par la fonction de dérivation de clé. + Parallélisme + Degré de parallélisme (nombre de threads) utilisé par la fonction de dérivation de clé. Enregistrement de la base de données… Espace Rechercher diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 72f8b6495..8eda40e84 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -74,7 +74,7 @@ Failed to launch link. A filename is required. Could not create file: - Invalid database. + Invalid database or unrecognized master key. Invalid path. A name is required. A keyfile is required. @@ -151,6 +151,8 @@ Save keyfile Remove Root + Algorithm to encrypt the whole database. (Passwords, usernames, notes and all data in the database are encrypted with the selected algorithm) + In order to generate the key for the encryption algorithm, the compressed master key (SHA-256) is transformed using a key derivation function (with a random salt). Transform Rounds Higher encryption rounds provide additional protection against brute force attacks, but can really slow down loading and saving. Fix of database @@ -158,9 +160,9 @@ If your database was corrupted, enter the number of rounds used previously to try to open your database. rounds Memory Usage - Memory Usage Explanation TODO + Amount of memory (in bytes) to be used by the key derivation function. Parallelism - Parallelism Explanation + Degree of parallelism (i.e. number of threads) used by the key derivation function. Saving database… Space Search