Pull to refresh

Comments 166

А на свой vps его можно будет поставить?
Его можно поставить уже сейчас, неофициальные реализации существуют на PHP, C# и Rust (фишку со sponsored channel никто из них не поддерживает, разумеется). Но я думаю команда Telegram предоставит свою реализацию в ближайшее время.
фишку со sponsored channel никто из них не поддерживает, разумеется

Sponsored channel идет через сервера Telegram: Клиент подключается к серверам Telegram и в initConnection передает IP и порт используемого прокси-сервера — а тот (сервер Telegram) уже находит по ним соответствующий Sponsored channel и передает его клиенту.

Так и думал на самом деле. Выходит будет какой-то официальный бот типа @BotFather, где можно будет произвести эту привязку?
Почему именно IP? А если ip несколько? DNS из-за чего не выбрали
Домен по DNS ресолвит клиент Телеграма на устройстве. Просто придется Telegram предъявить все IP адреса, если используется домен.
Судя по TL-схеме, кстати, ничего не мешает передать домен:
inputClientProxy#75588b3f address:string port:int = InputClientProxy;
UFO just landed and posted this here
Когда будует официальная документация — да, пока все реализации — кустарные пока не известны спеки.

Начну с довольно резкого вопроса: Что это делает на хабре?


Ни слова про техническую реализацию.
Точнее, пару раз упоминается, что это "почти TLS". Это не соответствует правде.


Недавно подобная статья была на TJournal, где Даша aka koteeq из VeeSecurity дала неплохое описание протокола "obfuscated2", который используется в том числе для "mtproto proxy". Процитирую:


На днях по приколу писала DPI, определяющий пакеты Telegram по содержимому:) Обфускация "anti-DPI" там простая. Генерят на клиенте случайный 32-байтовый ключ и 16-байтовый IV, ими шифруют пакет с AES CTR и отправляют. При этом сами ключ и IV отправляются перед зашифрованной нагрузкой.
В итоге, если вы провайдер, вам нужно ВСЕГО ЛИШЬ брать от каждого исходящего пакета 8-40 байты (ключ) и 40-56 байты (IV), расшифровывать содержимое (64-… байты). В расшифрованном содержимом уже вполне стандартный mtproto-формат, где первые 8 байт — сигнатура авторизационного ключа. Поймали несколько пакетов, где первые 8 байт после расшифровки совпадают — смело вносим конечный адрес в реестр запрещённых ресурсов.
насчёт ВСЕГО ЛИШЬ и почему я вообще об этом открыто говорю, не боясь дать подсказку РКН: сама идея слишком простая, глупая, а защиты-то по сути никакой, но вот только ни у одного провайдера не хватит мощностей каждый пакет расшифровывать с AES-256 и какие-то проверки проводить на предмет наличия там Telegram.

Идем дальше:


Внутри тоннеля — «каша» из шифрованного трафика, трафик зашифрован, как можно догадатся, тем самым паролем/секретной фразой которую вы вводите при подключении. Но не только ей, конечно же, тут используются все возможности SSL/TLS.

"Секретная фраза" не принимает участия в шифровании, и нужна только для авторизации — можете сами в этом убедиться, просто открыв и бегло просмотрев код любой (неофициальной) реализации. Про "все возможности SSL/TLS" я уже сказал выше.


На просторах чатов в телеграмм был найден полу-официальный прокси который прекрасно работает с новым протоколом и (похоже) запущен одним из разработчиков, собственно вот он

Абсолютно никаких пруфов, конечно же. Просто ссылка со словами "запущен одним из разработчиков". Может расскажете, почему "похоже"?


PS А еще в самой свежей версии библиотеки для VOIP звонков которая используется в telegram найдена поддержка режима конференций, похоже скоро будет сразу два больших анонса.

А это вообще какое отношение к теме статьи имеет? И снова без каких-либо ссылок или пруфов...

Даша aka koteeq из VeeSecurity
По-моему всё-таки Анна :)

Абсолютно никаких пруфов, конечно же. Просто ссылка со словами «запущен одним из разработчиков». Может расскажете, почему «похоже»?
На этом канале, который часто делал сливы с приватных беток появилась информация, что это «первый настоящий». t.me/telecentr/48
Понятно, что сказать можно всё что угодно, но я просто указываю на то, откуда ноги растут.

А это вообще какое отношение к теме статьи имеет? И снова без каких-либо ссылок или пруфов...
Да ладно, почему бы и нет? Пруфов в статье нет, конечно, но если чуть-чуть поискать, найти не проблема.
По-моему всё-таки Анна :)

Да, у меня постоянно проблемы с запоминанием имен...


Насчет пруфов и ссылок — да, можно поискать и найти. А можно сразу оставить их в статье.

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

А это вообще какое отношение к теме статьи имеет? И снова без каких-либо ссылок или пруфов...


по поводу конференций — github.com/grishka/libtgvoip/commits/public

