LINUX.ORG.RU

Возможна ли технически социальная сеть без серверов?

 ,


3

4

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

  • Если пользователи А и Б хотят общаться, компьютер пользователя А соединяется с компьютером пользователя Б по TCP, и никакой посредник (сервер) в этом деле не участвует.
  • Каждый пользователь хранит свои посты и чужие посты, которые считает хорошими, на своём компьютере (а не на сервере).

Я считаю, что она возможна. Не вижу препятствий. Конечно, хотя бы один из А и Б должен иметь глобальный IP-адрес. Эта проблема экономическая, а не техническая.

Существование такой сети было бы экспериментальным доказательством, что я прав. Однако все примеры, которые я знаю (Diaspora*, GNU social, Movim, the Matrix protocol), имеют сервера. Поэтому закрадывается подозрение, что у меня уже маразм и я не вижу очевидной причины, почему я неправ.


Ответ на: комментарий от anonymous

А толку? Там внутри та-же дрянь на js будет.

Мне — лишь бы ехало. Шашечки нафиг не сдались :)

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Диаспора тащит для себя вебсервер, который ещё надо настраивать, а этот вебсервер видимо демон ssh.
Далее ха-ха-ха.
В общем тему надо хоть через строку, но смотреть целиком, иначе не смешно будет.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от torvn77

Диаспора тащит для себя вебсервер, который ещё надо настраивать, а этот вебсервер видимо демон ssh.

У тебя Linux был без ssh? o_O И что там настраивать? Он «из коробки» безопасен.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Мало что там нечего настраивать, пользователь то у дивспоры был обычный :)

torvn77 ★★★★★
()
Ответ на: комментарий от KRoN73

Это готовый плагин. Multiuser. Переименовываешь plugins/diabled-Multiuser в plugins/Multiuser и он активируется.

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

У меня не получается. Ничего публично не выставляется, но зато вылогинивает вот как здесь https://github.com/HelloZeroNet/ZeroNet/issues/373

В чём достоинство этого плагина?

sudo
()
Ответ на: комментарий от sudo

В чём достоинство этого плагина?

В предоставлении доступа к ресурсам ZeroNet из обычного Интернета. Организация прокси (гейта). На реальную многопользовательскость всем пофиг, ИМХО :) Ибо кому нужно, поднимет свою ноду ZeroNet на своей машине.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Знаешь как сделать в Talks-ах сгруппированные топики? Как они в главном зеронетовском форуме так делают? (там, где иконка сдвоенная)?

sudo
()
Ответ на: комментарий от sudo

Знаешь как сделать в Talks-ах сгруппированные топики?

В свойствах родительского топика ручками (другого способа не знаю) пишем атрибут "type": "group" и перегружаем БД.

Но, ИМХО, это неверный подход. ZeroNet поощряет фрагментацию, так что вместо подфорума лучше клонировать отдельный форум. ИМХО :) Так, во-первых, пользователи смогут подписываться только на интересное, во-вторых, лимиты будут не общими, а «пофорумными».

KRoN73 ★★★★★
()

Технически возможно всё! А вот будет оно востребоанно массами или нет - это правильный вопрос.

anonymous
()
Ответ на: комментарий от sudo

Что такое ZeroMe Hub, причем разных цветов?

А фиг его знает :) Это часть ZeroMe, с которой я не разбирался. Кроме обычных данных, которые каждый постит и на которые подписывается селективно, есть ещё технология Merger sites, когда данные разных зайтов сливаются вместе. Возможно, хабы — это как раз такие объединения. Но, повторюсь, не в курсе.

К какому из них присоединяться?

По-моему, пофиг.

KRoN73 ★★★★★
()
Ответ на: комментарий от system-root

чё нашел: на JS

Да, щупал в своё время. Задумка интересная, но сейчас гвоздями прибита к фиксированному доменному имени и к gmail :)

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Вот мне и интересно, что за данные сливаются вместе. И самое главное - что это даёт?

sudo
()
Ответ на: комментарий от KRoN73

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

sudo
()
Ответ на: комментарий от sudo

