Нанобороды тред. ИТТ обсуждаем необходимость сабжа, бургутим от бесполезности сабжа, реквестим ЦП в стегоконтейнерах, добавляем новые фичи всем харкачем, обсираем разработчика за си шарп, создаем раковые нанотреды, вайпаем как на дваче это поделие и собственноручно чистим вилкой мочи то там нет.
Моча, это сообщение для тебя! Данный тред не пиар другой бороды, а всего лишь скрипт для картинок, которые мы постим на харкаче!
простота формата нанопостов: хэш + текст сообщения = хэш (на который могут ссылаться другие нанопосты) отсутствие владельца, прав, уровней доступа, невозможность централизованной модерации или отключения наноборды отсутствие стандартизированного протокола распространения, в самой простой форме нанопост можно скопировать и вставить как текст паразитирование на существующих ресурсах в интернете и скрытом интернете вместо организации p2p-соединений и/или серверов (низкий уровень детектирования + эксплуатация чужих мощностей) поощряется помощь участникам и наноборде в виде ретрансляции чужих нанопостов (кроме огромных) клиенты для просмотра собирают все нанопосты воедино и формируют цепочки - так сохраняется логическая связь между нанопостами и отпадает необходимость во временных метках (подверженных фальсификации) клиенты для просмотра должны давать участнику возможность легко фильтровать нежелательный мусор, чтобы не видеть его и не распространять клиенты для просмотра облегчают участнику распространение своих и чужих нанопостов (кроме мусора) клиенты для просмотра ограничивают распространение слишком огромных чужих нанопостов, чтобы пресекать злоупотребление "трафиком" наноборды
Каждый нанопост обязательно ссылается на другой нанопост поредством хэш-кода. Хэш код 16-байтовый и выглядит как 32-символьный кусочек текста в шестандцатиричном текстовом виде.
var post = "00000000000000000000000000000000{Welcome to Nanoboard}" var hash = Sha256.hash(post).substring(0,32) // берём хэш в hex и отбрасываем всё кроме первых 32 символов console.log(hash) // результат: f682830a470200d738d32c69e6c2b8a4 Хэш считается с байтов utf-8 кодировки. В nboard этот пост и его хэш используются как "корневые" но это не обязательно. Теперь попробуем "ответить" на корневой пост.
function getHash(content) { return Sha256.hash(content).substring(0,32); } var answer2 = getHash(answer) + "Второй уровень." console.log(answer2) // результат: 77bb9e5d1a64facc551210862e2c6536Второй уровень. Вот так выглядят нанопосты, естественно, внутри можно ставить переносы строк и любые utf-8 символы. Теперь осталось только распространить их. По хэшам все связывается в цепочки. Сложно сказать что является тредом среди нанопостов. Определенно если на нанопост существует несколько ответов то с него можно начинать просмотр "треда". Начать разворачивание можно с любого уровня, это уже на плечах реализаций просмотрщиков Наноборды. В nboard можно разворачивать любые нанопосты кроме корневого, а можно просто просматривать только сам нанопост и его ответы (следующий уровень).
Наноборда берет начало с Анонимных Имидж Борд, Имидж означает наличие картинок. Хотя существуют чисто текстовые борды, наноборда такой не является потому как внутрь можно вставлять base64 изображений. В nboard это реализовано так: если в нанопосте встречается конструкция вида [img=.....] (где вместо точек - base64 строчка то всё это дело превращается в изображение. Кроме того nboard поддерживает разметку жирный, курсив, перечеркнутый, [sp]спойлер[/sp], подчёркнутый, [g]зелёный[/g].
На АИБ обычно можно свободно постить PNG-картинки. А в PNG-картинку можно вшить данные. В nboard используется подход (и, собственно, код) из этой статьи: http://blog.andersen.im/2014/11/hiding-your-bits-in-the-bytes/ Вкратце суть в том что информация размещается в нижних битах компонентов R, G и B каждого пикселя и это совершенно незаметно на глаз (разница между 24битным цветом и 21битным цветом с дизерингом (информациионный шум) по сути минимальна). Размер картинки после этого обычно увеличивается но не разительно. Информация хранится именно в пикселях, что позволяет скопировать картинку в буфер обмена, вставить в графический редактор, сохранить, скажем, в BMP а потом пересохранить в PNG - вшитая информация не пропадёт. Итак nboard берет некоторое количество свежих (по дате поступления на компьютер пользователя) постов, а также некоторое количество случайно выбранных постов за всё время. При этом избегаются скрытые пользователем посты, а крупные посты отправляются только если являются свежими.
Упаковка массива постов происходит следующим образом:
public static byte[] Pack(NanoPost[] posts) { List<byte> bytes = new List<byte>(); // количество постов (от 000000 до ffffff) (строчка в utf-8 байтах): bytes.AddRange(Encoding.UTF8.GetBytes(posts.Length.ToString("x6")));
foreach (var p in posts) { // количество символов (не байтов!) в нанопосте (включая родительский хэш): var len = p.SerializedString().Length; // тот же формат: от 000000 до ffffff (строчка в utf-8 байтах): bytes.AddRange(Encoding.UTF8.GetBytes(len.ToString("x6"))); }
foreach (var p in posts) { // utf-8 байты каждого поста по очереди без разделителей: bytes.AddRange(p.SerializedBytes()); }
// сжимаем результат gzip-ом return GZipUtil.Compress(bytes.ToArray()); }
Перед упаковкой в контейнер (после сжатия gzip-ом) применяется шифрование salsa20 по некоторому ключу (для Наноборды пока есть один общий ключ но дальше можно отделяться в отдельные зашифрованные Наноборды (что нежелательно но иногда может быть необходимо):
На этом пока что всё. Напомню, что PNG-контейнеры - не единственный возможный способ обмена нанопостами и различные АИБ - не единственное возможное место для паразитирования. Одна из экстремальных идей - запихивание нанопостов в QR-коды и разбрасывание/расклеивание этих QR-кодов в местах где их будет удобно считывать (и, собственно, наклеивать/разбрасывать). Так Наноборда сможет продолжить существование даже без интернета. Разумеется, вариант почти фантастический, но пример демонстрирует гибкость и ту самую неубиваемость Наноборды.
>>114622403 Можно стегоконтейнер запостить на нанобороде и тогда в ней будет пикоборода, если внутри нее еще постить стегоконтейнеры, то будет уже фемтоборода.
>>114623922 Я не из Пахомии. Но даже если бы был из неё, юзал бы впн. Веб 2.0 сайты не могут быть децентрализированными. Без модерации они очень хуёвые и ими невозможно пользоваться.
>>114624229 Там в коде полторы строчки, даже такой аутист как я понял, что ничего опасного, алсо, все нормальные люди запускают все фаилы из интернета на ВМ.
Что действительно выделяет Н. среди других АИБ? У каждой АИБ есть хозяин. Тот, кто поднял и оплачивает сервер, тот, кто нанимает модераторов и вводит новые правила (или отсутствие правил) модерации, тот, кто стирает базу или решает, что борду пора продать или отправить на покой. У Н. такого хозяина нет. Это меняет многое.
Значит ли это что никакой модерации на Н. нет? И да и нет. Ваш пост обязательно увидят. Но у себя каждый может этот пост удалить. Это позволит ему не участвовать в "хранении" и "распространении".
Как в Н. борятся с вайпами? Против действительно мощного вайпа никто не застрахован даже самые крупные борды. Но из-за технических особенностей провести такой вайп на Н. - будет значить провести вайп картинками на какой-то реальной АИБ. Во-вторых, из картинки читаются только первые N сообщений (больше сотни) - остальное считается чьей-то злой выходкой (программное обеспечение Н. знает, что оно не создает таких "жирных" картинок), максимальный размер поста тоже, разумеется, ограничен. В-третьих, у пользователя есть удобный способ быстро проигнорировать всю картинку со спамом одним кликом. В-четвертых, есть и другие инструменты такие как фильтр спама, куда можно занести часто повторяющиеся паттерны в вайп-постах. Возможно что-то появится еще. Но пока что этого хватает.
Были ли уже вайпы? Несмотря на низкую посещаемость борды - да, кто-то составил несколько картинок со спамом, созданных, вероятно, с использованием открытого исходного кода программного обеспечения Н. Добра этому человеку.
QR-коды, раскленные по городу - реальный способ передачи постов для Н.? Реальный, но не реалистичный в том плане что вряд ли найдутся желающие этим заниматься. Следует учитывать что в один код влезет лишь около 3 тысяч символов. Так что картинки придется сжимать еще сильнее.
>>114624909 А ты вдумайся. Вдумайся блядь. Карл. Сука. На i2p поднимет некий хуй борду ну оукеей. А потом этот хуй возьмет да и нахуй отключит её. И всё. И пиздык. Или посты потрёт. Или модерастов наймет да беспредел чинить будет. Ты думай немного головой.
>>114626011 Как-нибудь, я не знаю, но теги в музыке в вк сохраняются, это я точно знаю, и гифки в вк тоже не обрабатываются, т.е. можно в мета инфу типа тегов насовать много чего.
суть не столько в средстве сколько в идее наноборды. эта борда без сервера, без каких-то туннелей и шифрованных каналов. борда, которую невозможно уничтожить. ящитаю эту идею надо всячески развивать особенно в свете последних событий. ведь могут и и2п запретить.
как я вижу наноборду. наноборда это прежде всего люди:
А. сборщики. сборщик собирает (возможно, при помощи автоматического инструмента) все свежие подвергающиеся распаковке пнг-шки из типичных официальных тредов всех имиджборд мира. Б. мегарепостер. является также и сборщиком. отличается тем, что делает тематические паки и заливает их куда-нибудь. Б. репостер/постер. качает пак сборщика или делает свой пак (являясь сборщиком) и постит в одном из тредов на одной из борд попеременно то неизменённую картинку из пака, то картинку из пака, в которую поверх записано его собственное послание/файл. Г. ридер. качает (или собирает в качестве сборщика) пак, распаковывает и просто читает/смотрит посты наноборды. Д. вербовщик. привлекает людей на наноборду.
Наноборда будет преспокойно работать даже когда к каждому лично домой придет товарищ майор и пообрезает все кабеля и поразбивает все спутниковые тарелки и повырезает паяльником вайфай антенны и симкарт-слоты из телефонов. Главное чтобы фотик сука не забрал или камеру в телефоне (нужна качественная) не разбил. А суть вот в чем. Берешь принтерок, в QR-код пихаешь свой нанопост, печатаешь такие вот QR-коды. Идешь блядь клеишь их туда где: 1) не стоят а проходят 2) проходят часто 3) уже куча всего наклеено. В другие дни ходишь и тайком фотографируешь сие место. Дома распознаешь qr-коды со сделанных фоток. Там будут нанопосты. Впихиваешь их в базу и вуаля - наноборда живет. Без всякого интернета.
>>114621389 (OP) Какая-то ебала. То есть посты в картинках. Типа чтобы получить новые посты надо качать эти ебучие пикчи? Захламлять винт бесполезными пикчами с бесполезными постами лол?
ИТТ обсуждаем необходимость сабжа, бургутим от бесполезности сабжа, реквестим ЦП в стегоконтейнерах, добавляем новые фичи всем харкачем, обсираем разработчика за си шарп, создаем раковые нанотреды, вайпаем как на дваче это поделие и собственноручно чистим вилкой мочи то там нет.
Моча, это сообщение для тебя! Данный тред не пиар другой бороды, а всего лишь скрипт для картинок, которые мы постим на харкаче!