Tox (protocole réseau)

Tox est un protocole réseau ouvert de messagerie instantanée, voix sur IP et visioconférence, fonctionnant en pair à pair et chiffré. Le but affiché du projet est de fournir à tous une communication sécurisée et aisée et une alternative à Skype. Une implémentation de référence est disponible sous la licence libre GNU GPL 3 ou supérieure.

Histoire

Tox a débuté le 22 juin 2013, sur 4chan, dans un sujet concernant la vie privée des utilisateurs de Skype par rapport aux révélations d’Edward Snowden liées à la surveillance globale, lesquelles s’étaient produites quelques semaines auparavant. Le nom de Tox fut suggéré et fut accepté officiellement du fait de son usage persistant.

La publication officielle sur GitHub a été effectuée le 23 juin 2013 par un utilisateur nommé irungentoo. Des binaires de test pré-alpha ont été rendus disponibles aux utilisateurs à partir du 3 février 2014.

Des nightly builds de Tox (littéralement des constructions nocturnes, c’est-à-dire des versions réalisées et mises à disposition en soirée ou pendant la nuit) sont continuellement publiées par l’automate Jenkins.

Le 12 juillet 2014, Tox est entré dans le stade alpha de son développement et une page de téléchargement rénovée a été créée pour l’occasion.

Fonctionnalités

Les utilisateurs se voient assigner une clé publique et une clé privée, puis se connectent les uns aux autres directement dans un réseau pair à pair. Ils ont la possibilité d’envoyer des messages à leurs amis, de se joindre à des salons de discussion avec des amis ou des étrangers, ainsi que de s’échanger des fichiers. Tout est chiffré en utilisant les bibliothèques libsodium (software) ou NaCl (software).

En février 2014, les appels audio et vidéo, ainsi que les conférences étaient toujours en cours d’implémentation.

En août 2014, ces fonctionnalités étaient prêtes dans tous les clients principaux.

Le client officiel a pour objectif de fournir le support de la messagerie instantanée, des salons de discussion, des appels vocaux et de la visioconférence, de l’indication de frappe, des accusés de réception, de la technologie push to talk, de la technologie de partage de fichiers et du partage d’écran.

Des fonctionnalités supplémentaires peuvent être implémentées par n’importe quel client, du moment qu’elles sont supportées par le protocole principal. Les fonctionnalités qui ne sont pas liées au système principal de réseau sont laissées à la discrétion du client.

Architecture

Principale

L’architecture du projet Tox est basée sur une bibliothèque principale (cœur) établissant le protocole et l’API. La première API stable nommée Toxcore est sortie le 14 décembre 2016, sous le numéro 0.10. Les front-ends des utilisateurs, ou clients, sont construits au-dessus de ce cœur. N’importe qui peut créer un client utilisant le cœur.

Un rapport technique décrivant la conception du cœur, écrit par son développeur irungentoo et mis à jour occasionnellement, est disponible publiquement depuis août 2014 sur le Jenkins de la Tox Foundation.

Protocole

Le cœur de Tox est une implémentation du protocole Tox. Il s’agit donc d’un exemple de la couche application du modèle OSI et probablement de la couche présentation.

Il existe des implémentations du protocole Tox qui ne sont pas issues du projet, tel que par exemple Xot.

Tox utilise le format audio Opus et le format vidéo VPX (VP8 en 2015). Le protocole SIP n’est pas utilisé.
Clients

Un client est un programme qui utilise la bibliothèque Tox principale pour communiquer avec d’autres utilisateurs du protocole Tox. Le mock-up du site officiel représente le client GTK+ Venom, mais beaucoup d’autres clients sont disponibles pour une large variété de systèmes.

Les clients officiels sont:

Le site officiel de Tox (en anglais): https://tox.chat/

Auteur: Wikipedia
Source: https://fr.wikipedia.org/wiki/Tox_(protocole)
Licence: Creative common BY-SA