a random rus banner

/rus/ - Russian - Русскоязычный

На дереве почки, под ними грибочки, поставим тут точку или новую строчку?


New Reply on thread #81189
X
Max 20 files0 B total
[New Reply]

Index | Catalog | Banners | Logs
Posting mode: Reply [Return]


thumbnail of 314n.png
thumbnail of 314n.png
314n png
(39.65 KB, 742x458)



 >>/81192/
Плохо понимаю как такое возможно. Разве, что сервера физически находятся в раше (я же сам нет) и роскомпидор что-то опять тестирует хитровыебонное. Если так, то все это грустно и печально. Не хотелось бы такую старую борду терять. Столько истории там. Было бы охеренно если бы зой сделал бак БД в открытый доступ, только как до него теперь достучатся не понятно.

 >>/81193/
Можно было бы предположить, что дело в промежуточном кэшировании, но ведь эти команды, которые надо вводить на Пиначе, должны обрабатываются конечным сервером? Да и guest# при обновлении страницы меняется.

 >>/81189/
Я видел что творилось вчера... Обосратор наслал своих пидарков, и захуярил пинач, былы удалены все темы и было напичкано около 2000 сообщений куклобунта.... Я думал это конец... Но сегодня, когда я зашел к этому времени админ все почистил и вернул темы)) Я оч рад!


 >>/81225/
Знаешь парашу ejachan (ежчан)? Я еще помню, был лист борд, который они хотели уничтожить, но там не было пинача. Скажу от своего лица, что я видел: домен 314.org был недоступен, ошибка 500. Я зашел на 314n.0chan.one. Я там раньше не бывал и, думаю, это резервный домен. Ну, кароч, там было более 2000 тем с однотипным предложением. Примерно так оно выглядело: «Ежчан, борда куклобунта, заходите на нашу площадку». Это либо оператор («обосратор») наслал своих пидорков, или они сами завайпали.

 >>/81232/
> 314n.0chan.one
Это просто клон от рандомного анона. Админ пинача выкладывал свои сурсы в открытый доступ тута: https://github.com/4eckme/314n 
Кто-то просто поднял клон и захламил БД. Так что этот сайт к пиначу отношение имеет исключительно косвенное.

thumbnail of hermies_300x300.png
thumbnail of hermies_300x300.png
hermies_300x300 png
(33.22 KB, 300x300)
Итак поскольку пинач все еще не встал, приходится рассматривать вариант, что он все же уже и не встанет. Там хранился архив сообщений за последние 13 лет, т.е. с 2012-го да. Конец 0х и начало 10х это золотое время борд. Благо я делал скрепинг всего сайта время от времени и у меня есть почти все сообщения до января 25го года, пусть и не в самом лучшем формате. Но, хочется, чтобы такие проекты жили вечно или почти вечно, независимо от хоста. В связи с чем я погрузился в мир p2p проектов дабы узнать как с ними обстоит сейчас дело. Я намеренно не смотрю в сторону tor и i2p площадок, т.к. тут проблема не столько в цензуре, сколько в ненадежности одного единственного сервера. Тем более, что хостинг BD пинача не стоит ничего. Весь дамп сообщений за все время его существования занимает менее 8 mb в pain-text формате. Тут подход "каждый юзер - хост" напрашивается сам собой.

