Urbit: ‘Виртуальная Галактика’ для Биткойн-узлов

Утверждается, что биткойн можно рассматривать как цифровое имущество, сродни некому виртуальному золоту. Если это так, такое позиционирование ставит вопрос – может ли технология применяться для создания полностью цифровой среды?

Разработчики проекта Urbit провели большую часть последнего десятилетия, пытаясь ответить на этот вопрос. Именно из-за этой концепции проект, разработанный стартапом Tlon, получил поддержку влиятельных инвесторов Силиконовой Долины таких, как Андреессен Горовиц и основатель PayPal Питер Тиль.

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

Описанный его создателями как «создание виртуальной республики», проект возник в середине 2000-х годов и является детищем программиста Кертиса Ярвина, вызвавшего жаркую дискуссию в прошлом за его «нео-реакционные» политические сочинения под псевдонимом Менциус Молдбаг. Несмотря на навлеченную на протяжении многих лет критику, проект продвигается вперед, и вчера успешно завершил свой первый краудсейл серверных адресов.

Изобретем вычислительную парадигму заново

Если говорить просто, проект является амбициозной попыткой «переписать всю современную вычислительную парадигму с нуля». По мнению основателя проекта Кертиса Ярвина, существующие на данный момент стандартные технологические стэки (например, LAMP — «Linux, Apache, MySQL, and PHP») представляют собой гигантские нагромождения legacy кода переменного качества, обеспечить безопасность и предсказуемость работы которого принципиально невозможно. В результате, эта задача «решается» путем выпуска одной заплатки к коду за другой, что давно уже в итоге привело к безнадежной ситуации, когда в системном коде с многими миллионами строк «сам черт ногу сломит», и вряд ли кто-то вообще понимает в подробностях, как там хоть что-то работает.

Выход из данной тупиковой ситуации основатель Urbit увидел в сквозном использовании современной парадигмы функционального программирования, опирающейся на неизменность и повторяемость результатов и отсутствие «побочных эффектов». Есть только одна «проблемка» – для того, чтобы все это правильно работало, необходимо полностью отказаться от всего, что было сделано в области системного программирования за последние 40 лет, от Unix-архитектуры и тесно связанного с ней системного языка C и даже сетевых протоколов семейства TCP/IP. Их должны заменить основанная на SKI-комбинаторах простейшая виртуальная машина, «функциональный» системный язык программирования и новая пиринговая сеть коммуникаций.

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

Как это выглядит

На данный момент, проект состоит из нескольких работающих частей: виртуальной машины (называемой «Nock»), операционной системы («Arvo»), системного функционального языка программирования («Hoon») и пиринговой сети («Ames»). Хотя все это работает «поверх» Unix-систем и протокола UDP, происходящее внутри виртуального Urbit-пространства полностью изолировано от операционной системы и легко переносимо, вплоть до (в конечном итоге) специализированного оборудования, которое может быть гораздо проще существующих мультифункциональных CPU и хорошо ложится в концепцию «Интернета вещей».

Интересным моментом является то, что адресное пространство в сети Ames организовано иерархически и принципиально ограничено. Информационный бюллетень Urbit использует галактические изображения для описания того, как идентификационная информация представлена и организована в ее иерархии. От “галактики” до «звезд» и до “комет”, Urbit рассматривается как виртуальная вселенная, и такой подход распространяется также на процесс формирования идентификационной информации.

Относительно того, как же происходит взаимодействие с Urbit, соучредитель Tlon’а Гален Вульф-Поли говорит, что это зависит от предпочтений пользователя. По его словам, ключевым элементом ее дизайна является портируемость (переносимость на другие платформы).

«Вы можете установить персональный сервер Urbit локально и также можете либо заплатить кому-то за хостинг для его размещения в облаке или можете легко разместить его в своем собственном облаке”, — пояснил он. “Или, если вы реально обеспокоены вопросами конфиденциальности, его можно очень легко установить на старый Linux-бокс и убрать ее в свой шкаф.”

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

Какое же отношение это имеет к биткойну и блокчейну?

Как поясняется в онлайн документации, сам Urbit не использует блокчейн как таковой (хотя и имеет некоторое сходство с ним в архитектуре пиринговой сети). В то же время в информационном бюллетене проекта часто упоминается биткойн, и в интервью Вульф-Поли утверждал, что Urbit может стать идеальной платформой для работы биткойн-узлов и распределенных приложений.

Вульф-Поли сообщил CoinDesk:

«Блокчейн более полезен, когда узлами управляют фактические пользователи. [Онлайн-кошельки типа] Coinbase хороши, но было бы здорово, если бы был простой и безопасный способ запуска полнофункциональных биткойн-узлов. Urbit хорошо подходит для решения этой проблемы.»

Биткойн и Urbit

Помимо опенсорсной разработки и пиринговой (P2P) природы, Urbit использует принятую в Биткойн концепцию дефицита ресурсов. Адресное пространство в сети искусственно ограничено (что, как считают основатели, со временем позволит решить проблему спама и анти-социального сетевого поведения). Это позволяет создателям Urbit описывать адресное пространство, как «виртуальную недвижимость». Если, предположительно, использование системы Urbit возрастет, эта недвижимость станет столь же ценной как, в свое время, доменные имена Интернета. Управление адресами Urbit, роутинг между ними и их передача защищены криптографически и не имеют единой точки отказа.

В начале этой недели команда продала 1,020 Urbit “звезд” по $256 за комплект в ходе краудсейла на своем сайте. В результате, проект выручил $209,100 для продолжения своей деятельности. Изначально предполагалось, что краудсейл продлится в течении месяца, но на практике оказалось, что «звезды» были распроданы в течение всего нескольких часов.

Пока шла продажа, главный исполнительный директор биткойн-стартап 21 Inc и член правления A16Z Баладжи Сринивасан провел сравнение между Биткойн и Urbit, утверждая, что «если бы IP-адресами можно было торговать по принципу Р2Р, как биткойн, это было бы эквивалентно адресному пространству Urbit».

If IP addresses were P2P tradeable like Bitcoin, they'd be Urbit address space. https://t.co/FL0eLaqzwn pic.twitter.com/SDF7WaVvoO

— Balaji S. Srinivasan (@balajis) June 28, 2016

На этом все сходства, если их так можно назвать, заканчиваются.

В том виде как она существует сегодня, Urbit не имеет глобально распределенной природы биткойн, и как показано в информационном бюллетене, иерархическая структура “Вселенной” Urbit отличается от модели равноправных отношений, описанной Сатоши Накамото в его изначальном описании системы Биткойн.

В исходном виде, Urbit в значительной степени централизована (что вполне понятно, так как изначально вся «недвижимость Вселенной Urbit» была сосредоточена в руках создателей системы). Но Вульф-Поли говорит, что с ростом ее экосистемы, общая структура сети Urbit должна становиться все более и более распределенной.

По материалам: CoinDesk, Urbit