Tox

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Tox
ToxLogo.png
ΜTox 0.1.3 screenshot (cropped).png
клиент TOX uTox, запущенный в Windows 7
Тип IM
Написана на Си[1]
Интерфейс GTK+
Операционная система Microsoft Windows, Linux, macOS, Android, iOS, FreeBSD, OpenIndiana и Sailfish OS
Первый выпуск 3 февраля 2014
Последняя версия
Лицензия GNU GPL 3[3][4]
Сайт tox.chat[5][6]
Commons-logo.svg Tox на Викискладе

Tox — протокол для текстовой, голосовой и видеосвязи в интернете. Эталонная реализация протокола представляет собой свободное программное обеспечение с открытым исходным кодом, обеспечивающее полный набор привычных функций: голосовая и видеосвязь, режим конференции с несколькими участниками, указание и смена сетевого статуса, поддержка эмотиконов, демонстрация экрана, возможность отправлять мгновенные сообщения и передавать файлы. Отсутствует реклама. Позиционируется как открытая, свободная, лишённая бэкдоров и не шпионящая за пользователями альтернатива Skype, владельцы которого (Skype) предоставили АНБ доступ к своей инфраструктуре с 6 февраля 2011 года[7].

Взаимодействие участников Tox реализовано примерно так же, как в облачном сервисе BitTorrent Sync. Используется пиринговый обмен информацией для улучшения пропускной способности, но в отличие от Skype, не требует регистрации для использования, а идентификатор пользователя создаётся локально. После установки Tox автоматически создаётся пара ключей. Публичный ключ можно передавать кому угодно — он служит как уникальный идентификатор для поиска собеседника. Секретный ключ хранится только у владельца и подтверждает его подлинность не раскрывая персональные данные. Центральный сервер отсутствует, поиск собеседников происходит через DHT.

Совместная работа над проектом Tox осуществляется с помощью сервиса GitHub, где уже доступны исходники тестовой версии. Как видно из кратких описаний «ночных сборок»[8], защита соединения достигается за счёт использования SOCKS прокси-серверов. Также поддержка SOCKS5 позволяет перенаправлять весь трафик через Tor. Криптографические функции выполняются с помощью криптобиблиотеки NaCl, созданной международной группой специалистов по безопасности под руководством Дэниела Бернштейна (англ.) (Daniel J. Bernstein) из Университета штата Иллинойс в Чикаго.

Клиенты[править | править код]

При общей идее проекта разработка клиентских приложений ведётся отдельно для каждой операционной системы. Команды пишут десятки вариантов с отличающимся набором функций, но для скачивания с официальной страницы будут предлагаться только наиболее стабильные. qTox или μTox станет своего рода официальной версией для пользователей Linux и Windows, Antox — мобильный вариант для ОС Android, а Antidote для iOS.

Список клиентов для работы с протоколом представлен в таблице ниже.

Название Поддерживаемые ОС Написан на Статус клиента
Antidote[9] iOS Objective-C Разрабатывается
Antox[10] Android Scala, Java Разрабатывается
Cyanide[11] Sailfish OS C++ Заброшен[12], последнее обновление в январе 2017 года
gTox[13] Linux C++ (GTK+ 3) Заброшен (см. страницу проекта на GitHub)
qTox[14] Linux, FreeBSD, OS X, Windows C++ (Qt) Разрабатывается
Toxic[15] Linux, FreeBSD, OpenBSD, NetBSD, Solaris, OS X C (Ncurses) Разрабатывается
Toxy[16] Windows C# (WPF) Не поддерживается (см. страницу проекта[17] на Github)
Toxygen[18] Linux, Windows Python (Qt, PySide) Разрабатывается
TRIfA[19] Android C, Java Разрабатывается
µTox[20] Linux, FreeBSD, OS X, Windows C Разрабатывается
xWinTox[21] Linux, FreeBSD, Solaris C/C++ (FLTK) Заброшен[22], последнее обновление в декабре 2015 года
Isotoxin[23] Windows C++ Разрабатывается
ratox Linux, BSD, OS X C Заброшен[24], последнее обновление в феврале 2015 года
WebTox[25] Web-based HTML5 (клиент) + Go (сервер) Заброшен[26], последнее обновление в январе 2016 года.

Помимо самостоятельных клиентов, сторонними разработчиками были также выпущены плагины для Pidgin[27] (не поддерживается и не обновляется с 4 мая 2017 года[28]) и Miranda NG[29].

Разрыв с Tox Foundation[править | править код]