Первый протокол который попался мне на глаза SSB (Secure Scuttlebutt) - достаточно интересная идея, которая также подразумевает хранение всех данных локально, где каждый пир лишь информирует другие пиры о том, какие данные он хранит. Протокол позволяет много всего, наверное даже слишком много, в том числе прямые засекреченные сообщения от одного пользователя другому, которые тем не менее хранятся сразу у всех пользователей. На протоколе работает Manyverse - соц. сеть которая больше мертва чем жива, хотя и функционирует. Автор протокола уже давно ушел от его разработки, т.к. с ним было слишком много проблем и перешел к разработке более продвинутого протокола PZP, который впрочем тоже не взлетел. Из рабочих проектов на протоколе, есть только демка совместной рисовалки (https://codeberg.org/pzp/zooboard) которая обновлена последний раз 11 месяцев назад. В общем, к сожалению оба протокола интересны лишь как референсы, чем как рабочие платформы на которых можно что-то построить. Как я понял, самая большая проблема это необходимость хранить все данные (включая медиа файлы) локально, что приводит к раздутию места которое потребляется на девайсе. Плюс менеджмент пользователей. Для текстовой анонимной борды обе этих проблемы не существенны.

Помимо SSB, тот же автор (вроде бы) занимается разработкой https://p2panda.org/ и https://earthstar-project.org/ - оба проекта выглядят крайне интересно с точки зрения идеи, но как они именно работают еще стоит вникнуть и возможно из них тоже получится вытащить что-то полезное.

У меня есть очень смутное представление как примерно можно было бы все организовать, причем даже так, чтобы борда могла работать сугубо offline. Ведь все что нам нужно это передать текущее состояние борды от одного человека другому и предполагая, что каждый может сверить изменения и принять только валидные, это можно организовать через простую передачу данных (вплоть до коллекции файлов и папок которые имитируют BD борды) на флешке в условиях тотальной цензуры и отсутствия свободного интернета.

Нашел еще такой протокол как Nostr - гораздо более простая и успешная версия SSB. 
https://youtube.com/watch?v=Czkv54pQfTI 
https://youtube.com/watch?v=OGF7ysOxqvg
 - краткое объяснение работы протокола.
 
На нем уже работают достаточно много  соц-сетей, в основном так или иначе связанных с крипто (примеры: https://primal.net/, https://iris.to/). Есть даже попытка сделать аналог форчана поверх этого протокола:  https://4ochan.org/. Однако есть минус который мне лично очень не нравится. Для его функционирования нужно запускать релейные сервера, которые распределяют данные. Да это намного лучше одного централизованного сервере, но когда каждый юзер может совершенно без каких-либо проблем хостить весь сайт со всеми данными, зачем лишние усложнения и точки фейла? К тому же вряд ли, даже если удастся запустить такой проект, у него будет очень уж большая аудитория, а значит и релейных серверов будет крайне мало, что опять возвращает нас к оригинальной проблеме.

Но вообще штука очень хорошая. Я уже вижу десятки идей как можно было бы применить её для других проектов. Картинка начинает складываться. Завтра попробую описать все подробнее, если будет голова свежая.

 >>/81344/
Протоколы фигня, можно и файлами обмениваться зашифрованными если очень хочется. 
А вот людей идейных - нет. Да даже тех, кто хотел бы просто поделиться контентом бесплатно - почти не осталось...

thumbnail of Screenshot from 2025-05-24 00-06-58.png
thumbnail of Screenshot from 2025-05-24 00-06-58.png
Screenshot from... png
(123.08 KB, 1167x687)
https://youtube.com/watch?v=t-40158eRqo - Вот еще один очень крутой рассказ от создателя оригинального твиттера про Nostr. Один из очень мощных мотиваторов использовать платформу которую они построили (primal.net) это возможность посылать другим членам сообщества “zaps”, но в отличии от телеги которая так и не смогла, это не очередной говнокоин а самый что ни на есть оригинальный биткоин, который передается через lightning network, за счет чего комиссии практически нулевые. Не смотря на то, что эта идея далеко не новая, все остальные платформы пытались нажиться на доп. комиссиях и в итоге погорели, тут же есть шанс на реальную массовую адаптацию. Я открыл для себя целую кроличью нору с этим протоколом о существовании которой я даже и не подозревал всего пару дней назад. Но это ладно.

Касательно борды. Набросаю пока свои мысли, чтобы где-то их зафиксировать, а также может кто-то добавит свои идеи. Одна из самых больших проблем современных борд в том, что если хост уходит и закрывает борду, комьюнити теряет всю свою историю. Так было с двачем, нульчаном и вот теперь с пиначем. В случае пинача это особенно больно, ведь треды там были безразмерные и длились десятилетиями. Можно было забить на борду, вернутся через год, прочитать все что за этот год накопилось, ответить и забыть еще на год. Это достаточно магический способ общения, который трудно передать словами. 

В идеале хотелось бы иметь что-то, что было бы на практике не убиваемо, не цензурируемо и могло работать даже в условиях Северной Кореи, к которым сейчас идет как Российский интернет, так и общемировой.

Как правильно отметил  >>/81347/ все, что нам нужно, это возможность обмениваться файлами. Причем шифрование тут даже не обязательно, борда по умолчанию публичная, доступная для чтения любому желающему. Поэтому достаточно иметь некоторую структуру которую можно передавать друг-другу в plain-text с таким набором правил (тот самый протокол) который бы позволял имитировать работу борды на сервере.

И тут важно делать все максимально простым образом. Как говорил Терри Дэвис - “An idiot admires complexity, a genius admires simplicity”. Самый простой вариант который пришел мне в голову и отвечает всем заявленным потребностям следующий: Представим структуру папок как изображено на приложенном рисунке и хранится на компьютере каждого пользователя.

Тут папки в корне имитируют отдельные борды вроде ‘Random’, ‘Development’,  ‘Video games’ и т.д. Внутри этих папок лежат другие папки - треды и внутри уже этих папок отдельные сообщения - текстовые файлы в формате .md. Markdown выбран потому, что является устоявшимся и удобным форматом отображения текстовых данных с достаточно большими возможностями форматирования.

В начале каждой папки и файла идут данные в скобках - таймштамп в читаемом формате и рандомные 4 символа из сета a-zA-Z0-9. Эти данные необходимы для возможности простой сортировки по дате создания и избежания коллизий, но про это позже.

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

Помимо папок с сообщениями, есть две специальные папки - ‘_hashes_’ и ‘.tracker’. ‘_hashes_’ - хранит хеши всех файлов пользователя. Когда пользователь добавляет новые сообщения или создает новые борды/треды, он должен запустить ‘commit.py’ чтобы эти хеши обновить. После этого он может запустить ‘broadcast.py’ и начать раздавать свою версию борды через p2p сеть, которую можно реализовать поверх libp2p. При этом будут раздаваться все файлы из root, за исключением папки ‘.tracker’.

Папка ‘.tracker’ хранит различные версии борды полученные от других пользователей сети. Каждая версия находится в своей саб-директории для которой задано произвольное имя. Такую директорию можно создать вручную и положить туда версию борды от другого пользователя запустить скрипт ‘diffs.py {folder_name}’ и получить разницу между своей версией боды и версией этой директории. В этот же момент можно либо принять изменения, либо отклонить. Предполагается, что пользователи принимают только те изменения которые заранее не нарушают установленные правила протокола. Для части нарушений, можно ввести автоматическую проверку внутри самого ‘diffs.py’.

Когда же пользователь подключен к интернету, он может видеть раздачи других пользователей запустив скрипт ‘connect.py’. В таком случае подпапки в ‘.tracker’ будут созданы автоматически, и автоматически будет загружена папка ‘_hashes_’ для каждой из версии. С помощью этой папки можно посчитать разницу между всеми доступными версиями борды и выбрать ту которая отличается от других менее всего. Такая версия будет считаться наиболее валидной (the most canonical) и именно её следует принимать для рассмотрения в первую очередь. В определенный момент, возможно даже полностью автоматическое принятие.

Таким образом возникает натурально возникающий консенсус (emerging consensus) который ведет к итоговой согласованности (eventual consistency) всех нод в сети!

Теперь про рандомные ID (RID) на концах папок и директорий. Как было сказано выше, они нужны, чтобы избежать коллизий когда два разных пользователя создают директорию или сообщение. Для этого используются символы ‘a-zA-Z0-9’ из чего получается пространство в 62 символа, при условии что выбор делается рандомно, вероятность коллизии 1/62^4 на секунду времени, чего более чем достаточно чтобы быть уверенным, что два человека не создадут файл (сообщение) или папку (борду/тред) с одинаковым именем. Помимо этого эти 4 символа могут быть использованы как ID треда/сообщения. Это особенно полезно, учитывая, что никакого порядкового индекса сообщений быть не может в силу распределенной природы борды.

Ссылка на сообщение может выглядеть так:
>  >Kqcw

Ссылка на сообщение в другом треде:
>  >>Me1a>>Kqcw

Представив, что тред максимально имеет 10000 сообщений, вероятность коллизии 1/62^4 * 10000 ~ 0.06% чего должно быть достаточно. Та же логика действует в отношении коллизий между RID отдельных тредов.
 
Для того, чтобы избежать коллизий произведенных намеренно (так как пользователь может задать произвольные символы в том числе намеренно и уже использованные ) при детекции коллизий, скрипты должны автоматически эти изменения отклонять.

Если у файлов единый путь, но отличаются хеши, показывается разница между файлами через библиотеку difflib. Это в основном нужно лишь для коллективной доработки скриптов, т.к. сами сообщения должны приходить лишь как новые файлы. Удаление файла (сообщения) возможно если все ноды просто удалят его из своих репозиториев. Удаленные файлы могут быть также помечены в _hashes_, чтобы не принимать их повторно. Если сообщение существенно исправлено, такое изменение стоит сразу отбрасывать как не валидное. Возможно, есть смысл допускать лишь минорную коррекцию орфографии в сообщениях.

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

Начал пилить реализацию распределенной борды, получилось сделать CLI который вполне добротно отрабатывает основной функционал борды - создание разделов, тредов и сообщений. Начал и p2p функционал пилить, но тут пошли трудности. Оказалось py-libp2p не поддерживает ни bootstrap ноды, ни mDNS, DHT. Соответственно автоматическое обнаружение пиров не доступно даже в локально сети. NAT Traversal тоже нет, так что даже создать соединение будет большой проблемой. Альтернатива это либо где-то делиться своими IP:PORT (например через чаны), либо иметь централизованный сервер который раскидывает информацию о портах. И то и другое говно, а не решение, т.к. полностью убивает всю суть децентрализованной борды. 

После некоторого ресерча нашел https://github.com/robertsdotpm/p2pd который закрывает основные болевые момент - поиск пиров и NAT Traversal. Все достаточно абстрагировано, чтобы пользоваться p2p без лишних проблем. Но код все равно получается достаточно сложным, благо есть AI который заметно помогает со всем этим разобраться. Взял DHT BitTorrent’а за основу, размещаю на нем канал для обмена данными нод. По идее, пока есть торренты, будет работать и борда. Получается отработать подключение к DHT, да и вообще вроде бы p2p весь отрабатывается как надо, ноды видят себя, но гадство не друг друга. 

Думаю на сегодня этого хватит.

 >>/81374/
На нульняне тоже делают распределенную борду.
http://nullnyanvapwq3ou4gbc62y26uiggj5ztbur7mzxrnjhfwxu43jbxtqd.onion/n/7571
Федерализация борды
Возможность выкачивания открытой части борды целиком (и/или её указанных досок) копией её движка. После этого выкачанные доски включаются в slave-режиме, т.е. для них вторая борда становится прокси-сервером первой, с помощью которого можно постить на первую борду и получать с неё обновления. На второй борде могут быть запилены свои доски, которые могут быть добавлены в slave-режиме на первую. При потере связи с master-бордой доска становится доступна в режиме только чтения.



Что с движком эндчана? Фиксить баги собираются?
На magrathea стоит форк jschan. Ничего не понятно.
Какие планы у админов?






thumbnail of 314n_p2p.png
thumbnail of 314n_p2p.png
314n_p2p png
(287.95 KB, 1684x1241)
Заработало. Ноды друг друга видят, при этом ‘node discovery’ проходит достаточно быстро за счет использования "Rendezvous" DHT ключа. Надо еще сделать чтобы ноды отправляли друг другу свой список известных нод и умели принимать его. Тогда вся сеть будет доступна практически мгновенно после обнаружения первой рабочей ноды. Дальше обмен данными из папки ‘_hashes_’ и подгрузка новых/измененных данных. Ну и дальше как-нибудь визуализировать новые сообщение внутри TUI, команды для принятия/отклонения сообщений, бан нод которые спамят сеть, если такие будут и так далее. Но суть в том, что до первого рабочего прототипа осталось совсем немного функционала допилить. Самое сложное уже работает. Правда еще не знаю на сколько хорошо работает NAT Traversal, т.к. нет возможность сейчас его протестировать, но надеюсь, что в P2PD он идет достаточно мощный уже из коробки. 

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


 >>/81375/
Не знаю всех деталей, но 

> Возможность выкачивания открытой части борды целиком (и/или её указанных досок) копией её движка. После этого выкачанные доски включаются в slave-режиме, т.е. для них вторая борда становится прокси-сервером первой, с помощью которого можно постить на первую борду и получать с неё обновления. На второй борде могут быть запилены свои доски, которые могут быть добавлены в slave-режиме на первую. При потере связи с master-бордой доска становится доступна в режиме только чтения.

Звучит, как централизация с вундервафлями. Что в прочем не плохо. Просто это другой подход. В том, что я пилю все ноды имеют одни и те же возможности и функции. По факту у каждого есть своя локальная версия борды и она раздается в сеть. Другие ноды видят изменения и могут либо принимать их либо нет. Получается, что каждая нода и постер, и модератор, и хост. Полностью одноранговая сеть. Ты можешь например удалить все разделы или захламить всю борду мусором, вот только это все будет только у тебя, другие ноды просто не примут твои изменения. 

 >>/81376/
Как я понял, основная разница в его простоте. Тут лучше послушать толки на ютубе, они достатчно хорошо все объясняют. Но чем он конретно лучше ActivityPub, я точно не скажу, т.к. не знаю как работает последний.

 >>/81377/
Хз, я же момокрокодил вообще. Меня расстроило, что пинач упал. Хочу сделать так, чтобы он больше не падал.

thumbnail of 2342.png
thumbnail of 2342.png
2342 png
(188.43 KB, 739x1296)
Анон, что происходит с бордами? Что они как мухи мрут последнее время? Буквально пару месяцев назад все они еще работали.

 >>/81408/
>  Меня расстроило, что пинач упал. Хочу сделать так, чтобы он больше не падал.

Что значит «упал» и что значит «больше»? Пинчок как был в рид-онли, так и продолжает оставаться.
 >>/81975/
Парашеводство – занятие утомительное и безблагодатное. Вот весь секрет.

 >>/81975/
По поводу alivechan, он закрылся потому что открылся ежач. А это была борда-убежище. Так админчег говорил. А на счет остальных не знаю.



 >>/81987/
Ежач у меня тоже не открывается. Ни ejchan.hk, ejchan.cc.

 >>/81976/
Какой-то странный рид-онли. 314n.org выдает 500 регулярно, 314n.ru иногда открывается, но команды не работают. Консольный клиент тоже не работает.

 >>/81975/
> chan.today
Открылась и сразу закрылась.
> 0chan.1chan.cyou
> 1chan.cyou
Домены заабузили, а новые адреса админ навигатора не добавил. Зеркала в даркнете работают. Новые ссылки в клирнете 0chan.club 1chan.0chan.club (путаница, поддомены поменялись)
> alivechan.ch
Открывалась на время закрытия ежача, сейчас заглушка по адресу alivechan.pw. Ещё на том домене сейчас радио media.alivechan.pw/aliveradio.php
> 0141chan.org
Это борда-спутник 014chan.org. На оригинальной борде что-то сломалось и она разделилась на две. Базу постов 0141chan.org переместили на 014chan.org, а оригинальную сохранили на втором домене 014chan.org - bulochka.org.
> gensokyo.4otaku.org
Открывается.
> 314n.org
Открывается и есть сообщения 10 часов назад.
 >>/81998/
> Ежач
Работает по адресу ejchan.site. Из-за преднамеренных абузеров борда сейчас по инвайтам. Надо писать в телеграм админу.




Post(s) action:


Moderation Help
Scope:
Duration: Days

Ban Type:


0 replies | 0 file
New Reply on thread #81189
Max 20 files0 B total