Tox

Tox, uçtan uca şifreleme sunan eşler arası anlık mesajlaşma ve görüntülü arama protokolüdür. Projenin belirtilen hedefi, herkes için güvenli ancak kolay erişilebilir iletişim sağlamaktır. Protokolün bir referans uygulaması, GNU GPL-3.0 veya sonrası koşulları altında ücretsiz ve açık kaynaklı yazılım olarak yayınlanmıştır.

Hikaye 
GitHub'a ilk taahhüt 23 Haziran 2013'te Irungentoo adlı bir kullanıcı tarafından gönderildi. Alpha sürüm öncesi test ikili dosyaları, 3 Şubat 2014'ten itibaren kullanıcılara sunuldu. 12 Temmuz 2014'te Tox, geliştirme aşamasında bir alfa aşamasına girdi ve bu olay için yeniden tasarlanmış bir indirme sayfası oluşturuldu.

Özellikler

Trafiğin şifrelenmesi 
Kullanıcılara genel ve özel bir anahtar atanır ve tamamen dağıtılmış, eşler arası bir ağda birbirlerine doğrudan bağlanırlar. Kullanıcılar, arkadaşlarına mesaj gönderme, arkadaşlarıyla veya yabancılarla sohbet odalarına katılma, sesli/görüntülü sohbet etme ve birbirlerine dosya gönderme olanağına sahiptir. Tox üzerinden tüm trafik, kimliği doğrulanmış şifreleme ve mükemmel iletme gizliliği sağlayan NaCl kitaplığı kullanılarak uçtan uca şifrelenir.

IP adresinin arkadaşlara ifşa edilmesi 
Eşler arası bir ağın tüm amacı sizi doğrudan arkadaşlarınıza bağlamak olduğundan, Tox arkadaşlarınızla iletişim kurarken IP adresinizi gizleme girişiminde bulunmaz. Tox bağlantılarınızı Tor (anonim ağ) üzerinden tünelleme şeklinde bir geçici çözüm mevcuttur. Ancak, arkadaş olmayan bir kullanıcı yalnızca bir Tox Kimliği kullanarak IP adresinizi kolayca keşfedemez; IP adresinizi yalnızca kişi listenize eklediğinizde birine açıklarsınız.

Mimari

Çekirdek 
Tox çekirdeği, protokolü ve API'yi oluşturan bir kitaplıktır. Kullanıcı ön uçları veya istemciler, çekirdeğin üzerine inşa edilmiştir. Çekirdeği kullanan herkes bir istemci oluşturabilir. Çekirdek geliştirici Irungentoo tarafından yazılan ve çekirdeğin tasarımını açıklayan teknik belgeler halka açıktır.

Protokol 
Tox'un çekirdeği, OSI modelinin uygulama katmanının ve muhtemelen sunum katmanının bir örneği olan Tox protokolünün bir uygulamasıdır. Proje tarafından yapılmayan Tox protokolünün uygulamaları mevcuttur.

Tox, ses akışı için Opus ses formatını ve video akışı için VP8 video sıkıştırma formatını kullanır.

Şifreleme 
Tox, libsodium aracılığıyla NaCl kripto kütüphanesinde bulunan kriptografik ilkelleri kullanır. Tox, özellikle anahtar değişimleri için Curve25519'u, simetrik şifreleme için xsalsa20'yi ve MAC'ler için Poly1305'i kullanır. Tox protokolü birçok farklı uygulama tarafından kullanılabileceğinden ve tox ağı kullanılan istemciyi yayınladığından, istemcilerin aynı özellikleri destekleyen istemcilere gönderirken ek şifreleme kullanması da mümkündür.

İstemciler 
İstemci, Tox protokolünün diğer kullanıcılarıyla iletişim kurmak için Tox çekirdek kitaplığını kullanan bir programdır. Çok çeşitli sistemler için çeşitli istemciler mevcuttur; aşağıdaki liste eksiktir.

2013 yazılımları
Android yazılımları
İletişim yazılımları
Çapraz platform yazılımları
Dağıtık hesaplama
Özgür iletişim yazılımları
Özgür anında mesajlaşma istemcileri
C ile programlanmış ücretsiz yazılımlar
Anında mesajlaşma istemcileri
Linux için anında mesajlaşma istemcileri
İOS yazılımları
MacOS anında mesajlaşma istemcileri
Peer-to-peer
Video mesajlaşma
VoIP protokolleri
VoIP yazılımları
Windows anında mesajlaşma istemcileri