22 Ноября 2024, 06:20

Unhosted

Автор Zhek@Ch, 29 Апреля 2011, 21:23

« предыдущая тема - следующая тема »

0 Пользователей и 1 Гость просматривают эту тему.

Zhek@Ch

29 Апреля 2011, 21:23 Последнее редактирование: 29 Апреля 2011, 21:25 от Zhek@Ch
Европейское отделение Фонда свободного ПО опубликовало интервью Майклом де Джонгом (Michiel de Jong), создателем проекта Unhosted, в рамках которого предлагается новая концепция создания web-приложений, при которой пользовательские данные не привязаны к определенному сервису или хранилищу. В рамках проекта разработан протокол и набор средств для создания полностью свободных и открытых web-приложений, которые не накладывают ограничений не только на доступ к коду, исполняемому в рамках веб-браузера, но всему приложению в целом и, что важнее, хранилищу данных приложения.

Все вычисления в таком приложении происходят на клиентской стороне, а пользователь сам выбирает место расположения данных, которым может быть специальный публичный сервис, домашняя машина или облачный сервер, взятый в аренду (главное, чтобы на нем был установлен unhosted-сервер). Все, что требуется от пользователя, это просто ввести его идентификатор (GID), состоящий из имени и адреса unhosted-сервера (например, boris@unhosted.org) и пароль. После этого доступ к приложению будет открыт, а вся сгенерированная в процессе информация сохранится в указанном месте в зашифрованном виде.

Unhosted состоит из двух компонентов:
  • WebDAV-сервер, который принимает запросы на сохранение или доступ к данным от клиентов.
  • Javascript-библиотека unhosted.js, которую приложение использует для сохранения и чтения данных с сервера.
Обмен данными между клиентом и сервером осуществляется с помощью протокола WebDAV и механизма CORS (Cross-Origin Resource Sharing), разработанного W3C. Аутентификация производится с помощью OAuth. Перед отправкой данные шифруются с использованием алгоритма RSA. Каждое приложение может получить доступ только к собственному хранилищу данных, поэтому запуск вредоносного приложения может привести к утечке только части конфиденциальной информации.

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

Текущая реализация системы включает в себя библиотеку unhosted.js, Unhosted-сервер, основанный на WebDAV и демонстрационное приложение My Favorite Sandwitch.