А не попытаться ли...
Apr. 4th, 2017 03:52 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
... Оживить проект cheshirenet?
Три года назад как-то ни у кого не возникло желания поучаствовать в проекте. Потрепались, обсудили почти согласовали протокол, и успокоились на этом.
Вдруг сейчас, поскольку потребность в системе коммуникации, устойчивой ко всяким стихинйным бедствиям, включая злонамеренные действия людей, растет, у кого-то появится желание поучастововать.
Базовых идей в cheshirenet было три
1. Оффлайновый веб - то есть каждое устройство несет в себе копию интеренсного владелцу контента, внутренне провязанную гиперссылками, и по возможности синхронизирует ее с другими копиями - можно через интернет, можно через ad-hoc wi-fi между двумя мобильными устройствами и вообще как угодно.
2. Полный контроль каждого пользователя за принадлежащим ему узлом. Что хочет хранит и передает дальше, что хочет - не передает. Весь контент подписан, чтобы исключить его искажение на промежуточных узлах.
3. Ключ подписи представляет только самого себя. Т.е. сгенерировав новый ключ подписи, пользователь создает новую сетевую "личность", псевдоним. Никнеймы пользователи себе не придумывают, они алгоритмически выводятся из открытого ключа. (но сгенерированное имя вам не понравилось, вы можете сгенерировать себе другой ключ подписи).
Про сетевую личность известен только массив контента, подписанный этим ключом. (можно и рекомендуется иметь "двойника" - альтернативный пароль, при вводе которого в ваш узел чеширнета возникает другая сетевая идентичность, ни в чем кроме постинга фоточек котиков не замеченная).
Три года назад как-то ни у кого не возникло желания поучаствовать в проекте. Потрепались, обсудили почти согласовали протокол, и успокоились на этом.
Вдруг сейчас, поскольку потребность в системе коммуникации, устойчивой ко всяким стихинйным бедствиям, включая злонамеренные действия людей, растет, у кого-то появится желание поучастововать.
Базовых идей в cheshirenet было три
1. Оффлайновый веб - то есть каждое устройство несет в себе копию интеренсного владелцу контента, внутренне провязанную гиперссылками, и по возможности синхронизирует ее с другими копиями - можно через интернет, можно через ad-hoc wi-fi между двумя мобильными устройствами и вообще как угодно.
2. Полный контроль каждого пользователя за принадлежащим ему узлом. Что хочет хранит и передает дальше, что хочет - не передает. Весь контент подписан, чтобы исключить его искажение на промежуточных узлах.
3. Ключ подписи представляет только самого себя. Т.е. сгенерировав новый ключ подписи, пользователь создает новую сетевую "личность", псевдоним. Никнеймы пользователи себе не придумывают, они алгоритмически выводятся из открытого ключа. (но сгенерированное имя вам не понравилось, вы можете сгенерировать себе другой ключ подписи).
Про сетевую личность известен только массив контента, подписанный этим ключом. (можно и рекомендуется иметь "двойника" - альтернативный пароль, при вводе которого в ваш узел чеширнета возникает другая сетевая идентичность, ни в чем кроме постинга фоточек котиков не замеченная).
no subject
Date: 2017-04-05 11:30 am (UTC)Т.е. если мы узнали что есть пир-хост, на нем предоставляется тот или иной набор сервисов, на таких-то портах, определенной версии протокола и т.п. Отчасти это решается через upnp, но имхо решение хуже проблемы.
1. Ок, "дистрибуция". Термин понятен. Обменялись хотелками и данными в две стороны. Видимо, из того, что заранее подготовлено или быстро по запросу можно отдать. Это, кстати, не самая легкая задача - пересечь два списка большой длины.
2. У пользователя есть более-менее два основных сценария - "читать" и "публиковать". В любом разе, что бы пользователь не делал, если он что-то читает, от него идут посылки об этом. Аналогично - если что-то публикует. Если пользователь читает - он может (вместо или вместе лайков) задать и режим устаревания для документа. если что-то публикует - аналогично.
no subject
Date: 2017-04-05 11:42 am (UTC)Мы исходим из того, что процессорная мощность у нас намного превосходит по производительности канал связи. И это для попарной синхронизации так. Поэтому мы можем спокойно специфицировать что мы отдаем peer-у все, что у нас есть, а у него нет (кроме того, чего ему не надо).
rsync с такой задачей прекрасно справляется. А у нас вообще на zsync похоже получается, поскольку content-addressable storage и хэши всех сообщений посчитаны заранее.
Посылки от пользователя, что он что-то читает, не уйдут дальше его собственного узла. Вот если он чего-то тэгом пометил или лайкнул, тогда да - формируется информационный объект за его автороством, который пойдет распространяться по peer-ам. И, кстати, возможно инициирует и передачу других объектов по каким-то линкам.
Например, допустим, вы подписаны на "все новые книги в жанре трансутопия".