Абсолютно никаких пруфов, конечно же. Просто ссылка со словами «запущен одним из разработчиков». Может расскажете, почему «похоже»?


Потому, что ссылку выложил один из разработчиков клиента Telegram X, больше подробностей — нет
ссылка на данную статью была бы не лишняя, добавлю в пост
Данная статья не содержала в себе ничего интересного с точки зрения статьи, весь срач был в комментариях, а на TJ комментарии доступны только платным подписчикам.
Тогда предлагаю позвать сюда koteeq из VeeSecurity, если у неё нет инвайта — я готов предоставить. Я только за, если мы соберём больше информации по тому как MTProto proxy работает
Потому, что ссылку выложил один из разработчиков клиента Telegram X, больше подробностей — нет

Можно чуть конкретнее? Где выложил?

Это вы про t.me/tgiostests/34850, а разработчик — это sadal?
Если да, то вынужден вас расстроить — sadal не является разработчиком Telegram, и имеет к Telegram в целом не большее отношение, чем Я — занимается модерацией и ещё парой волонтерских проектов у Telegram.

АПД: Был неправ насчет Secret'а, он действительно используется в шифровании пакета.


А вообще Анна aka koteeq написала целую обширную статью про mtproto proxy и все все все: https://t.me/theyforcedme/48.

И в своём посте она прямо говорит, что все таки в пакетах каша и трафик обфусцирован…

Странный подход. Почему просто не сделать ECDH-KDF-256 для генерации сессионный ключа? Тогда нету риска что расшифровка первого пакета вернет какую либо полезную информацию.

Странный подход. Почему вообще борьба за цифровую свободу идет под флагом корпоративного и централизованного мессенджера, а не каких-нибудь серверлесс-штук типа tox? Очевидно же, что в телеге всегда главным уязвимым звеном будет сам Дуров. Человека можно подкупить или запугать (он что, всех родственников и близких из РФ вывез?), а открытый децентрализованный мессенджер с комьюнити-разработкой — нет: если что, его просто форкнут аки трукрипт.
Потому что tox сложно для большинства, а телеграм простой, удобный, в красивой обёрткой и с кучей полезных функций вроде ботов, каналов и т.д. А ещё потому что Дуров поднял хайп, не будет же он в подобной ситуации говорить, что есть другие более безопасные методы общения, чем телеграм.
Человека можно подкупить или запугать (он что, всех родственников и близких из РФ вывез?),

Ну, приватные чаты он при всём желании не может выдать, только если бекдор, но с исходниками клиентов его намного легче найти.
Вы так наивны, во первых нет гарантии что через аппстор распространяется версия, собранная из публичных исходников. во вторых, вспоминаем openssh в debian. исходники были открыты, но никто не заметил кривого патча, люто понижающего энтропию в течение нескольких лет
Вы так наивны, во первых нет гарантии что через аппстор распространяется версия, собранная из публичных исходников

На счёт аппстор не скажу, но с десктопом можно собрать по инструкции(те же версии компиляторов и либ) и проверить побайтово.
вспоминаем openssh в debian. исходники были открыты, но никто не заметил кривого патча, люто понижающего энтропию в течение нескольких лет

так я ж написал
только если бекдор, но с исходниками клиентов его намного легче найти
А где вы тут видите «борьбу за цифровую свободу»? Вы ещё скажите, что Навальный, выходя детей на несанкционированные митинги за свободу борется.

Задумайтесь вот над чем. Судя по описанию нам предлагают выкинуть инструмент инструмент, который
  1. Был применим для множества целей, как для нелегальных, так и, в том числе, вполне легальных
  2. Который не камуфлировал ни под что, а был вполне открыт и прозрачен
  3. Который вы оплачивали из своего кармана (или не из своего, но, в любом случае — вы работали за свободу, а не за деньги)

и заменить его на инструмент, который

  1. Применим почти исключительно для того, чтобы обойти запрет, наложенный, как бы, вполне легитимным судом
  2. Пытается сделать так, чтобы «органы» вас не сразу нашли
  3. И за установку которого вы будете получать деньги (по крайней мере это заявлется в рекламе)


То есть, условно говоря, кухонный нож предлагается заменить на автомат и книжечку с именами «главарей подполья».

Нет, я понимаю Дурова: когда в результате кого-то посадят — будет очередной чудесный повод рассказать про то, как «кровавый режим» зажимает «свободу слова».

Но я не понимаю людей, которые всё это преподносят как «борьбу за свободу».

Да нет тут «борьбы за свободу», забудьте. Голый хайп «на жареную тему».
Зачем сюда было тащить политоту?

вполне легитимным судом

?
Который вы оплачивали из своего кармана (или не из своего, но, в любом случае — вы работали за свободу, а не за деньги)

??
И за установку которого вы будете получать деньги (по крайней мере это заявлется в рекламе)

???

