- PVSM.RU - https://www.pvsm.ru -

Twister: Децентрализованный, P2P аналог Twitter’a

Twister: Децентрализованный, P2P аналог Twittera

Сегодня я хочу рассказать вам о таком интересном проекте как Twister.

Twister — это сервис микроблогинга (аналогичный твиттеру), но его отличает несколько очень интересных технологий которые были использованы одновременно.

А именно: Bitcoin Block Chain, Bittorrent DHT, Bittorrent Swarm.

Другими словами — это полностью анонимный, децентрализованный сервис микроблогинга который вобрал в себя всё лучшее от Bittorrent и Bitcoin.

Сейчас происходит бум децентрализованных сервисов, Bitcoin, Bittorrent, Bitmessage [1], мессенджер Tox [2], их объединяет общая идея — быть независимыми от всех, быть неподконтрольными.

Создать Twister, Miguel Freitas, считает, что микроблоги осуществляли огромную помощь в различных акциях протеста в множестве государств. Но, к сожалению, политика «информационной безопасности» государств идет в разрез со свободой слова, и под давлением тех или иных структур, начали удаляться неправильные сообщения или целые учетные записи.

Ну и конечно, иногда государство требует произвести деанонимизацию — от компаний — получив все записи о заходах пользователя.

Именно идея отсутствия свободы слова в удобном формате и побудили его создать данный сервис.

Что должен включать в себя удобный способ распространения информации?
— Интерфейс который будет понятен большинству пользователей
— Поддержка мобильных устройств
— Защита от глобального контроля и шпионажа
— Нормальные имена пользователей (Сравнение Twister и Bitmessage)

Автор данного мессенджера в своем whitepaper [3] проводит сравнение с существующими федеративными социальными сетями и таким приложением как Bitmessage.
К сожалению, все эти свойства ранее не встречались ни в одном из сервисов или протоколов.

А теперь давайте поговорим из чего состоит Twister.

Что и для чего используется

Bitcoin Block Chain

Цепочка блоков от системы Bitcoin используется для хранения регистрационной информации, другими словами, когда вы регистрируетесь в системе — данные о вас рассылаются всем. Это позволяет защитить вас от кражи вашего ника в системе и не позволяет другим людям, под видом вас, публиковать ложную информацию.

Обратите внимание, что цепочка блоков отличается от Bitcoin.

Bittorrent DHT

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

Как только вы напишите пост — он будет разослан в DHT сеть и сохранен у вас для дальнейшего распространения.

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

Bittorrent Swarm

Swarm — рой
Данная технология используется для практически моментального обновления информации среди подписчиков или людей находящихся рядом.
Она работает параллельно с DHT, что позволяет решить одну и ту же проблему различными способами, дополнительно разгрузив основную DHT сеть от запросов.

Генерация новых блоков

Дочитав до этого места вы возможно спросите, "Но постойте, генерация блоков в сети bitcoin требует много вычислительных ресурсов, кто этим занимается и какая награда? "

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

Интерфейс для пользователя

Twister — состоит из двух частей — демона и веб интерфейса.
Веб интерфейс по API запрашивает информацию с локального демона, разделение на две части позволяет реализовать различные интерфейсы к Twister.

Оригинальный интерфейс выглядит вот так:

Twister: Децентрализованный, P2P аналог Twittera
Ещё

Twister: Децентрализованный, P2P аналог Twittera
Twister: Децентрализованный, P2P аналог Twittera
Twister: Децентрализованный, P2P аналог Twittera

Особенности и состояние сети

— По аналогии с Bitcoin — если вы потеряете секретный ключ — вы потеряете доступ к своему аккаунту без возможности восстановления.
— Сейчас в среднем в сети около 500 активных узлов и около 18000 блоков в цепочке.
— Все что есть в твиттере есть и тут — указание пользователя через знак @, хэштеги, поиск по хештегам и пользователям, поддержка описание учетной записи, возможность загрузить аватар.

Данные возможности могут звучать смешно, но не забывайте — это P2P децентрализованная система, в ней все намного сложнее реализовать, чем при традиционном клиент-серверном подходе.

Проект очень молодой и активно развивается.
Сейчас нет готовой, скомпилированной версии Twister, но каждый может скомпилировать себе свой twister.
Инструкция по сборке: OS X [4], Windows [5], Linux [6]

Более быстрая установка для OS X

1) В консоли следует ввести brew install boost miniupnpc openssl berkeley-db4
Если у вас не установлен brew — установить

2) echo -e «rpcuser=usernrpcpassword=pwd» > "/Users/${USER}/.twister/twister.conf"
chmod 600 "/Users/${USER}/.twister/twister.conf"

3) В любой папке введите git clone git@github.com:miguelfreitas/twister-html.git
Затем ln -s twister-html /Users/${USER}/.twister/html

4) Скачайте скомпелированный вариант для OS X https://mega.co.nz/#!SU4CiBAa!RKVLfX4BJq4t0JCqFZK7UHuBEURlTcLKIasF8SAmU4Q [7]

5) Запустите его командой ./twisterd -rpcuser=user -rpcpassword=pwd -rpcallowip=127.0.0.1

6) Откройте браузер http://localhost:28332/home.html [8]

Ссылки

Официальный сайт twister.net.co [9]
Официальный репозиторий github.com/miguelfreitas/twister-core [10]
Веб интерфейс github.com/miguelfreitas/twister-html.git [11]
Whitepaper arxiv.org/pdf/1312.7152v1.pdf [12]

Сейчас происходит русификация интерфейса, помочь и посмотреть можно тут github.com/iShift/twister-html [13]

Автор: shifttstas

Источник [14]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/twitter/52338

Ссылки в тексте:

[1] Bitmessage: http://habrahabr.ru/post/174353/

[2] Tox: http://habrahabr.ru/post/193688/

[3] whitepaper : http://arxiv.org/abs/1312.7152

[4] OS X: https://github.com/miguelfreitas/twister-core/blob/master/doc/build-osx.md

[5] Windows: https://github.com/miguelfreitas/twister-core/blob/master/doc/build-msw.md

[6] Linux: https://github.com/miguelfreitas/twister-core/blob/master/doc/build-unix.md

[7] https://mega.co.nz/#!SU4CiBAa!RKVLfX4BJq4t0JCqFZK7UHuBEURlTcLKIasF8SAmU4Q: https://mega.co.nz/#!SU4CiBAa!RKVLfX4BJq4t0JCqFZK7UHuBEURlTcLKIasF8SAmU4Q

[8] http://localhost:28332/home.html: http://localhost:28332/home.html

[9] twister.net.co: http://twister.net.co

[10] github.com/miguelfreitas/twister-core: https://github.com/miguelfreitas/twister-core

[11] github.com/miguelfreitas/twister-html.git: https://github.com/miguelfreitas/twister-html.git

[12] arxiv.org/pdf/1312.7152v1.pdf: http://arxiv.org/pdf/1312.7152v1.pdf

[13] github.com/iShift/twister-html: https://github.com/iShift/twister-html

[14] Источник: http://habrahabr.ru/post/208472/