Pull to refresh

Comments 72

UFO just landed and posted this here
Напоминаю, что за массовую подписку сеть TOX банить ID
Оу, это несомненно показатель свободы. А где можно ознакомиться с полным списком ограничений?
UFO just landed and posted this here
Как только все механизмы защиты будут стандартизированы — я о них напишу, в любом случае защита от спама должна быть.
Там же защита от спама реализована генерацией случайного ID на конце ключа, это в протоколе стандартизировано.
Every friend address contains a special 4 byte number called the nospam.

When a friend request is sent to that user the nospam number must match, or else the friend request is silently discarded. In this way, if you are being spammed with requests, simply change your nospam to a new random number. The attacker must now bruteforce the new nospam number to succesfully attack again. There are 2^(8*4) = 4294967296 possible combinations that they must try before they can successfully send you a new friend request.
А шестизнаков уже совсем не осталось?:)
И мне напишите:
277333068B9BB473A07C14B9243E58A6C1508EEB5581FF7BC13277FDA24FE81BE421B5CDABF6
А что на счёт безопасной передачи ID?
В ручную переписывать как то не айс. А отправлять через сеть равносильно всё тем же обычным способам связи с шифрованием, где точно можно сказать кто есть кто.
Я хочу предложить интеграцию с твистером на основе его цепочки блоков, что бы от туда он получал данные (т.е вводить в TOX можно было как ключ так и тупо ник из твистера)
Кстати, я очень, очень давно сталкивался с замечательным (и даже вроде стандартизированным) методом преобразования мнемонически неудобных строк (изначально вроде задумывалось для случайных паролей, но как все понимают можно юзать любые случайные строки) в сраввнительно удобные последовательности из коротких английских слов.

Длинна предложения во многом зависит от размеров словаря, но даже с стандартным, помню, из MD5-хешей получались вполне приемлимые предложения.

Можно слегка допилить алгоритм преобразования чтобы слова рифмовались (думаю, ничего очень хитрого в этом нет) и использовать для того чтобы придать идентификаторам человеко-запоминаемый вид (что-то вроде PHONE DICE NONE FOX GONE CAT TONE GLASS BONE COLD ALONE запомнить проще чем что-то вроде приведенного выше идентификатора)

Пойду поищу «классическую» реализацию…
Пока не будет нормального гуя, ни о какой победе говорить не приходится. Даже учитывая, что Скайп прикладывает к победе альтернативной говорилки максимум усилий.
Подождем Summer of Code. Очень хочется верить в ребят, разрабатывающих Tox, потому что даже конкуренты скайпа вроде ooVoo вызывают рвотный рефлекс имеют неприятный интерфейс, закрытые исходники и набиты кучей рекламы. Хотя, казалось бы, технологии (железо, сеть) уже не первый год позволяют иметь каждому почти бесплатные видеозвонки с нескольким людьми из разных стран… Но вот софт отстает, особенно пригодный не только для гиков.
Приятно беседовать с умным человеком!
Теперь для всех (включая Linux) платформ существуют готовые сборки

ReactOS, Haiku, KolibriOS, OS/2?
Из недесктопных: Blackberry, iOS, убунтуфон, MeeGo?

В списке увидел только парочку юникс-подобных ОС — до всеобъемлющего всех, так ещё и болдом написанного, как-то недотягивает.
Означают ли все эти манипуляции по защите анонимности, что для начала общения с новым пользователем нужно будет ждать минут пять или дольше? И та же байда при переключении Ethernet/Wi-Fi/4G? Если да, то боюсь массовый пользователь никогда не будет вашим. В Telegram об этом подумали.
Думаю самый долгий этап — это сбор данных о нодах и супер-нодах силами DHT, но по идее это происходит только при первом запуске.
Отстраивание луковицы — дело быстрое.
Нет, добавление в друзья и доставка сообщений происходят практически моментально.
Добавление в друзья происходит около 4-8 секунд, что очень даже неплохо.
А какой из GUI наиболее функциональный для win?
Venom, Qt, winTox
UFO just landed and posted this here
ммм… Для Windows Phone клиент запилят?:)
Лично мне от IM нужно совсем другое.

