Tox

From LinuxReviews
Jump to navigationJump to search

Tox is a decentralized messaging protocol with end-to-end encryption which can be used for text chat, phone calls, video chat and file transfers. Users generate a public/private key pair and connect to each other in a distributed peer to peer fashion. The protocol supports friends lists and chat rooms. Several different messaging programs can be used to talk to Tox users. Most do not support all the possible features the protocol offers and what services are usable varies from client to client.

Underlying technology

Tox uses the NaCL ("Networking and Cryptography library") for end-to-end encryption with authenticated encryption and perfect forward secrecy.

Tox does not provide location anonymity. It can be used with Tor but this will only provide somewhat limited location anonymity to unknown users. All your contacts will still be able to see your IP.

Features and limitations

The Tox protocol supports a lot of features. The various clients used to connect to the network may or may not implement the functionality the Tox protocol supports. All the clients support text messages. That is not a given for rest of the services that are supported by the Tox protocol such as video calls, phone calls, chat rooms and file-transfer.

The nature of the Tox protoocol limits it to real-time communications. You and your friend have to both be online, you can not send friend messages if they aren't online.

Clients

  • qTox - Feature-rich client made using the Qt toolkit. This is the "flagship" client promoted by the Tox protocols homepage https://tox.chat/ and it is the most feature-complete client. It's homepage is at https://qtox.github.io/
  • Toxic - Console client made with Ncurses. Source at https://github.com/Jfreegman/toxic
  • Toxygen - Client made with Python 3 and PyQt5. There's a Linux version and a Windows version. Source at https://github.com/toxygen-project/toxygen
  • µTox - Written in pure C with the goal of being lightweight. There's versions for Linux, *BSD, MacOS and Windows.
  • ratox is not exactly what you'd call a Tox client. Well, it is, but it expects you to interact with it using pipes. Written in pure C client. Linux, *BSD and MacOS versions. http://ratox.2f30.org/

Android

iToddler

  • Antidote. iOS only.

Wintoddler

Bad clients

TOK is an actively maintained client for iOS and Android which violates the GNU GPL License. They are in violation and should not be trusted or supported.

Bankrupt and finished

  • Antox - Was a Android-only client.
  • Cyanide - Was for Sailfish OS only
  • gTox - Linux client. Last updated 2015.
  • Isotoxin is a Windows-only client looks abandoned. It's website's dead. The source is still at https://github.com/isotoxin/isotoxin
  • Toxy - Dead Windows client.
  • xWinTox - Dead since 2015.

Links

The tox.chat wiki is a good resource for information about the protocol and clients.