Il est désormais possible de vérifier le mot de passe saisi, utile si celui-ci est compliqué : L'intégration du cryptage dans les Identifiants est terminée.
A l'ouverture, si le mot de passe n'a pas été saisi, les dossiers non protégés sont accessibles, mais cliquer sur un dossier protégé déclenche la demande de mot de passe : Après sa saisie, tous les dossiers cryptés sont accessibles, ils restent identifiables grâce à leur icône contenant une marque rouge : Si le dossier parent est crypté, il n'est pas possible de décrypter un dossier enfant :
Problème de fond
Cette décision n'a finalement peut être pas été la bonne. Il n'y a pas de problèmes avec les Properties grâce aux services GetProp et SetProp qui centralisent le cryptage, mais l'accès aux Texts cryptés a demandé de brancher du décryptage puis recryptage à une quinzaine d'endroits. Et il n'y a pas vraiment de factorisation possible sur ces Texts qui doivent être utilisables librement par chaque outil. Il n'est pas envisageable de reproduire cela dans tous les autres outils, dont le monstrueux Agenda. Bref, après ce premier outil cryptable, il s'avère que manipuler un arbre partiellement crypté et devoir décrypter/recrypter les données à chaque accès est particulièrement fastidieux.XMo a écrit : Dans XT4 :
- Il n'y a qu'un seul fichier représentant un arbre de données hiérarchisées.
- Par contre, la granularité du cryptage est le dossier, ce qui fait que l'arbre est potentiellement partiellement crypté.
- Afin de permettre d'accéder aux dossiers non cryptés sans avoir à saisir le mot de passe, il a été nécessaire d'implémenter un système opposé : XT4 manipule donc en mémoire les données telles qu'elles sont stockées sur disque, et les décrypte lorsque c'est nécessaire. C'était LA décision qui était si difficile à prendre.
Cette version va être sauvegardée, mais un prototype de cryptage hybride "XT3-XT4" va être tenté :
- On autorise toujours la lecture d'un fichier partiellement crypté sans demande de mot de passe, et libre accès aux données non cryptées (mode XT4).
- Par contre, dès l'accès à un dossier crypté et la saisie du mot de passe, la totalité des données cryptées est décryptée une fois pour toutes. Elles le restent même quand l'utilisateur verrouille l'application (mode XT3). Les outils ne manipulent donc que des données décryptées, leur seule contribution est la demande de mot de passe lors de l'accès à un dossier crypté.
- Petit lag à la première saisie du mot de passe, car décryptage récursif de toutes les données cryptées.
- Par la suite, aucun lag lors de l'accès aux données protégées durant la session.
- Si le mot depasse a été saisi et donc si les données sont décryptées en mémoire, petit lag à chaque sauvegarde des données, car l'arbre des données devra être dupliqué, l'arbre copié sera recrypté (partiellement) avant son écriture sur disque.
- Actuellement, en mode XT4 pur, chaque accès aux données protégées provoque un micro-lag puisqu'elles sont décryptées puis recryptées en temps réel.
- Impossible de prévoir lequel de ces deux mode sera le plus confortable à l'utilisation.
Il ne devrait pas y avoir de différences de comportement "fonctionnel" par rapport à ce qui a été mise en place pour les Identifiants, les mêmes règles seront appliquées.