Смысл вашего комментария мне не понятен.
(Куратор, поменяйте ребят в ночной смене — они у вас совсем чушь пишут, деньги зря ваши тратят.)
UFO just landed and posted this here
Если бы я оскорблял их чувства — то они, может быть, это бы и стерпели. Но я же бью по «святому»: по принципу «вы не рефлексируйте, вы распространяйте».
На мой взгляд MTProto Proxy в первую очередь решает проблему с оверхедом, который дает SOCKS.

Не все понимают, что телефон с Telegram не подключается сразу к датацентрам. Telegram сначала подключается к MTProto-серверам, развернутыми по всему мира, а вот они уже роутят юзера на датацентры в Нидерландах, Америке, Азии и т.д.

Telegram остается в России рабочим, как раз потому что команда Павла разворачивает эти MTProto-сервера тысячами на Amazon, Digital Ocean, Azure и т.д.

В итоге мы получаем вот такую картину:
Без прокси (так работало и работает до и после блокировки):
Ваш Телефон <-> MTProto-сервер <-> Telegram DC
С SOCKS-прокси:
Ваш Телефон <-> SOCKS-сервер <-> MTProto-сервер <-> Telegram DC
C MTProto Proxy:
Ваш Телефон <~> MTProto-сервер <-> Telegram DC
Где ~ дополнительная обфускация канала.

Другими словами proxy эта штука называется лишь формально. А по факту Telegram предоставляет нам развернуть часть инфраструктуры Telegram самому.

В итоге основной профит будет как раз таки в скорости работы на мой взгляд и вернет Telegram ту быстроту, как было до блокировок.

P.S. Смотрю stek29 здесь :) Ух сейчас он всех нас расставит.
Еще очень похоже, что это отголосок тех самых TON Proxy которые нам обещали в рамках TON
TON пока очень мутная тема. Да, там была вроде как в проекте некая сеть а-ля Tor, но как это будет реализовано и будет ли вообще, большой вопрос.
вот очень похоже, что эти прокси — аналог entry узлов в Tor которые позволяют уже подключится к самой инфраструктуре. А пока нету TON — оплата за пользование — подписка на канал
UFO just landed and posted this here
Оверхед в том, что Дурову приходится оплачивать все эти тысячи proxy по всему миру. А тут — можно все затраты переложить на хомячков, да ещё и хайпануть по-новой когда их «заметут».

Решение, кстати, гениальное… а что оно аморальное — ну так мораль никогда Пашу не останавливала.
UFO just landed and posted this here
В рамках борьбы за свободу обходить закон Дуров закупил тысячи прокси на разных хостингах. Космические суммы, которые тут разные люди насчитывали (типа миллиона долларов в день) — это всё, конечно, чушь, но в любом случае это было дорого. А главное — было уязвимо к простому решению Amazon'а выполнить официальное требование и прекратить хостить эти proxy. Данное решение же позволяет втянуть в войну мирных жителей и поставить их под удар… классика жанра…
Telegram Desktop под Linux уже умеет делать end-to-end?
Значит нет, зачем тогда такая поделка нужна.

Telegram Desktop это лишь кросс-платформенный клиент(Под Linux, macOS, Windows) его код всегда доступен на GitHub.
Если тебе нужно E2E, допиши его. (Если не можешь, это твоё дело. Писать его пока не будут, а может вообще не начнут. ИМХО)
Ну либо брось issue об этом, хотя потом все равно закроют как 871'е. Правда без обсуждения.

Вопрос был риторическим если кто-то не понял. Дело в том что они называют свое поделие сикюрным, однако в то же время на безопасности фокуса не видно.
Это open source, и любой может написать реализацию — протокол открыт. Если никто не пишет, значит это просто никому не нужно.

Ну и Телеграм «безопасным» называть никак нельзя, пока он ворует телефонный номер и книгу контактов. Безопасный мессенджер не требует от вас раскрывать свою личность.
Если никто не пишет, значит это просто никому не нужно.
Но если это никому не нужно — тогда почему из-за этой, мало кому нужной, фичи, поднята настоящая война?
Ну и Телеграм «безопасным» называть никак нельзя, пока он ворует телефонный номер и книгу контактов. Безопасный мессенджер не требует от вас раскрывать свою личность.

Да и использование центрального сервера через который бегает трафик тоже сомнительно, кто знает что они там делают с данными на самом деле.

Тема центрального сервера в архитектуре кстати относиться и к теме этой статьи.

Ура, в настройках появилась опция отключения синхронизации телефонной книги. Как понимаю, благодаря GDPR...

Разраб недавно писал, что сейчас tdesktop работает как веб-версия, поэтому там нет секретных чатов.

Макосевой десктоп клиент умеет секретные чаты сто лет как.

Монетизация сделана великолепно. Неудобства будут только у тех кто не читает каналы вообще и не может развернуть свой прокси. Всем остальным будут одни плюсы.
Я думаю это аудитория 35+ для них будут статьи «как подключится» заодно начнут каналы читать.