Я хочу, чтобы на всех устройствах, на которых я пользуюсь IM-сервисом, была доступна хистори всех контактов. Даже если устройство было отключено на момент переписки.

Потому что если тебе прислали важную ссылку, когда ты сидел в IM с домашнего компа, и ты не можешь открыть ее на работе — это полный провал.

Чтобы таких ситуаций не возникало, сервис должен вечно хранить всю мою историю. А это означает, во-первых, централизацию, а во-вторых, незащищенность перед злоупотреблениями властью. И я сознательно на это иду.

Раньше эту задачу прекрасно решал Google Talk, которым я пользовался через любимый Jabber/XMPP-клиент (в котором, правда, не было синхронизации хистори из-за частичной проприетарности протокола Talk, но хистори всегда была доступна в облаке, что просто МЕГАудобно). Теперь полуоткрытый Talk превратился в закрытый Hangouts с отвратительнейшим, неюзабельным десктопным клиентом.

Что остается?

Skype технически обладает такой возможностью, но реализована она только в клиентах под Windows, iOS и, кажется, Android, а моя основная ОС — Linux.

В Jabber/XMPP есть два стандарта синхронизации истории. Один мало кем поддерживается и уже заброшен в виду неэффективности. Другой эффективный, но не поддерживается вообще никем, за исключением одного сервера и одного десктопного клиента.

WhatsApp/Viber/Telegram и подобные — они либо явно заявляют, что хранят историю ограниченное время и удаляют, либо вообще ничего не сообщают о хранении/синхронизации истории. Понятно, что доступа к хистори через вэб-интерфейс, как у Google, нет ни у одного из этих сервисов.

Особо в этой ситуации удручает фрагментация пользовательской базы.

