Три дня назад на GitHub был опубликован интересный проект — web2web. Он представляет из себя веб-страницу, которая загружает своё содержимое с помощью технологии торрентов и блокчейнов и может работать без центральных серверов и доменов.
Зачем это нужно?
-По многим причинам. Идея создания одноранговой сети существует уже давно, и выглядит она довольно многообещающие:
-Защита от взлома. Обычный веб-сайт можно взломать, получив несанкционированный доступ к серверу. В одноранговой сети нет серверов как таковых, а значит и взламывать попросту нечего.
-Защита от атак. Работу обычного сайта можно заблокировать при помощи распределённой DOS-атаки на сервер. Провести DOS-атаку на всех членов сети, которые хранят копии страницы, невозможно.
-Отсутствие цензуры. Самый понятный для жителей России пример — блокировки сайтов правительством. Сервера в обычном Интернете можно заблокировать по IP адресу (правда, блокировку не так трудно обойти) или по домену. При передаче данных через торренты, единственный способ блокировки — полная фильтрация всего трафика.
-Нет проблем с ресурсами. Данные хранятся бесплатно и в неограниченном объёме.
Круто! А почему раньше никто такого не делал?
На самом деле, делали. Уже существуют такие проекты, как MaidSafe — распределённая система хранения и передачи данных, представляющая из себя децентрализованный сервер, — или ZeroNet — приложение, обеспечивающее доступ к распределённой системе сайтов, на основе BitTorrent.
Эээ… А чем тогда этот проект отличается от остальных?
Тем, что он работает прямо в вашем браузере. MaidSafe требует для работы установки клиентского приложения. ZeroNet работает из бразуера, но его тоже нужно отдельно устанавливать. Такой подход позволяет реализовать гораздо больше возможностей, однако, в то же время, сильно поднимает входной порог для обычных пользователей. Мало кто захочет качать, а потом ещё и устанавливать что-то, ради посещения одного сайта. Web2Web решает эту проблему.
Хорошо. А можно подробнее о том, как это работает?
Система очень простая. Вы открываете html-страницу (вы можете получить её любым способом — как по URL адресу, так и от друга на флешке) любым браузером. На этой странице вы увидите сообщение с просьбой подождать несколько минут. В это время js-скрипт запросит по определённому bitcoin-адресу последнюю исходящую транзкацию, через OP_RETURN. Это скрипт будет содержать информацию для скачивания новой страницы через торрент. После скачивания эта страница заменит собой старую (с просьбой подождать).
В какой стадии находится проект?
Пока существует только proof-of-concept. Вы можете убедиться, что решение действительно работает, перейдя на демонстрационную страницу. К сожалению, наша редакция заметила, что страница не всегда показывается корректно. В том, что это всё не обман, нам всё же удалось убедиться, открыв страницу через браузер Chromium (правда, видео всё равно не работало). Мы надеемся, что автор в скором времени вернёт всё в полностью рабочее состояние.