Вы нас (35+) недооцениваете. Мы это разворачивать и будем, причем далеко не на купленном vps :)

В СНГ интернет начался в середине девяностых. Массовый веб — в конце девяностых.
На текущий момент прошло 20-25 лет.

Те, кому в середине девяностых уже было лет 10-20 — компьютеры и интернет был интересен, а кругозор еще не ограничен полученной специальностью и работой.

Им сейчас 10-20 + 20-25. Получаем 30-45 лет. Именно в этой аудитории сейчас можно найти подавляющее большинство грамотных людей, начавших с нуля.

Старше 45 — редкие исключения, начинавшие с ФИДО и более ранних компов. Таких относительно немного (да я понимаю что на Хабре как раз все наоборот).

Но это я к тому, что «как подключиться» это скорее для аудитории 45+, а 35+ как раз наоборот.
Прошу прощения если задел своим предположением, если дела обстаят так как вы описали — это же отлично!
У вас в профиле написано, что вы 71 года рождения. Это вы соврали, чтобы казаться старше или думаете, что один такой умный в 35+?))
Согласен, разработчики очень грамотно придумали идею со спонсорством, так как понимают, что за вознаграждение помогать обходу блокировок найдется больше желающих. Единственное, жаль, что это не универсальное решение и каждое приложение должно само аналогичную схему выстраивать, чтобы надежно работать в странах с неадекватным руководством.
Согласен, разработчики очень грамотно придумали идею со спонсорством, так как понимают, что за вознаграждение помогать обходу блокировок найдется больше желающих.
А также понимают, что это даст возможность правоохранительным органам этих всех желающих «винтить», а Паше — петь песни про «войну со свободой слова».

Вот в чём Дурову не откажешь — так это в умении «разводить» людей. Нужно же кому-то Мавроди заменить… впрочем он хотя бы из бабушек и дедушек последние пенсии не вытряхивает — и на том спасибо…
… это даст возможность правоохранительным органам этих всех желающих «винтить»

Каким образом?
Мне кажется, khan ранее имел возможность познакомиться с механизмами дознания :). И мысль его проистекает, как мне кажется, как раз оттуда: противоправное деяние, совершенное без умысла получения выгоды — чаще можно свернуть на административку, в тот же момент, когда умысел извлечения выгоды из противоправного деяния очевиден — это уже уголовка и прочие прелести.
Но тут я скорее хотел бы задать вопрос юристам, буде присутствующие в нашей тесной компании: а на самом ли деле можно утяжелить квалификацию владельцам каналов, если доказать что они (владельцы) умышленно нарушали решение суда (тут никуда не денешься — решение суда есть) с целью извлечения выгоды (монетизация аудитории)? И можно ли доказать, что использование mtproto, который является встроенным и обязательным(?) механизмом телеграма является дополнительным квалифицирующим признаком?
умышленно нарушали решение суда

Решение суда не применимо к тем, кто делает эти прокси-серверы. Максимум что могут сделать сейчас в рамках закона — заблокировать адрес.
И это все еще не отвечает на мой вопрос — как найти человека, запустившего такой сервер?
Если я правильно понял из статьи, то прокси-сервер будет обязательным атрибутом канала.
Как найти владельца канала? Ну подозреваю, что методами, похожими на методы ФБР, примененные при поимке Винника и Селезнева, ну например. В настоящее время они точно не могут так поступить в силу процессуальных ограничений, при условии, что на канале не было откровенной терры.
Вопрос к возможным юристам остается: будет ли извлечение выгоды достаточным условием для возбуждения УГОЛОВНОГО дела (сейчас это только административка) и как могут прикрутить то самое «извлечение выгоды»? (более полно вопрос в предыдущем моем сообщении).
Т.е за создание прокси и канала с мемами — «действовать методами фбр»?
Первое: вопрос не ставился «будут или не будут», я задал совсем другой вопрос: могут или не могут при необходимости возбуждать УГОЛОВНЫЕ дела.
Второе: А фиг его знает. И если сейчас я уверен, что в случае обострения гарантированно отделаюсь штрафом, то нет уверенности, что после перехода на другую схему в случае кризиса не буду иметь «бледный вид и потухший взгляд» или предложение «о сотрудничестве», от которого в таких условиях (реальный срок) достаточно тяжело будет отказаться. Грустно сознаваться, но я не герой и не идейный борец за свободу.
Это как с «канцелярскими несунами» в офисе: за пачку бумаги максимум попросят написать заявление, за бук или видео карту — тут появляются варианты.
Если вы хотите чувствовать себя в безопасности — напишите своему хостеру вопрос, будут ли они сотрудничать с РФ, при отсутствии суда на территории EU/USA. С вероятностью 99.5% они не передадут никаких данных (если хостер крупный и ему дорого имя)
И все-таки хотелось бы услышать юридическую оценку, и вот почему:
1. Так хостер и сказал кому и что он сливает и с кем сотрудничает. Они тоже кучу бумаг подписывают по этому поводу.
2. Еще раз повторюсь, что в связи с отсутствием уголовной составляющей опера связаны процессуальными нормами. да и не интересно ради штрафа работать. Изменятся условия — изменится и ситуация. Повторится ситуация с «разносчиками кристаллов», когда опера «вызванивали» закладчика и «лотошили» при замене закладки. На ютубе достачно видосиков, снятых с дворовых уличных камер, как бравые парни без формы прыгают из машины и «пакуют курьеров смерти», который перед этим как раз отвечал на звонок. ватсап/Телеграм же безопасен, чего бы и на звонок не ответить? Оперативная работа — она такая, никаких «высоких технологий». И дедовскими методами ловко справляются.
1. Я не понимаю жаргон
2. Как вас технически найти, когда сервер в европе, связь с владельцем канала — через бота, перевод денег за рекламу — в биткоинах
Находят на проколах. А так никак, конечно.
На основе чего «винтить»?

