Introduction

Gith vous permet d’échanger des données (mails, discussions chat, documents ...) en vous garantissant :

Gith utilise les algorithmes de chiffrement RSA-2048, AES-256 en mode CBC et SHA1.

Création

Lors de la création de votre compte sur un ordinateur «fixe» (Windows, MacOS) une bi-clef RSA 2048 est générée.



















En résumé, Gith utilise les meilleurs standards actuels en terme de chiffrement et ne transmet à nos serveurs que le strict minimum. Toutes les données secrètes (votre clef privée, votre mot de passe) ne quittent pas votre machine, afin de vous garantir une totale sécurité.



Import/Export

Votre clef privée est la seule permettant d’accéder à votre compte et à vos données, elle n’est présente que sur votre machine lors de la création de votre compte.

Il est donc impératif de ne pas la perdre, elle ne pourra pas être régénérée !
De la même façon, en cas de perte du mot de passe, il sera impossible d’accéder à votre compte.


Pour limiter ce risque, au moment de la création de compte, vous devez exporter votre clef privée sous la forme d’un QRCode. Celui-ci est une représentation de votre clef, chiffrée par votre nom d’utilisateur.


Il vous suffit alors d’imprimer celui-ci et de conserver la feuille A4 dans un endroit «sécurisé».













En cas de crash système, vol d’ordinateur ou autre, un mécanisme d’import vous permet de scanner ce QRCode afin de récupérer votre clef.
La saisie de votre nom d’utilisateur lors de ce processus permet de sécuriser a-minima celui-ci et de contrôler l’intégrité de la clef.
Après avoir vérifié la validité du compte, le serveur Gith vous ré-expédie la clef publique associée ainsi que les clefs de tous vos contacts. Vous avez récupéré l’accès à votre compte !



Ce même processus d’import est utilisé pour transférer votre compte vers un autre terminal ou un smartphone. Ainsi, votre clef privée ne transite jamais sur le réseau, sous aucune forme.
Lorsque vous voyagez, il vous suffit de prendre avec vous ce QRCode pour pouvoir accéder à vos mails depuis n’importe quel ordinateur connecté à internet !





Gestion des contacts

Pour ajouter un contact, vous effectuez une recherche dans l’annuaire.
Si l’utilisateur a accepté d’être présent dans les «pages jaunes» et s'il a rempli son profil, vous pourrez le trouver en le cherchant par nom, prénom, ville, etc.
Dans le cas contraire, vous devrez connaître son nom d’utilisateur afin de pouvoir l’ajouter.


Vous avez donc la possibilité de protéger votre anonymat en ne remplissant qu’en partie votre profil ou en choisissant de ne pas faire partie de l’annuaire.
Dans ce dernier cas, seuls vos contacts auront accès à votre profil.

Lorsque vous souhaitez ajouter un contact à Gith, une demande est envoyée à celui-ci.
S'il accepte, Gith se charge d’envoyer vos clefs publiques respectives qui seront stockées localement dans un keystore.
Ce keystore est protégé par votre clef privée, votre liste de contacts est par conséquent sécurisée et personne ne peut savoir avec qui vous communiquez.

Gestion des données

Tous vos messages envoyés (mails, documents, etc.) sont chiffrés en AES-256. La clef symétrique générée est ensuite chiffrée avec la clef publique de chaque destinataire.
Eux-seuls pourront déchiffrer cette clef symétrique et avoir accès au contenu du message.

En cas de vol de votre ordinateur ou d’infection par un malware, les données conservées sur celui-ci peuvent être accessibles.

Pour éviter cela, Gith conserve par défaut toutes les données reçues sous leur forme chiffrée. Elles sont déchiffrées à la volée lors de leur consultation. Un mécanisme interne permet de limiter toute trace mémoire après consultation des messages (la zone de mémoire RAM contenant les données déchiffrées est écrasée après utilisation).


Par défaut, nos serveurs ne conservent pas les messages reçus et envoyés. une fois ceux-ci délivrés à tous les destinataires, ils sont effacés de nos serveurs. L’interface Gith vous permet de choisir de conserver «en ligne» certaines données afin de les consulter ultérieurement via un autre terminal (autre ordinateur, smartphone...).

Intégrité logicielle

Gith utilise très peu de librairies extérieures et celles-ci n’interviennent que sur des aspects «non-critiques» du code (librairies graphiques, etc.).
Ceci permet de garantir une bonne maîtrise de la qualité du logiciel et une forte réactivité en cas de découverte de bugs.