теперь у меня совершенно другой аккаунт,ID тот же, а аккаунт другой. Я могу с него писать в своём Zerome, но с новым именем.

Имя, соответствующее ID не связано непосредственно с ZeroMe или иным приложением. Это результат работы ZeroName. После регистрации там нужно сохранить записанный в users.js блок «certs» — там прописано auth_user_name и все ключи, нужные для его подтверждения. Соответственно, при заведении своего аккаунта на другой машине нужно их копировать. При авторизации на любой машине можно также вводить сохранённый auth_privatekey на запрос браузера.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Нет, я не заводила ничего на другой машине. Кликнула на один зайт, DarkZeroMe, он мне предложил смержиться с одним из хабов. Я выбрала и получила аккаунт, совершенно новый, хотя ZeroID остался тот же. Например, sudo@zeroid.bit с именем Sudo. В своём первоначальном хабе я изменила имя на Sudo123. Теперь же получилось, что новый хаб мне автоматически дал имя Sudo. Под ним я могу писать в своём ZeroMe, но под именем Sudo123 уже нет! Вот я хочу отмержиться от нового хаба и вернуть своё прежнее честное имя. Короче, без бутылки не обойдёшься.

sudo
()
Ответ на: комментарий от Deathstalker

Не соответствует критериям по той же причине, по которой не соответствует Diaspora*: в Friendica есть сервера.

beroal
() автор топика
Ответ на: комментарий от xdimquax

Не совсем. Преимущество, которое я подразумевал, да и высказал потом, — независимость. Это соответствует «децентрализация» и «открытый исходный код». Хозяин сервера контролирует контент пользователей, метод общения, и даже социальные связи. Контроль социальных связей, например, можно реализовать, не пропуская некоторых сообщений от одного пользователя к другому. Многие этого просто не заметят. Если заметят, можно сослаться на глюки в программе или на сервере.

Анонимность, насколько я понимаю, фундаментально конфликтует с социальной сетью. Чем больше человек общается, тем больше информации о себе раскрывает. Когда пользователь заводит много аккаунтов, это тоже в некотором роде противоречит задачам социальной сети, так как разрушает социальный граф. Придётся выбрать, или социальная сеть, или анонимность.

Приватность — плохо представляю, что это значит. Если это синоним анонимности, то смотри выше. Если privacy, то это противоречит задачам социальной сети. В социальной сети распространение информации облегчено. Ну, технически запретить распространение информации вообще не возможно, то есть получатель конфиденциального письма все равно может его распространить. На централизованных серверах privacy добиться легче, так как загруженная информация хранится в веб-браузере. Если удалить сообщение с сервера, считайте, оно удалилось с компьютеров пользователей (с временем кэш очищается). В общем, от домохозяек защитились. ☺ А лучше используйте электронную почту.

Шифрование предоставляет и Фейсбук, так как связь с сервером по TLS. Да буквально все предоставляют шифрование. Я бы не сказал, что это уникальная фича.

beroal
() автор топика
Ответ на: комментарий от ravdinve

Вы дочитали до конца начальный пост? 😲

beroal
() автор топика
Ответ на: комментарий от crutch_master

Да, это проблема. Скорей бы уже начали использовать IPv6.

beroal
() автор топика
Ответ на: комментарий от ZenitharChampion

Код серверной части проекта написан…

То есть сервера есть.

beroal
() автор топика
Ответ на: комментарий от sudo

Backup — наше всё. 😉

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

beroal
() автор топика
Ответ на: комментарий от KivApple

пользователь ушёл спать и все его посты стали недоступны

Каждый пользователь хранит свои посты и чужие посты, которые считает хорошими, на своём компьютере (а не на сервере).

beroal
() автор топика
Ответ на: комментарий от KivApple

никакой сервер на них не поднимешь (батарейка слишком быстро сядет)

Неужели всё настолько плохо? (Я не специалист.)

beroal
() автор топика

В аналогичной дискуссии на Reddit прочитал о следующем трюке: установить на личный компьютер сервер для социальной сети с серверами, и таким образом обрести независимость. Пожалуй, это французское извращение для фанатов веба. ☺

