
Seal v0.2.3
Peer-to-peer, chat chiffré de bout en bout. Pas de boîte de réception. Aucun compte à récupérer. Personne n'écoute — pas même nous.
Seal
Messagerie pair-à-pair, chiffrée de bout en bout.
Pas de boîte de réception. Aucun compte à récupérer. Personne n'écoute — pas même nous.
Les messages voyagent directement entre pairs via libp2p et sont chiffrés avec les protocoles Olm/Megolm de type Signal (via vodozemac) avant de quitter votre appareil. Le seul serveur impliqué est un petit annuaire qui aide les pairs à trouver l'adresse actuelle des uns et des autres. Il ne voit jamais le contenu des messages, et il peut être purgé en une seule commande.
Voir docs/THREAT_MODEL.md et
docs/SECURITY.md pour savoir ce qui est réellement protégé
et comment.
Sommaire
- Captures d'écran
- Fonctionnalités
- Comment ça marche
- Structure du projet
- 1. Prérequis
- 2. Compilation
- 3. Exécution en mode développement
- 4. Tests
- 5. Configuration du backend (serveur d'annuaire)
- 6. Utilisation de l'application
Captures d'écran
Premier lancement — choisissez un nom ; rien d'autre à configurer.
Conversations — le rail de groupes, la liste de contacts et un volet de discussion chiffré de bout en bout.
Paramètres — sensibilité du micro, push-to-talk, lancement à la connexion, accessibilité réseau.
Fonctionnalités
- Chiffré de bout en bout, en permanence — chaque message est scellé avec Olm (1:1) ou Megolm (groupes) avant de quitter votre appareil, grâce au schéma de type Double Ratchet de vodozemac : chaque message possède sa propre clé.
- Jamais de boîte de réception — les messages transitent par une connexion directe de pair à pair (libp2p: QUIC/TCP + Noise, avec relais et traversée de NAT). Si le destinataire est hors ligne, le message attend localement puis réessaie — il n'est jamais mis en file d'attente sur l'infrastructure de quelqu'un d'autre.
- Un annuaire, pas une base de données — l'unique serveur impliqué
(
crates/directory-server) associe un identifiant d'utilisateur à une adresse réseau actuelle et rien d'autre. Il est structurellement incapable de lire le contenu des messages : sonCargo.tomlne dépend même pas des crates qui savent le faire. - Plusieurs comptes, un seul appareil — des identités entièrement séparées (clés, contacts, messages) entre lesquelles vous pouvez basculer sans redémarrer.
- Des groupes avec de vrais changements de membres — canaux texte et vocal par groupe ; retirer quelqu'un fait pivoter la clé du groupe afin qu'il ne puisse pas lire ce qui est envoyé par la suite.
- Voix intégrée — push-to-talk sur un raccourci système (fonctionne depuis n'importe quelle application, pas seulement Seal), sensibilité du micro réglable, et un modificateur de voix facultatif.
- Pièces jointes sans métadonnées — les données EXIF (position GPS, informations appareil/appareil photo) sont supprimées des images avant leur envoi, activé par défaut.
- Un véritable bouton panique — Paramètres → Données et confidentialité supprime instantanément et irréversiblement chaque clé, contact et message sur cet appareil, avec zéro effet sur vos interlocuteurs.
- Lancement à la connexion, si vous le souhaitez — activé par défaut, à un interrupteur près dans Paramètres.
- Une seule base de code, trois plateformes — fenêtres natives sur macOS, Windows et Linux, via Tauri.
Comment ça marche
Il existe deux types d'identité dans cette application, et ils sont délibérément tenus séparés :