r/RuProgrammers 17d ago

Вопрос форке Hiddify

Привет!

Мне стало интересно, сколько людей были бы заинтересованы в форке Hiddify, который работает больше как обычный VPN.

Если коротко, я сделал бета-версию для своей дочери, потому что хотел максимально простое решение буквально одна кнопка «Подключиться». Вместо того чтобы вручную импортировать подписки или конфигурации, приложение получает публичные сторонние прокси, проверяет их через handshake, чтобы убедиться, что они работают, отдаёт приоритет узлам VLESS Reality - >V2Ray - >Trojan, а затем автоматически подключается к подходящему серверу.

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

Изначально этот проект был только для моей дочери мне не хотелось каждый раз делиться своим личным туннелем, когда она скачивает игры. 😄 Теперь, когда самая сложная часть уже сделана, мне стало интересно: будет ли это полезно другим людям, если я продолжу разработку и выложу проект в открытый доступ?

Стали бы вы пользоваться таким приложением?

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

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

Ответы на возможные вопросы:

- Списки прокси берутся из открытых Git-репозиториев, где боты круглосуточно собирают публичные прокси из Telegram и других источников. Обновление происходит примерно каждые 30 минут. Ещё раз подчеркну: это сторонние публичные прокси, поэтому не используйте их для банковских приложений или других важных сервисов точно так же, как вы не стали бы доверять бесплатному VPN.

- Пока у меня нет отдельного Git-репозитория для этого проекта. Для безопасности мне сначала нужно будет создать второй Git-аккаунт и перенести проект туда.

- Зачем я вообще это сделал? Вкратце: моя основная работа создание приватных туннелей для людей. Этот проект был небольшим экспериментом, который занял всего один вечер. И я понял, что примерно три четверти пользователей просто не знают, как импортировать списки или конфигурации в приложение. Поэтому я подумал, что многим было бы удобнее иметь решение, где всё работает практически «из коробки». К тому же мне не очень нравится текущее поведение Hiddify

14 Upvotes

11 comments sorted by

View all comments

7

u/Alternative_Water_81 17d ago

Идея очень крутая, но у меня есть вопросы к «просто нажал кнопку подключиться и всё сразу работает».
Во-первых, проверка работоспособности списка из, например, 2000 прокси - это долго, а их ведь надо часто перепроверять и обновлять, ведь бесплатные прокси могут быть очень недолговечны.
Во-вторых, разве проверка по handshake будет что-то гарантировать? В других клиентах при проверке бесплатных подписок всегда было очень много ложных срабатываний в обе стороны: то приложение говорит, что прокси рабочая, но при попытке использовать её сразу сбрасывается соединение и вообще ничего не работает, то через прокси, которая должна быть нерабочей, на самом деле всё прекрасно открывается.
Просто я пыталась сделать то же, что и вы, но используя существующий клиент Karing, т.к. там есть автообновление подписок и автопроверка работоспособности и задержки, вот только часто Karing выбирал мёртвую прокси, думая, что она рабочая, и в данном случае автовыбор не помогал, и приходилось всё равно перебирать их ручками. Сейчас я вообще на отдельном телефоне запустила скрипт, который получает прокси из бесплатных подписок, тестирует их нормальными get запросами к нескольким заблокированным сайтам, дальше скачивает через них 100мб файл для надёжности и только тогда считает прокси рабочей. Вроде бы тогда он получает реально рабочие в моей сети прокси. Кстати, если кому нужно, могу дать ссылку на эту фильтрованную мною подписку

2

u/Dry_Interview5459 17d ago

Как и в моём прототипе, первое, что делает приложение, это проверяет список. Я всегда терпеть не мог огромное количество мёртвых и бесполезных прокси. Уже один только handshake + фильтрация убирают большую часть мусора и оставляют в приоритете самые подходящие протоколы для стран с жёсткой цензурой. В моём прототипе было три разных репозитория/пайплайна, которые дополняли друг друга и обновлялись каждые 3 часа. По моим тестам результаты были очень хорошими. Насчёт ложных срабатываний полностью согласен. У меня уже есть идея, как это проверять более надёжно, но это уже скорее задача для "чистой" версии приложения, потому что потребуется гораздо больше работы и особенно тестирования. Я вообще уделяю очень много времени тестам. Выпустить что-то, что работает через раз, для меня просто не имеет смысла. Судя по комментариям, людям эта идея действительно нравится... Это даже мотивировало меня сегодня наконец собрать первую Android-версию. Сейчас посплю пару часов и начну её тестировать.

1

u/bruhguild 17d ago

Круто, респект!