beroal
() автор топика
Ответ на: комментарий от KRoN73

Мне показалось, вы с ней знакомы. GUI только веб? Технического описания, как всегда, нет? Посты подписаны ЭЦП?

beroal
() автор топика
Ответ на: комментарий от beroal

Анонимность, насколько я понимаю, фундаментально конфликтует с социальной сетью.

Тут важно не путать анонимность и персонифицированность. Для свободного и безопасного общения собеседник может быть не анонимным, но он не должен ассоциироваться с реальным гражданином. Этот вопрос решён в очень многих сетях, в т.ч. в ZeroNet и RetroShare. У тебя есть ключ, которым ты подписываешь свои сообщения и через который реализуются все социальные связи. То есть ты не анонимен, а являешься конкретной виртуальной личностью. Но эта личность никак не раскрывает тебя как конкретного реального человека (пока это не вскроется иными способами).

KRoN73 ★★★★★
()
Ответ на: комментарий от beroal

GUI только веб?

В нынешнем виде — да. Хотя, если у кого-то будет желание, написать клиент под любую платформу не проблема, архитектура там очень простая и код, служащий для обмена данными в сети и код интерфейса там развязаны. Собственно, в нынешнем виде для сетевого p2p-обмена используется бэкенд на Питоне, а фронтенд написан на web/js.

Технического описания, как всегда, нет?

Есть, вроде бы. Но я не смотрел :) Там настолько простая архитектура (на JSON), что для создания своих бот-приложений даже не потребовалось описание искать. Просто берёшь и работаешь с JSON (bash+php в моём случае), а весь обмен на себя берёт ZeroNet-бэкенд на Питоне :)

Посты подписаны ЭЦП?

Да. Каждый зайт (zero-site, zite) содержит подписанную информацию. Там есть данные, подписанные создателем зайта. Например, посты блога или сам форум как структура. Есть — данные, подписанные пользователями (комментарии, топики, постинги — что угодно). И есть фронтенд, который из этих данных собирает страницу в браузер.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Технического описания, как всегда, нет?

Есть, вроде бы. Но я не смотрел :) Там настолько простая архитектура (на JSON), что для создания своих бот-приложений даже не потребовалось описание искать.

Я же потому и спрашиваю про техническое описание, чтобы не определять характеристики экспериментально. Эксперименты отнимают слишком много времени. Я уже наигрался с Diaspora*.

beroal
() автор топика
Ответ на: комментарий от KRoN73

Тут важно не путать анонимность и персонифицированность.

Так что из вышесказанного анонимность, а что персонифицированность? ☺ Я согласен, что важно различать нюансы. Никогда раньше не встречал специальных терминов для этого. К сожалению, авторы программ рекламируют расплывчатую «анонимность».

beroal
() автор топика
Ответ на: комментарий от beroal

Эксперименты отнимают слишком много времени.

У меня в подобных случаях наоборот :) Когда структура простая и наглядная, то с ней просто берёшь и начинаешь работать. Искать и читать документацию (если она есть) — намного дольше получается.

KRoN73 ★★★★★
()
Ответ на: комментарий от beroal

Так что из вышесказанного анонимность, а что персонифицированность? ☺

Я для себя так считаю:

Анонимность — это когда автор неизвестен. Абсолютно. Т.е. ты не можешь [без деанонимизации] определить, написаны две анонимки одним анонимом или разными.

Персонифицированность — привязка виртуальной личности к реальной.

К сожалению, авторы программ рекламируют расплывчатую «анонимность».

Часто под анонимностью называют только отсутствие персонифицированности, но вполне считают информацию, для которой известна привязка к какой-то виртуальной личности. Но это идёт вразрез с традиционным пониманием анонимости. Анонимное — это как бы ничьё :)

KRoN73 ★★★★★
()
Ответ на: комментарий от beroal

Придётся выбрать, или социальная сеть, или анонимность.

Под анонимностью я подразумеваю, что «все видят, что я написал, но определить кто я — невозможно». В этом смысле, ЛОР и анонимные имиджборды не анонимны, т.к. админ, при желании, может взять за яйца любого анонимуса.