PS Военов анонимности прошу не минусовать. Я не выступаю против вашего права шифроваться. Шифруйтесь на здоровье.
PPS Поставили с товарищем по Tox-клиенту. Ни мне его запрос на добавление не пришел, ни ему мой. Сабж все еще неюзабелен. :(
В последнем клиенте android история только до вчерашнего вечера доступно, что дико раздражает.

А хранение истории можно реализовать другими способами, как например полная синхронизация между клиентскими устройствами, даже без централизации (но вечное хранение доступно до тех пор пока живо последнее устройство с логом чата)
А это не для всех приемлемо: поднимать спец ноду с бекапом истории, но есть вариант который рассмотрен около СЦ Диаспора. Можно выбрать ИД друзей которым можно доверить хранить шифрованную персональным ключом историю, в этом случае логика до последней рабочей ноды остается, но данные размазываются по куда большему числу участников, но и трафик увеличивается. Пересылка файлов это torrent + magnet + шифрование (остается только лочить фал до конца полной пересылки, этим бывает грешен скайп, файл отправил, но в ос он не занят и может быть удален)
Хвала открытым протоколам!
Вообще, если поддержка мульти-логина будет, то можно «вытягивать» историю из самого себя (правда, одному из клиентов придется быть always online).

Также, поскольку синхронизация истории не требует расшифровки сообщений («хранителю истории» надо знать лишь ID пользователя, для которого он ее хранит, и таймштампы его сообщений) возможно создание «вспомогательного сервиса» синхронизации историй (равно как и возможность поднять свое собственное хранилово на VPS за $5).
Преимущество такого подхода будет в том, что:
«хранение историй у третьих лиц» будет включаться лишь для тех, кому оно надо, при этом не будет оснований для подозрения что де «все равно хранят а мне не говорят»
если «хранителя истории» я выбираю сам (а то и сам поднимаю на VPS), то я могу выбрать юрисдикцию из соображений своей личной паранойи (АНБ например лично мне почти что и не страшно вовсе)
С одним клиентом всегда в сети, это тоже централизация, она безусловно гораздо более защищена в плане анонимности, но при этом она является точкой отказа с гораздо меньшей надёжностью, чем облако серверов сервиса, помимо этого надо иметь железку, которая всегда в сети, что для пользователя уже не так удобно. Думаю именно об этом говорил lolmaus, имея ввиду факт, что согласен на централизацию, ну т.е. сервис с синхронизацией, и полной доступностью истории «из коробки», т.е. без каких либо телодвижений со стороны пользователя.
Вы меня правильно поняли, спасибо за коммент.
Я пользуюсь хенгаутом и его интерфейс меня полностью устраивает. При этом есть вся история, нет никаких проблем с синхронизацией, а так же, видео и аудио хорошего качества. В общем, рекомендую-таки попробовать попользовать.

P.S. А то, что они выпилили поддержку XMPP, это, конечно, жесть… Очень плохо.
У меня дикие проблемы с синхронизацией в Хэнгаутс — доходит до того, что на компе приходит сообщение, я слышу звук, а на телефоне никаких новых сообщений нет. Даже если ответить в тот же диалог, то твоё сообщение появится, а предыдущее — не появится, оно останется только на компе.
Ну так оно и не должно приходить на телефон, если ты активен в браузере, так что это не баг, это фитча. Иначе бы меня это сильно раздражало.
Сообщения у меня синхронизируются настолько быстро, что я бы назвал это «мгновенно». Вся история всегда сразу подгружается и ложится именно туда, куда я ожидаю.
Откуда у тебя такие проблемы я не знаю.
Эмм. В скайпе такое было и есть под всем платформами.
Есть bitmessage. Децентрализованный мессенджер, который хранит историю сообщений в распределённой сети. История хранится в этой самой сети два дня. Но при этом отправляющая сторона автоматически переотправляет сообщения, если они не дошли, поэтому долго отсутствовавший в сети нод обязательно получит все адресованные ему сообщения. bitmessage только мессенджер, он не поддерживает звонки
Почтовый клиент, если точнее.
Маленькая птичка сообщила, что с этим RFC можно поиграться онлайн: brainwallet.org/#converter

Итак, для TOX ID A458C89411E87324B0277DAC305E6110C3C0A2817D2B4FF76D55D5A6F81682744836B2B7F948 получаем

RFC1751:
A AX GAS GULL TO VERB DIME LOP BY WHOM NEIL OLD BURT FRAY TROY WET GUS HEBE AVOW MILL BEEN LAVA DARN COG FLED JOEL DEE CHAW FEST JUNO

(30 слов)

Там еще есть вариант «Poetry», но к сожалению он не рифмует слова, а судя по всему лишь использует популярные «в поэзии» слова в словаре. Его результат для предложенного TOX ID
glide utter utter secret health rough baby dwell pay grip former silver sheet freedom nation nerd still possible crimson fact won sky nation cousin women broke ponder evil spin home


тоже 30 слов.

В общем, не то чтобы очень здорово, но это хотя бы можно продиктовать по телефону.

Мне видится возможным «хак», который будет рифмовать слова. shifttstas, если интересно, могу набросать общую концепцию.
Немного поигравшись с очень простой (и понятной простому смертному) питоновой имплементацией конвертера случайных строк в набор слов, понял что «поэтизация» потребует долгой и кропотливой работы, скорее всего с привлечением специалистов по, собственно говоря, поэзии.

А вот простая конверсия 256 битной случайной строки в «салат из слов» работает вполне нормально.

В конце концов, наборы слов повышенной запоминаемости (срифмованные или «тематичные») можно получать банальным брутфорсом а-ля Scallion
Обрадовался клиенту для Android, а он при запуске сразу падает :(
Только что собрал себе :)
работает отлично, успел потестить между десктопом и дроидом.
Сборка кстати реально в 3 клика.

Скачать доп либы, импортировать проект в AndroidStudio из VCS Github
после импорта не нажимать кнопку открыть, а переключиться на скачанный архив и положить фалы по местам, а потом открыть проект и дождаться открытия и нажать build
Кто-нибудь знает, как получить приватный ключ для переноса на другое устройство? И как его перенести? У меня Venom.
Начало статьи очень похоже на описание работы i2p. Отсюда вопрос: нельзя было просто использовать i2p для целей поиска собеседника?
Можно конечно. Просто всех жутко пугает почему-то установка i2p-роутера. А так все эти велосипеды, такие как Tox (да, i2p-messenger без звука\видео, но это временное ограничение вызвано только пропускной способностью сети), Bit-Message и т.п. давно созданы в i2p. Уж лучше б в них вкладывались.
Можно с простеньким роутером, встроенным в программу. На гитхабе есть реализации на c++, правда не ручаюсь за их работоспособность.
Если наконец-то перепишут на C++ то это будет очередная мини-революция т.к скорость работы возрастет
Если бы кто открыл на каком-нибудь Кикстартере такой проект по переписыванию i2p, да ещё и с user-friendly установщиком, я бы внёс свой вклад. И думаю, многие из хабравчан тоже.
Да господи, чем текущей не юзерфрендли? Стандартное «далее-далее-далее» из особенностей только Java поставить если еще не установлена.
«Далее-далее-далее» действительно любая бабушка сделает, но вот после нажатия «Готово» установка не заканчивается и обычно нужно ещё много чего сделать нетривиального.

Мне вот пришлось искать и прописывать путь для скрипта автонастройки прокси (это что, очень сложно сделать из инсталлятора?) и ручками добавлять записи в адресную книгу (это вообще возвращает нас в эпоху Интернета до изобретения DNS). Не очень-то user friendly, я считаю.
Единственная базовая настройка — в нужном браузере добавить прокси. Если для этого требуется отдельный инсталятор, то этим людям не чего делать в этой сети. Добавление адреса по сложности нестрашнее работы с торрент-клиентом. Максимум, что необходимо это прочитать гайд с картинками. Если даже в процессе работы с простеньким гайдом коих уже тысячи возникают сложности, то повторюсь этим людям не чего делать в I2P.
Ну так а чего мы хотим получить в итоге? Анонимность для всех и каждого или тёплый маленький Интернет-2 «для своих»?

Ориентируясь на массовость, нужно рассчитывать на неподготовленного пользователя.

Но честно признаться, я тоже скучаю по тем временам, когда интернет был только для тех, кто не боится гайдов! Лучше бы вообще убрать инсталлятор, написать гайд по установке и настройке, да подлиннее и наконец открыть в i2p Хабрахабр, Википедию и всё остальное, что мы так любим. Но к сожалению, это очень маловероятный сценарий.
Вы только, что описали CJDNS именно так там сейчас.
Вопрос — как, в контексте луковичной маршрутизации с ее «временными ID», будет работать «отложенная» доставка сообщений (и будет ли)?

Без временных ID все было бы сравнительно прямолинейно (супер-нода может «законсервировать» несколько сообщений для последующей доставки)…
Тоже не видит, написал
Уже несколько человек написали, только с одним удалось пообщаться…
У поизона есть проблемы, мы когда трестировали, пришли к выводу что лучше всего работает venom
А что вы подразумеваете под словом «супернода»? Если не ошибаюсь, в Tox нет такого понятия.
В свободное время тоже пишу одну распределённую штуку на базе Kademlia-like сети и DHT, и есть мысль, что несколько приложений, каждое из которых поддерживает свою сеть — это страшный оверхед. Было бы лучше, чтобы был единый бэкенд, который бы поддерживал сеть для всех сервисов сразу, сколько бы их не было. Этакая мульти-сеть, объединяющая в себе множество сетей по типу Kademlia. При этом сети будут независимыми, и использование одной программы нельзя будет связать с использованием другой программы. Учитывая, что юзеры сети вполне вероятно могут держать запущенными по несколько приложений одновременно, получилась бы хорошая экономия на пингах и памяти под адресные таблицы. Делается это совсем несложно, просто надо кому-то начать.
Сейчас же каждый разработчик p2p приложения по новой реализует защиту от флуда и прочих атак, что весьма непростая тема. Было бы хорошо иметь фреймворк, где это всё уже сделано.
Звучит очень интересно, наработки на гитхабе увидить можно?
Я бы и сам не отказался увидеть на гитхабе чего-то подобное и желательно на всех языках программирования. %)
Если же вы про мой код, то он обязательно там появится, когда (если) начнёт делать хоть что-то.
Да, про него конечно, библиотека для DHT сетей которая довольно просто реализует различные функции — была бы великолепна
tomp2p.net/ на его основе хотел в своё время писать p2p мессенджер
Sign up to leave a comment.

Articles