
Cop1Corp
Application de messagerie chiffrée
Une messagerie temps réel construite pour que le serveur ne puisse pas lire ce qui y transite. Pas par promesse : par conception.
Le principe est simple à énoncer et exigeant à réaliser. Quand deux personnes discutent, leurs messages voyagent directement d'un poste à l'autre en WebRTC, sans faire d'escale. L'infrastructure ne sert qu'à les mettre en relation, puis s'efface du chemin.
Le chiffrement de bout en bout repose sur WebCrypto : échange de clés ECDH sur la courbe P-256, dérivation d'une clé de session, chiffrement AES-GCM. Ce dernier point compte : AES-GCM garantit à la fois la confidentialité et l'authenticité, donc un message altéré en route est rejeté, pas simplement illisible.
Quand le pair-à-pair échoue (NAT symétrique, réseau d'entreprise verrouillé), un relais prend le transport en charge. Il ne manipule alors que du chiffré : le déchiffrement n'a lieu que sur les terminaux.
La création des salons, vocaux comme textuels, est pilotée côté client. Le serveur ne tient pas l'annuaire des conversations : il ignore qui parle à qui.
Ce que ce projet démontre : cryptographie appliquée, maîtrise du temps réel et de la traversée de NAT, et une architecture où la contrainte technique remplace la confiance.
Points clés
- WebRTC pair-à-pair Messages et voix en direct, sans passer par le serveur
- Chiffrement E2E ECDH P-256 + AES-GCM via WebCrypto, clés jamais transmises
- Salons côté client Création et gestion des salons pilotées par le client
- Relais aveugle Repli automatique qui ne voit passer que du chiffré
Stack
- React
- TypeScript
- Vite
- WebRTC
- WebCrypto
- Node.js
- WebSocket

