В социальной сети распространение информации облегчено.

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

Шифрование предоставляет и Фейсбук

Там шифрование только от клиента до сервера, сервер всё равно может прочитать, что написал один пользователь другому. Надо, чтобы end-to-end шифрование было между отправителем и получателем.

xdimquax ★★★★
()

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

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

А если у тебя анальный зонд, то уже всем становится насрать - есть там сервер или нет. Решишь эти проблемы - будет тебе, а не решишь - не будет.

shielcody
()
Ответ на: комментарий от shielcody

Проблема в поиске васи петей и петей васи. Т.е. при старте у тебя в любом случае будут доверенные ноды, да и после старта.

Это проблема f2f-сетей, типа RetroShare. В теме выше уже обсуждали, ЕМНИП (или в параллельной).

А далее очередная проблема с идентификаторами. Если ты будешь хранить всё закрыто - вася не узнает как написать другану пети, а если открыто - об этом узнают все.

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

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Это проблема f2f-сетей, типа RetroShare. В теме выше уже обсуждали, ЕМНИП (или в параллельной).

Это проблема любой сети.

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

Проблема в получении васей твоего ключа. Или ты хочешь личную инфу хранит открыто?

shielcody
()
Ответ на: комментарий от shielcody

Это проблема любой сети.

ZeroNet, SSB Patchwork, GNU Social/Mastodon, Steemit... — поставил клиент или зарегистрировался и тут же имеешь массу юзеров для подписок на них и чтения их контента. Это в RetroShare пока ключ не найдёшь, никого не увидишь.

Проблема в получении васей твоего ключа. Или ты хочешь личную инфу хранит открыто?

Это _социальная_ сеть. А не закрытый клуб. У тебя какие-то взаимоисключающие требования. Или у тебя частный клуб, куда ходят только доверенные тебе люди, но тогда нет проблемы поменяться с ключами (собственно, передача ключа и есть приглашение), или у тебя открытая социальная сеть для широкого общения, где не надо никого искать и тогда твои публичные ключи общедоступны. Нельзя одновременно быть и открытым для всех и никому не давать свои ключи :) Нужно выбрать что-то одно.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

ZeroNet, SSB Patchwork, GNU Social/Mastodon, Steemit... — поставил клиент или зарегистрировался и тут же имеешь массу юзеров для подписок на них и чтения их контента. Это в RetroShare пока ключ не найдёшь, никого не увидишь.

И в клиенте есть адреса доверенных нод/сервака, да?

Это _социальная_ сеть. А не закрытый клуб.

Автор говорил про обмен я-ты напрямую. Тебе ключ не поможет связаться со мною - надо выкладывать ипак. Либо никакого общения напрямую не будет.

Если у нас есть другое средство связи, то нахрен нам вообще ключи и прочая хрень - просто используй ипак как приглашение.

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

Но опять же с этим есть тысячи проблем - как я узнаю кто именно мне отправил это сообщения. Я отправляю готовую ассоциацию ипак-ключ. Общение через эту сеть нихрена не будет реалтаймом.

shielcody
()
Ответ на: комментарий от shielcody

И в клиенте есть адреса доверенных нод/сервака, да?

Для bootstrap — да. Надо с чего-то начинать. Потом — не используются.

Автор говорил про обмен я-ты напрямую.

Для этого не нужна _социальная сеть_. Для этого есть всякие Tox'ы.

То, что ты предлагаешь - это писать в общую распределённую базу.

Социальная сеть и есть распределённая база. По своей сути.

Общение через эту сеть нихрена не будет реалтаймом.

Социальная сеть нигде и не гарантирует реалтайм. Впрочем, чаты в ZeroNet хорошо, оперативно работают. Доставка практически мгновенная. Да и в RetroShare чаты активны.

KRoN73 ★★★★★
()
Ответ на: комментарий от shielcody

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

Разумеется, компьютер одного пользователя подключается к компьютерам других пользователей. Что это за социальная сеть, если пользователь ни к кому не подключен?

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

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

Хранить что закрыто? Закрыто — это как?

beroal
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.