La clé de déchiffrement voyage dans le fragment de l'URL
Yopass est un service auto-hébergé, écrit en Go, pour transmettre un mot de passe, une clé d'API ou un fichier sans le laisser lisible dans un mail ou un historique de chat. Le navigateur chiffre le secret en OpenPGP avec une clé aléatoire et n'envoie au serveur que le message chiffré. La clé reste dans le fragment de l'URL partagée, la partie après # que le navigateur n'envoie pas : le serveur garde un contenu qu'il ne sait pas lire, et le destinataire le déchiffre chez lui.
Lien sans clé et instance publique en lecture seule
- Un secret se lit une fois, ou jusqu'à son échéance : 1 heure, 1 jour ou 1 semaine. L'option
--allow-custom-expiration, sans licence, ouvre les durées libres, de 1 minute à 90 jours avec les bornes par défaut. - La clé peut partir par un autre canal. Depuis la 15.0.0, un lien sans clé attend que le destinataire la saisisse avant de télécharger le message, pour qu'un scanner de mails qui suit les liens ne consomme pas un secret à lecture unique.
- Un mot de passe peut s'ajouter à la clé, et
--argon2remplace sa dérivation en SHA-256 itéré par Argon2id, qui résiste mieux à la force brute sur GPU. - Une instance lancée en
--read-onlyne sert que la lecture. Branchée sur le même Memcached ou Redis qu'une instance interne derrière un VPN, elle laisse des personnes extérieures ouvrir des secrets que seule l'équipe peut créer. - La CLI
yopasspartage texte et fichiers depuis le terminal, en binaire pour Linux, macOS et Windows, sans Docker ni Go à installer.
Memcached ou Redis requis, 1 Mo par fichier sans licence
Memcached ou Redis est obligatoire, et Memcached peut perdre un secret avant l'heure. Secrets et métadonnées des fichiers vivent dans l'un des deux, Memcached par défaut ; seuls les fichiers chiffrés peuvent aller sur disque ou dans un bucket S3. La documentation prévient que Memcached peut évincer des secrets non expirés quand sa mémoire sature : la durée choisie reste un maximum, pas une garantie.
HTTPS est exigé en production, pour que ni l'application web ni le message chiffré ne puissent être modifiés en transit, précise le README. Un reverse proxy qui réécrit l'en-tête Content-Security-Policy doit garder 'wasm-unsafe-eval', faute de quoi le navigateur peut échouer, sans message, à déchiffrer les secrets protégés par Argon2id.
Sans licence, un fichier plafonne à 1 Mo et personne ne se connecte. --max-file-size vaut 512 Ko par défaut et reste bridé à 1 Mo sans clé de licence. L'édition libre n'a ni comptes ni connexion : la documentation réserve la création à l'équipe par le réseau, avec le mode lecture seule. La licence Business, à 149 € par an pour une instance hébergée par ses soins, ajoute notamment OpenID Connect, le journal d'audit, les accusés de lecture, les webhooks signés et les fichiers de plus de 1 Mo. Déjà présentes dans le code, elles s'activent avec la clé ; à son expiration, le serveur les coupe sans redémarrer mais garde les sessions OIDC et l'obligation de connexion.
La CLI s'adresse par défaut à l'API publique du projet, https://api.yopass.se, tant que --api et --url ne désignent pas une autre instance, alors que le README conseille d'héberger la sienne pour toute information sensible. Elle ne fonctionne pas avec une installation protégée par OpenID Connect.
La 16.0.1 du 23 octobre 2026 est la dernière de dix versions sorties depuis le 19 juillet. La 16.0.0 du 17 octobre corrige 27 problèmes de sécurité, 15 de sévérité moyenne et 12 faible, et modifie le comportement de plusieurs API, d'où un nouveau numéro majeur huit jours après la 15.0.0. La première version du projet date de 2014.
