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
[değiştir | kaynağı değiştir]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
[değiştir | kaynağı değiştir]Trafiğin şifrelenmesi
[değiştir | kaynağı değiştir]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
[değiştir | kaynağı değiştir]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
[değiştir | kaynağı değiştir]Çekirdek
[değiştir | kaynağı değiştir]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
[değiştir | kaynağı değiştir]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
[değiştir | kaynağı değiştir]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
[değiştir | kaynağı değiştir]İ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.
Name | İşletim sistemleri | Ne ile yazıldı | Geliştirme durumu ve yorumlar |
---|---|---|---|
Antidote | iOS | Swift | Geliştirme durdu (projenin GitHub sayfasına bakın) |
Antox | Android | Scala, Java | Geliştirme durmuş, son güncelleme Aralık 2017'de |
aTox | Android | Kotlin | Aktif |
Cyanide | Sailfish OS | C++ | Geliştirme durmuş son güncelleme Ocak 2017'de |
gTox | Linux | C++ (GTK+ 3) | Geliştirme durdu (projenin GitHub sayfasına bakın) |
qTox | Linux, FreeBSD, OS X, Windows | C++ (Qt) | Aktif |
Toxic | Linux, FreeBSD, OpenBSD, DragonflyBSD, NetBSD, Solaris, macOS, Android | C (Ncurses) | Aktif |
Toxy | Windows | C# (WPF) | Bakımsız (projenin GitHub sayfasına bakın) |
Toxygen | Linux, Windows | Python (Qt ile PySide) | Aktif |
TRIfA | Android | C, Java | Aktif |
µTox | Linux, FreeBSD, OS X, Windows | C | Aktif |
xWinTox | Linux, FreeBSD, Solaris | C/C++ (FLTK) | Geliştirme durmuş, son güncelleme Aralık 2015'te |
Isotoxin | Windows | C++ | Geliştirme durmuş, son güncelleme Mart 2018'de |
ratox | Linux, BSD, OS X | C | Geliştirme Durmuş |
WebTox | Web-based | HTML5 (client) + Go (server) | Geliştirme durmuş, son güncelleme Ocak 2016'da |
yat | Linux, Windows, macOS | Vala | Aktif |