Skip to content

Authentification “autonome”

Ce ticket se sépare en deux parties couvrant les besoins à plus long terme.

Remontée de données

L'application doit pouvoir stocker les données sur un serveur distant en utilisant une connexion ssh.

  • La remontée de données peut être configurée en fournissant avant le build :
    • les données de connexion ssh :
      • url du serveur ssh
      • nom d'utilisateur sur le serveur
      • informations d'authentification
        • une clé privée de l'utilisateur
        • et/ou mot de passe de l'utilisateur
    • chiffrage des données
      • GPG
        • clé publique du serveur pour un chiffrage gpg (embarquée)
        • clé privée de l'application pour déchiffrage gpg (conservée par les chercheurs)
      • ou mot de passe pour l'ouverture d'un fichier zip
  • La connexion au serveur se fait en ssh de préférence avec une clé privée mais permet l'utilisation d'un mot de passe
  • Chiffrage des données
    • Les données sont chiffrées localement avant envoi sur le serveur de préférence en utilisant une librairie open source permettant le chiffrage/déchiffrage indépendamment de l'application (GPG est à privilégier).
    • Pour faciliter le travail de chercheurs non informaticiens un fichier zip avec mot de passe peut être utilisé
  • Envoi des données : lors de la connexion au serveur, les fichiers présents sont listés pour savoir quels fichiers locaux ont déjà été envoyés. On envoie ceux qui ne sont pas encore présents.
    • Idéalement une clé de hashage permet d'assurer la présence d'un fichier sur le serveur.

Redescente de données

  • Une liste de comptes peut être envoyée à la tablette
  • Un test complet peut être envoyé à la tablette Pour cela l'application recherchera dans un dossier spécifier du serveur (éventuellement lié à la version de l'application) et déchiffrera localement les données json chiffrées.
Edited by Mathieu Loiseau