Итак, чуть выше вы в этот пост за уши притянули Навального, сейчас — Мавроди, вы знаете, мне кажется вам стоит посидеть в ОННН (перманентно)
А также понимают, что это даст возможность правоохранительным органам этих всех желающих «винтить»

А зачем нужны правоохранительные органы, которые защищают воров от граждан?
Попробовал запустить mtproto-proxy сервер на пхп… Подключилось 4000 человек, сожрало 10Гб памяти, на каждого клиента в системе висит по форку пхп. Весело конечно, но с такой реализацией я лучше в socks посижу, там хоть и лаг больше, зато хостить можно на калькуляторе.

А как с другими реализациями? Поделитесь опытом пожалуйста, кто пробовал.
жиза — сырые неофициальные серваки эти все с мемори ликами, а монетизацию можно сделать и без mtproto такую — через бота просто и radius какой нить
Это ж пока костыльные реализации на коленке, я бы подождал на c++
Устраивает, но судя по стеку разработки, «оригинальный» прокси будет именно на c++ (на основе библиотек которые написаны для voip например)
Я не видел на GO проектов от команды Telegram
UFO just landed and posted this here

Самое интересное, что решение проблемы получается лишь частичное. Проксирующих MTProto-серверов даже в самом лучшем случае будет на порядки меньше, чем в мире доступно socks5-серверов. А тех, кто откажется от рекламы, будет и того меньше. Поэтому если Роскомнадзор таки дойдёт до блокировки Telegram при помощи DPI (а он дойдёт), то удобство использования всё равно снизится достаточно заметно.

Так никто не говорит не использовать socks, а dpi мало поможет с mtproto, надо будет пытаться расшифровать каждый SSL пакет, что бы понять телега это или нет.
Наоборот. socks5-сервера, тем более бесплатные, вряд ли созданы для пользователей Телеграм и будут постоянно ломаться, отказываться работать итд. А тут грамотная схема — делаешь прокси и получаешь за это плашку с рекламой. Создавать прокси за вознаграждение, очевидно, найдется больше желающих, чем делать это за бесплатно.
бесплатный не значит фиговый и ломается постоянно — у меня например бесплатный как приложение к боту AudioTubeBot и каналу MediaTube_stream, ну а мотивация подписываться на канал просто делается — обновление настроек переодическое с уведомлением в канал — кто подписан — переподключается, кто не подписан — не получил уведомление, отвалился
Promoted каналы — это такой канал, на который вы автоматически будете подписаны при подключении к прокси, он будет закреплен наверху списка контактов/чатов и его нельзя удалить пока вы не отключитесь от данного прокси.

Я согласен, что создатель прокси сервера должен что-то получать взамен, но иметь принудительный канал, ещё и закреплённый наверху, — идиотизм.

Возможно это станет толчком к развитию альтернативных клиентов, ведь насколько я понял "закреплен наверху списка контактов/чатов и его нельзя удалить" реализует именно клиент.

Не вижу плохого если получится симбиоз, предположим вы читаете 10 каналов, один из них поднимет прокси, вы продолжаете читать все те же 10 каналов, просто 1 из них будет закреплён.
Ключевое слово если, да и сам факт закреплённости также мне не нравится, т.к. я хочу сам управлять чатами/каналами/ботами в быстром доступе и некоторые я ну никак не хочу видеть рядом с важными для меня(«закреплений», кстати, всего 5, это не относится к теме, но прям вообще не хватает).
Я думаю всех кого очень сильно бесит — переедут на платные прокси без канала или настроится свой за 1€/месяц
А ещё можно пропатчить клиент, open-source же :)
Можно, но 95% этого делать не будут, особенно на мобильных платформах, с которых, я догадываюсь, 80% трафика
Понятно, что не будут, да и не смогут, большинству будет выбор использовать прокси с назойливой рекламой, платить за прокси без рекламы, пользоваться сторонним клиентом с риском взлома либо использовать другие методы обхода блокировок. Только чем принципиально отличаются мобильные платформы? У телеграма все клиенты open-source.
Тем, что на Android установка в обход маркета требует некоторых телодвижений, а на Apple — практически невозможна.
некоторых телодвижений — это поставить одну галочку в настройках?
Я не уверен (понятия не имею), что на всех телефонах под Android это просто галочка
Я бы не говорил так категорично. У меня стоит несколько приложений не из appstore. И поставил я их так же просто, как в «android» устройствах. Пару подтверждений и все.
UFO just landed and posted this here
Есть только 2 метода как поставить приложения на iOS. В обход магазина: приложение должно иметь Enterprise сертификат, компиляция самим только для себя на Mac.

