Aller au contenu principal

Sécurité et vie privée

Cette page décrit des mesures réellement en place. Je préfère être précis plutôt que rassurant.

Vos montants sont chiffrés​

Chaque compte possède sa propre clé de chiffrement, générée aléatoirement à l'inscription. Tout ce qui touche à l'argent est chiffré avec elle avant d'être écrit en base : montants, soldes, libellés, objectifs d'épargne.

L'algorithme est AES-256-GCM, un standard qui garantit à la fois la confidentialité et l'intégrité. Une donnée modifiée est détectée, elle n'est pas acceptée en silence.

La clé de votre compte est elle-même conservée chiffrée. La clé qui la protège n'est stockée ni dans la base, ni dans les sauvegardes. Une copie de la base récupérée seule ne permet donc de lire aucun montant.

Ce qui n'est pas chiffré​

Seuls les noms de catégories de vos budgets sont stockés en clair. Ils servent au rapprochement des plafonds, qui compare ce libellé à celui de vos dépenses : chiffré, il ne pourrait plus être comparé.

Les catégories de vos transactions et de vos dépenses fixes sont, elles, chiffrées comme le reste. Vos tags aussi, depuis le 10 septembre 2026. Ils étaient jusque là en clair, au motif qu'ils servaient au filtrage ; c'était inexact, le filtre porte sur un identifiant et non sur le nom. Et un tag peut porter un prénom ou un sujet qui ne regarde que vous.

Ce qui reste en clair tient à des libellés génériques comme Loyer ou Alimentation, jamais des montants.

Vos mots de passe ne sont jamais stockés​

Ils passent par Argon2id, avec 64 Mo de mémoire et 3 itérations. Cette lenteur volontaire rend les attaques par force brute coûteuses. Même en cas de fuite de la base, les mots de passe ne sont pas exploitables tels quels.

L'interface d'administration ne voit pas vos finances​

Elle ne manipule que des métadonnées : dates, compteurs, état du compte. Aucune de ses fonctions ne permet de lire les données financières d'un autre utilisateur.

Je reste mesuré sur cette affirmation. C'est une propriété de l'application, pas une garantie cryptographique absolue face à quelqu'un qui disposerait d'un accès complet au serveur. Je préfère le dire plutôt que de laisser croire à davantage.

Votre session​

L'authentification repose sur des cookies httpOnly. Le JavaScript de la page ne peut pas les lire, ce qui neutralise toute une classe d'attaques.

Chaque session est enregistrée côté serveur et peut donc être révoquée. Un jeton seul ne suffit pas. Les jetons sont renouvelés régulièrement et une session finit toujours par expirer, même utilisée quotidiennement.

Vous choisissez sa durée à la connexion : 7, 30 ou 90 jours.

Cinq appareils connectés au maximum. Au delà, celui dont vous vous êtes servi le moins récemment est déconnecté. C'est bien l'appareil qui compte, et non le nombre de renouvellements de jeton : un téléphone à la connexion instable ne se chasse plus lui même, ni les autres.

Contre les abus​

  • 5 échecs de connexion par compte et par quart d'heure, 10 par adresse IP, puis blocage temporaire.
  • Limitation de débit sur l'ensemble de l'API.
  • Protection CSRF sur toute action modifiant vos données.
  • Vérification systématique de propriété : chaque accès à une ressource contrôle qu'elle vous appartient.

Ce qui trace mes propres accès​

Le déchiffrement a lieu sur le serveur, donc qui l'administre en a techniquement les moyens. L'article 8.1 des conditions générales interdit contractuellement de consulter vos finances, sauf demande écrite de votre part.

Pour que cet engagement ne repose pas seulement sur une parole, tout déchiffrement effectué hors de l'application passe par un outil unique. Il refuse de fonctionner sans motif écrit, et inscrit au journal d'audit la date, ce motif, le compte concerné et le volume lu. Les journaux sont conservés douze mois.

Sa limite mérite d'être dite. Ce journal est écrit sur le serveur qui détient la clé, donc quelqu'un capable de déchiffrer la base serait aussi capable de le modifier. Le dispositif rend une consultation traçable, il ne la rend pas impossible.

Vos droits​

  • Exporter vos données à tout moment, en JSON, déchiffré ou tel que c'est stocké. Voir Exporter vos données.
  • Supprimer votre compte définitivement, avec toutes vos données. Voir Supprimer votre compte.
  • Aucun traceur, aucune publicité, aucune revente.

Signaler une faille​

Écrivez à security@ostaq.com. Vous pouvez chiffrer votre message avec la clé publique publiée sur keys.openpgp.org, dont l'empreinte est DAD8FFC72DA18B2BA3268162204D4491D4CAA1FA.

Je lis tous les signalements, mais le délai de réponse dépend de ma disponibilité. Ostaq ne propose pas de programme de récompense.

Merci de me laisser un délai raisonnable avant toute publication.

Les mêmes informations sont publiées au format normalisé sur /.well-known/security.txt.