11 июля 2015 года группа разработчиков заявила о прекращении отношений с Tox Foundation, созданой некогда в качестве компании-представителя проекта. Согласно информации из нового блога разработки и обсуждения на Reddit, Шон Куреши (также известный под псевдонимами Stqism, AlexStraunoff и NikolaiToryzin), глава и единственный член совета директоров Tox Foundation, «взял кредит на личные цели, никак не связанные с проектом, под залог Tox Foundation и всех денежных средств фонда»[30][31].

Достоверно неизвестно, какой суммой завладел Куреши: согласно заявлению коллектива разработчиков, сумма составляла «несколько тысяч долларов»; до этого на Reddit сообщалось о том, что было украдено три тысячи долларов[32]. Большей частью средств являлись призовые, полученные по результатам участия Tox Foundation в Google Summer of Code 2014, а также небольшое количество пожертвований от частных лиц.

Данные события стали причиной очередного переезда сайта проекта на новый домен, https://tox.chat, поскольку Куреши не только предоставлял хостинг, но и являлся непосредственным владельцем всех старых доменов. Несмотря на произошедшее, разработчики решили продолжить работу над проектом, особо отметив, что исходный код не был скомпрометирован, поскольку он хранился на Github, в репозитории, принадлежащем irungentoo — главному разработчику toxcore, главной библиотеки проекта. Тем не менее, пользователей попросили максимально оперативно перейти на новые репозитории.

14 сентября 2015 года Куреши прокомментировал сложившуюся ситуацию в разделе заметок своего аккаунта GitHub[33], всячески отрицая все обвинения, и заявил, что якобы не тратил деньги на личные нужды, а пустил их на покрытие «растущих издержек» по обслуживанию инфраструктуры проекта. Несмотря на то, что Куреши также заявил, что готов предоставить доказательства в форме чеков и квитанций по оплате услуг хостинга и аренды доменов, на декабрь 2015 года этого сделано не было.

См. также[править | править код]

  • С 2014 года софтфон Ring также умеет работать через DHT[34].

Примечания[править | править код]

  1. https://github.com/irungentoo/ProjectTox-Core/tree/master/toxcore
  2. Release 0.2.2 — 2018.
  3. https://github.com/TokTok/c-toxcore/blob/master/COPYING
  4. GitHub — 2008.
  5. https://api.github.com/repos/irungentoo/toxcore
  6. https://api.github.com/repos/TokTok/c-toxcore
  7. Бэкдор в Skype был внедрен еще до Microsoft
  8. Непрерывная интеграция
  9. Antidote. Проверено 6 августа 2015.
  10. Antox. Tox-Wiki. Проверено 6 августа 2015.
  11. Cyanide. Github. Проверено 3 января 2016.
  12. Последний коммит в репозиторий Cyanide. GitHub. Проверено 12 апреля 2018.
  13. gTox. Github. Проверено 7 ноября 2015.
  14. qTox. Tox-Wiki. Проверено 6 августа 2015.
  15. Toxic. Tox-Wiki. Проверено 6 августа 2015.
  16. Toxy. Tox-Wiki. Проверено 6 августа 2015.
  17. Toxy repo. GitHub. Проверено 12 апреля 2018.
  18. Toxygen. wiki.tox.chat.
  19. TRIfA. Github. Проверено 11 мая 2018.
  20. µTox. Tox-Wiki. Проверено 7 ноября 2015.
  21. xWinTox. Tox-Wiki. Проверено 7 ноября 2015.
  22. Последний коммит в репозитории xWinTox. GitHub. Проверено 12 апреля 2018.
  23. Isotoxin. Tox-Wiki. Проверено 21 июля 2017.
  24. Последний коммит в репозитории ratox. GitHub. Проверено 12 апреля 2018.
  25. WebTox. GitHub. Проверено 6 сентября 2017.
  26. Последний коммит в репозитории WebTox. GitHub. Проверено 12 апреля 2018.
  27. tox-prpl – Tox Protocol Plugin For Pidgin  (недоступная ссылка — история). Проверено 17 сентября 2015. Архивировано 22 августа 2015 года.
  28. The end. · jin-eld/tox-prpl@d8de76a (англ.). GitHub. Проверено 24 мая 2018.
  29. Tox protocol. Miranda NG Official Community Forum. watcher. Проверено 17 сентября 2015.
  30. Tox Blog: Current Situation (11 July 2015). Проверено 12 августа 2015. (англ.)
  31. A split within the Tox project [LWN.net]. lwn.net. Проверено 7 февраля 2016.
  32. The current situation for Tox. Reddit. Sagem. Проверено 12 августа 2015. (англ.)
  33. stqism comment on situation [en].
  34. About Ring (англ.). Ring. Проверено 6 апреля 2017.

Ссылки[править | править код]