Первый вариант закончится после первой Жалобы в Apple, будет отозван сертификат. Второй вариант очень сложный для массового использования.
Не возьмусь утверждать как это реализовано, но смысл такой: нажал на сайте на иконку с приложение .ipa если не ошибаюсь. Что то было про согласие на установку. После появилась иконка приложения, но как бы в тени. Нажав на него вылез pop up с текстом о том, что нужно подтвердить установку в настройках. После подтверждения приложение успешно встало и работает. Как то так
Так в чем невозможность, вы не пояснили. Заплатить разрабу 300$ или боятся одной жалобы. Сомневаюсь что apple порежет сертификат после первой жалобы.
В плане телеги, я бы больше доверял, скачивая приложение с оф.сайта.
Какому разрабу и зачем заплатить?
После первой Жалобы от телеги с пруфом — порежет, никто не хочет судов.
После первой Жалобы от телеги с пруфом — порежет, никто не хочет судов.
Причём тут суды? Apple просто очень, очень не хочет делать так, чтобы кто-нибудь что-нибудь на их телефоны ставил в обход официального стора.

Но вот кровавый энерпрайз — этого не очень хочет. Потому был найден компромисс: внутренние для фирмы приложения можно ставить с внутреннего сайта. Отстегнув денюжку Apple'у.

А то, что кто-то таким путём распространяет публичный приложения — ну так это пока Apple на это «сквозь пальцы» смотрит, ни никто не гарантирует, что завтра другой сотруник Apple на вопиющее нарушение договора не взглянет попристальнее…

Ведь почему Apple всех не убивает «на корню», это ж всё детектится? А очень просто: так разработчики часто бета-тестирования проводят, а разгонять своих собственных разработчиков Apple не очень хочется…

Но всё это — ровно до тех пор пока левая пятка кого-то в Apple не решит, что кто-то уж слишком сильно «за рамки» вышел… рассматривать это как альтернативу APpStore'у по меньше мере странно.

Тестирование приложений проходит по другому, у Apple целых две платформы — TestFlight/hockeyapp

Тестирование приложений проходит по другому
Тестирования приложений должно прозодить по другому. Не совсем то же самое, что происходит по другому.

Вы думаете только пользователи не читают инструкции, а разработчики все паиньки и всё делают «как написано»? Ага. Щаз.
Разработчик может сам подписать своё приложение и без корпоративного сертификата
Сомневаюсь что apple порежет сертификат после первой жалобы.
После первой — нет, какое-то время, конечно, уйдёт на рассмотрения.

В плане телеги, я бы больше доверял, скачивая приложение с оф.сайта.
А вот Apple — считает иначе. Эти самые сертификаты предназначены для распространения внутренних приложений компании. То есть уже один факт, что вы получаете доступ к приложению не являсь ни сотрудником, ни даже контрактором — строго говоря повод для отзыва сертификата и блокирования уже установленных приложений.

То что сейчас Apple «с одной жалобы» так не делает — добрая воля Apple, больше ничего. Соглашение разработчкика так делают позволяет.
Если у пользователя есть деньги, он просто купит дешевый VPS. А если нет, что с него взять, кроме показа рекламы? Понятно, что за вознаграждение прокси будут создавать куда как охотнее, чем за бесплатно.
Если у пользователя есть деньги, он просто купит дешевый VPS

На нём ещё надо поднять прокси, не все смогут, поэтому скорее заплатит за прокси без рекламы.
Понятно, что за вознаграждение прокси будут создавать куда как охотнее, чем за бесплатно

Так я с этим не спорил, почитай, о чём мой коммент.
После релиза прокси в продакшен на каждом столбе с заголовком «Настрой себе свой MTproto proxy» будет инструкция состоящая из 3 пунктов:
1. Покупаем сервер %партнерская ссылка кто оплатил статью%
2. sudo curl -sSL get.docker.com | sh
3. sudo docker run --name 'mtproto_proxy'…

