Chiffré de bout en bout, même lorsque c'est le destinataire qui demande le secret.
Dans le flux de demande, le destinataire génère localement la paire de clés X25519. Le serveur ne reçoit que du texte chiffré et des clés publiques, jamais de texte en clair ni de clés privées. Les limites connues de la cryptographie dans le navigateur sont documentées ouvertement ci-dessous.
Le texte en clair reste dans votre navigateur, mais le serveur observe malgré tout certaines choses du simple fait qu'il fait tourner le service.
Si vous êtes journaliste, militant, ou si vous vous attendez à un adversaire disposant de moyens importants, la cryptographie livrée par le navigateur n'est pas l'outil le plus robuste à votre disposition. Considérez Vault comme une couche de confort au modèle de menace documenté, et non comme un substitut aux pratiques ci-dessous.
Miroir des sources : gitlab.erseni.net/open-source/secrets-component
Build déployé : page d'état
security.txt : /.well-known/security.txt
Vous n'êtes pas obligé de nous croire sur parole quant au JavaScript que vous exécutez. Voici la chaîne concrète que vous pouvez suivre.
curl -s '<script src from DevTools>' | sha256sum Pourquoi pas d'attribut Subresource Integrity (SRI) sur la balise script ? SRI ferait rejeter automatiquement par le navigateur un bundle altéré, mais il impose de recalculer et de redéployer les empreintes d'intégrité à chaque modification et s'accommode mal des variantes A/B. L'empreinte du manifeste n'offre pas la même application automatique par le navigateur que SRI. Elle donne aux relecteurs et aux personnes qui auto-hébergent une valeur SHA-256 concrète à comparer au bundle navigateur effectivement servi.