Наш мир постепенно переходит к состоянию, в котором самым ценным ресурсом оказывается информация. А ценность информации не в последнюю очередь изменяется её распространённостью. GeekTimes, Habrahabr или Wikipedia пользуются популярностью благодаря информации, хранящейся на их страницах. Хорошие фильмы и музыка сохраняются на торрентах гораздо дольше проходных.
Философские мысли посещали и создателя «эфемерного» хостинга ephemeralp2p.durazo.us, который, в сущности, не размещает у себя ни одной страницы, а поддерживает лишь нечто вроде торрент-трекера.
С начальной страницы Ephemeral каждый может вписать в форму любое содержимое, и после отправки формы браузер этого человека становится одним из узлов p2p сети. Для контента создаётся уникальный SHA-256 хэш, который включается в полный адрес созданной страницы.
Затем любой, получивший адрес созданной страницы, может её открыть. Её контент не хранится на сервере, и раздаётся браузерами тех участников сети, в которых эта страница открыта. Правда, процесс раздачи и поиска подходящего донора регулируется самим сервером. Когда последний браузер закрывает страницу, её содержимое бесследно исчезает. Наверху страницы отображается количество её читателей и другая служебная информация.
Автор организовал этот проект в качестве эксперимента, чтобы проверить работу веб-сокетов. Проект написан на языке Elixir — ЯП для параллельных вычислений, который выполняется в виртуальной машине Erlang, BEAM. Код проекта доступен на github.
У такого способа распространения контента есть несколько интересных особенностей. Во-первых, нигде не хранящийся и самоуничтожающийся контент очень удобен для распространения чувствительной секретной информации, которую можно найти, только зная соответствующий хэш, и только пока её раздаёт кто-либо ещё. Во-вторых, так как хэш создаётся на основе содержимого страницы, то открывая страницу с определённым адресом, вы автоматически убеждаетесь, что получаете именно тот контент, на который рассчитывали.
Эта статья на Ephemeral доступна по ссылке.
Комментарии (11)
rPman
22.07.2015 02:25Нуууу, еще чуть чуть, добавить поддержку webrtc и публичных stun серверов для соединений между клиентами за NAT…
RealFLYNN
22.07.2015 10:43Я бы назвал это скорее «Солипсический хостинг».
spmbt
22.07.2015 17:06+2Солипсист может хотя бы спать, и его мир не исчезнет. А тут все случайно закрыли глаза — и Вселенной конец.
grozaman
22.07.2015 22:52Так вон оно как называется! А я вечно распинался, пытаясь объяснить друзьям с началом «А вдруг весь мир...»
morgen2009
22.07.2015 16:08А почему бы тогда не кидать страницу в кэш браузера и, пока страница лежит в кэше хоть у одного клиента, сайт жив. Хочешь супер секретную информацию вложить, ставишь заголовок «no-cache». Закрыл браузер — забыл. Хочешь чтобы дольше жило ставь максимальное время жизни в кэше
stepik777
22.07.2015 16:32Странно, как оно у меня работает, я же отключил p2p в браузере, чтобы сайты не определяли мой настоящий IP адрес из за VPN.
rPman
22.07.2015 17:53оно не p2p, данные идут по websocket от хранящего страницу клиента на сервер и уже обратно запросившим клиентам.
Reeze
На просторах гитхаба я видел проект, где его автор сделал настоящий p2p-браузер и хостинг в одном лице без сервера. Необходимо было только передать ссылку на этот самый сайт (в которой был ip одного из пиров).
Еще есть Maelstrom от BitTorrent.