А еще чуть позже будет ПО типа Outline которое и эти 3 шага за пользователя сделает, только карту платёжную введи…
Это всё равно для людей не видевших никогда терминал сложно, да и зачем, когда будут наверняка будут платные без рекламы(не уверен, получится ли сделать с mtproto proxy, т.к. для подключения нужен только пароль, мб он как-то сможет проверять id пользователя, хотя это противоречит идее анонимности).
Платные прокси можно делать очень просто: для каждого оплатившего генерировать новый secret, и ставить ограничение на количество одновременных коннектов по одному secret, скажем не более 5.
Генерят на клиенте случайный 32-байтовый ключ и 16-байтовый IV

Дилетанты. Вот добавили бы NoiseSocket, то провайдерам вообще бы было делать нечего
Интересно, когда уже запилят в официальном клиенте возможность подключения прокси до авторизации аккаунта. Люди же мучаются, видят РКН рекламирует мессенджер, а подключится не могут, так как пока не войдёшь, прокси в настройках подключить нельзя.
Так давно уже, нужно нажать на «Подключение...» или не помню, какая там точно надпись появляется и ввести.

Проверил сейчас на старом телефоне Lenovo A2100, крутится Loading по средине экрана, ничего не нажимается кроме Cancel.

У вас клиент старый, обновите.

Клиент был скачан с Play Маркет, как ещё его обновить?

Нужно нажать прям на надпись в шапке «Подключение...». Крайне не интуитивно, конечно, надеюсь исправят.
До Lenovo сегодня не добраться, вот сделал скрин на Xiaomi, про какую надпись в шапке вы говорите? Там где написано Connecting… не нажимается.
prntscr.com/jnb94y
Вы сначала отмените этот Loading, потом кликните туда, да.
Жму Cancel — возвращается к вводу телефона.
Ну так всё верно! Вам же настройки прокси надо выставить. А их надо установить ещё до всех этих вводов телефона. Жмете Cancel и затем на верхний бар.
Верхний бар это как? Там написано Your phone и галочка, которая при вводе телефона начинает соединение. Никаких настроек не вижу.
Плохо (для нас) конечно то, что этот протокол ориентирован только на Телеграм и поднятые прокси не могут быть использованы для других сайтов и приложений, в отличие от socks5. Лучше бы они задействовали shadowsocks прокси, который работает даже в Китае и определенно был бы полезен в условиях плохо работающего российского интернета.
как вы сами выше написали — цель другая, тем более promoted каналы были бы невозможны без модификации протокола shadowsocks, а зачем править то, что хорошо работает? даже гугл в своём Outline — не трогали протокол shadowsocks сделав только красивый интерфейс для пользователя.
UFO just landed and posted this here
Вангую что бы не было фрода сильного, тк так можно обладая любой сетью через которую выходят в интернет клиенты, можно показывать promoted channel + как доказывать, что сеть — ваша?
UFO just landed and posted this here
Promoted каналы — это такой канал, на который вы автоматически будете подписаны при подключении к прокси

Нет, в описании сказано — что он просто будет показываться сверху, принудительной подписки не будет (а это значит уведомлений и кол-во новых сообщений не будет)
Фактически это аналог подписка + Mute
совсем нет, нет даже информации о кол-ве постов
скрин1
image

а после подписки перестает быть вверху
скрин2
image

Переписал свой асинхронный сокс прокси на протокол mtproxy:
https://github.com/alexbers/mtprotoproxy


Пока преальфа, но, вроде работает. В первый раз заработал пол часа назад, а начал писать три часа назад. Могут быть баги.


Более стабильный socks-proxy, который легко поднять и который точно работает:
https://github.com/alexbers/tgsocksproxy

Планируете ли развивать?
— мульти ключ
— promoted каналы
— статистика использования (желательно с привязкой к ключу)
Я думаю с Питоном всё равно быстро упрешься в потолок производительности. Тут нужно каждое соединение шифровать, а с мультисекретом придется как-то лавировать между воркерами и портами. О миллионах юзеров думать не приходится вообще.
Дополнительная трата ресурсов на брут-форс фразы будет только 1 раз на сессию, далее первые байты пакета можно кэшировать и сразу знать чем расшифровывать.

Мультиключ и статистика использования будет в самое ближайшее время, promoted каналы чуть позже.


Ещё в планах сделать опциональный быстрый режим, когда трафик не перешифровывается aes'ом при передаче, будет менее секурно, зато быстро. Так же, в планах использовать си'шную реализацию шифрования для большей скорости

Очень круто! Когда базовые функции будут сделаны — напишите пост — я думаю многим будет интересно.

Мультиключ и статистика использования с привязкой по ключу готовы.


Ещё сделал фичу, которой, вроде, пока нет ни у кого. Рассмотрим протокол работы с mtproto-прокси. При подключении к нему клиент генерирует пару ключей: одну для приёма сообщений другую для передачи. Прокси, при подключении к тг тоже генерирует пару ключей. Идея в том, чтобы взять ключ клиента для приёма сообщений и создать соединение к тг с таким же ключём. Таким образом, входящие сообщения можно не перешифровывать, а передавать как есть, что сильно ускоряет программу т.к. основная часть сообщений именно входящие. Из-за особенностей работы протокола такая упрощенная передача данных может работать только в одну сторону. Серьезных минусов такого подхода пока не вижу, но, на всякий случай, сделал возможность отключаемой (FAST_MODE = False).

