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