А можно в вашей прокси сделать разными входящий и исходящий адреса (т.е. проксировать соединение с телеграмом от прокси через хотя бы ssh-туннель)?

Не совсем понял вопрос. При подключении к прокси клиент отсылает число от 1 до 5 — номер сервера, к которому нужно подключиться. Ожидается, что прокси подключится именно по адресу, соответствующему заданному серверу, а если подключиться к соседнему, то соединение дропается. Можно настроить маршрутизацию так, чтобы пакеты на эти адреса шли через виртуальное устройство, которое осуществит туннелирование.


Свежие новости: ускорен aes в 665 раз за счёт использования модуля pycrypto, при его наличии. Решена проблема с загрузкой картинок и аудиозаписей — клиент телеграмма при попытке скачивания файлов указывает отрицательный номер сервера, сейчас это корректно обрабатывается. Пока неизвестно бага это или фича, ведь по количеству отрицательных номеров серверов администратор может понять сколько картинок/аудиозаписей/файлов скачал пользователь.


Следующее на очереди — promoted каналы

поправил pep8: https://github.com/alexbers/mtprotoproxy/commit/e2ade349d2013a0df1696e842637d11b272a221b


С promoted-каналами пока не всё так просто, похоже нужно уметь их регистирировать на стороне телеграма. Если кто знает как это сделать, скиньте пожалуйста личным сообщением.

Про python way совсем всё плохо, но автор пусть лучше пишет как умеет, потом код причешем и приведём к соответствию.
а пока неизвестно как это делать, но уже есть прокси которые работают с promoted channels

Почитал исходники телеграма. Настройки promoted каналов прилетают с сервера с помощью api-вызова help.getProxyData, который возвращает или help.proxyDataEmpty (пусто) или help.proxyDataPromo. Самое интересное, что вызов help.getProxyData не имеет входных параметров, т.е. телеграм "знает" что клиент в этой сессии сидит через прокси и через какой именно.


Кроме этого, в исходниках реализован ежечасный апдейт promoted channels, что означает что они могут динамически меняться.


Самое вероятное как это может быть сделано — прокси перед передачей первого пакета клиента, вставляет в исходящее tcp-соединение ложный api-вызов со своим уникальным идентификатором (например с api_id и api_hash) и тг-сервер это запоминает.


Я пока видел только один работающий promoted-канал, который утверждает что прокси, ведущие на него, работают на официальном софте от Telegram

наконец, сделал поддержку promoted-каналов: https://github.com/alexbers/mtprotoproxy/commit/fee5a0c05ae855d97e12a46253e4ad50395df17c.


Судя по размеру этого патча, можно сделать вывод, что создатели телеграма использовали очень оригинальную схему передачи тега для таких каналов. В частности там используется ещё один слой проксей на их стороне с которым идёт общение по протоколу mtproto. Каждое сообщение помещается в RPC-вызов этого протокола. Информация о проксе передаётся в каждом исходящем RPC-сообщении, что добавляет около 96 байт оверхэда.


Теперь я понял, почему в официальном прокси сервере 22 тысячи строчки кода.

Она печатается на консоль раз в 10 минут. Если запускать через docker-compose, то посмотреть консоль можно командой docker-compose logs. Период статистики может быть изменён с помощью опции STATS_PRINT_PERIOD в config.py

Подскажите — где отслеживать статус проекта, что бы не пропустить готовый продакшн сервис от самих разработчиков, который можно накатить на свой VPS и использовать?

Тестовые сервисы от энтузиастов, это хорошо — но хочется официального…
Как только будет официальный анонс, либо я, либо другие пользователи Хабр 100% напишут об этом пост

Добавил поддержку promoted channels. Это было жостко! Не понимаю зачем было настолько усложнять..

UFO just landed and posted this here
socks передает пароль и логин в открытом виде, socks работает медленнее, он не позволяет реализовать идею спонсируемых каналов

добавлю, что протокол mtproto сложнее заблокировать сигнатурным анализом т.к. если не знать секретного ключа, протокол общения клиента и прокси неотличим от случайного потока байт

А это нормально, что мтпрото прокси, что из докера, что скомпиленный и запущенный, жрет 20% ядра даже в отсутствие подключений? Ни впн, ни сокс5, ни шэдоусокс не едят даже под нагрузкой столько не потребляют

нормально, он писался под очень дикие нагрузки

Promoted-каналы — это такой канал, на который вы автоматически будете подписаны при подключении к прокси, он будет закреплен наверху списка контактов/чатов и его нельзя удалить пока вы не отключитесь от данного прокси.

Пока есть свободные клиенты, никаких "нельзя удалить" конечно же не будет.

Sign up to leave a comment.

Articles

Change theme settings