Universa – это быстрый блокчейн с умными контрактами. Проект нацелен на перевод всей бумажной документации в цифровую информацию на основе технологии блокчейн и системы смарт-контрактов с ориентацией на реальный сектор экономики.
С помощью Universa любой поставщик или рыночный игрок сможет предлагать свои услуги в Universa и выполнять платежные операции в любых токенах или валютах. Универсальные контракты Universa могут применяться для программирования как внутрикорпоративных приложений, так и публичных.
Отличие Universa – хранение и выполнение смарт-контрактов на стороне клиента, а не в сети Universa. Сеть хранит только их актуальное состояние.
Следует заметить, что Universa технически является криптосистемой не на блокчейне, а на DAG. Слово “блокчейн” используется здесь, как и самими авторами проекта в их документации, скорее как устоявшийся термин для обозначения криптосистемы.
Единоразовая эмиссия токенов, общее количество составляет 10 млрд. токенов UTN.
Токены распределяются в 2 этапа:
Во время TGE (выпуска токенов) будет сгенерирован токен Эфириум ERC20, играющий роль заполнителя, который будет распределен среди участников. Токены платформы будут созданы и распределены на основном блокчейне при запуске платформы Universa. Участники TGE и предпродажи, которые не реализовали свои токены-заполнители ERC20 (UTN-P), получат своё вознаграждение непосредственно в UTN.
По результатам токен сейла было собрано $28’800’060.
Распределение токенов:
Выполнение действий по смарт-контрактам требует осуществления оплаты за транзакции в UTN с целью наградить участвующие узлы за вычислительные мощности, предоставляемые ими в сеть, а также поддержать постоянное развитие платформы Universa. Узлы будут оставлять себе 80% платы за транзакции, а 20% будут направляться в корпорацию Universa. Каждый день 1% платы, удерживаемой Universa, будет уничтожаться навсегда, или «сжигаться», что приведёт к выводу этой суммы из обращения и создаст пожизненный эффект дефляции.
Платформа Universa базируется на сети Universa – множестве клиентов Universa Core, работающих на узлах, составляющих блокчейн Universa и обеспечивающих работу службы безопасной подписи документов Universa (the Universa Secure Signed Document Service, под кодовым названием «Нотариальное облако»).
Узлы в системе Universa являются доверенными и принадлежат партнерам платформы. Каждый узел лицензируется и авторизируется корпорацией. Соответственно, система работает в предположении, что всем узлам можно доверять.
Сеть построена вокруг контрактов и их исполнений – «транзакций» – и каждый раз, когда должно выполняться какое-либо действие, всем узлам передается текущее состояние контракта и источник выполняемой операции. Состояние и источник проверяются хэш-суммой на идентичность сохраненному текущему состоянию боковой цепи контракта («К-чейн»), операция применяется, и затем новое состояние хэшируется и согласовывается.
Создатели Universa разделяют механизм консенсуса на два уровня: локальный и сетевой консенсусы. Под консенсусом понимается подтверждение состояния смарт-контракта, например – его создание, изменение состояния, уничтожение.
Двухуровневая процедура консенсуса подтверждает, что:
Локальный консенсус.
Для принятия локального консенсуса участвующие стороны подписывают состояние смарт-контракта с помощью цифровой подписи. Смарт-контракт может быть действительно сложный, требующий подписей большого количества сторон для подтверждения изменений. Когда все стороны подписали смарт-контракт, локальный консенсус достигнут.
Сетевой консенсус.
После достижения локального консенсуса контракт рассылается всем нодам сети Universa для одобрения. Каждая нода получает копию и выполняет тщательную проверку логики, ограничений, допусков, подписей и состояния контракта. После этого каждая нода публикует свое решение: одобрение или отказ, и передает его в сеть.
В случае, когда 11% нод отказали в одобрении контракта (negative consensus), голосование прекращается и все ноды записывают в сеть факт отклонения изменения состояния контракта.
В противном случае, если 90% одобрили изменение состояния контракта, все ноды записывают в сеть факт достижения консенсуса.
Каждая нода имеет свою копию сети (ledger) и штампует время, когда новый контракт был предоставлен на утверждение.
Двойная трата
В терминах сети Universa атака двойной траты – это попытка утвердить 2+ различных состояний одного контракта. Например, контракт передачи собственности (монет и т.п.) нескольким сторонам одновременно. Чтобы это сделать, атакующий создает несколько ревизий (revision, в терминологии Universa, новый контракт или новое состояние контракта) и отправляет его синхронно разным узлам для подтверждения.
Предположим, что злоумышленник хочет изменить состояние контракта C на два других A и B и две ноды получают его одновременно. Поскольку контракты действительны, обе ноды блокируют предыдущее состояние C для удаления и замены состоянием A или B и отправляют свое решение другим нодам сети. Каждый узел сети, получающий состояние A или B, будет блокировать состояние C для удаления и замены состоянием A или B соответственно. Таким образом, некоторые узлы будут голосовать за A, некоторые за B, но никто не будет голосовать за обоих.
Будет происходить своеобразная гонка по набору голосов за одно из двух состояний. В зависимости от параметров работы сети (скорости, случайных лагов и т.п.) могут быть 3 результата:
Более сложные случаи приводят к аналогичному результату: либо в результате консенсуса устанавливается какое-то новое состояние (одно из многих), либо все новые состояния отвергаются и система остается неизменной.
DDOS-атаки
Клиентский интерфейс узла подключен к Nginx (HTTP сервер) или подобному, конфигурация которого настроена на:
Настройка более сложных ограничений возможна с использованием функционала Nginx. ПО клиента получает только отфильтрованные Nginx запросы, выполняет их и передает обратно.
DDOS-атаки могут совершаться двумя способами: статически (статический запрос – просто запрос к данным, не требующий выполнения над ними операций) и динамически (динамический запрос – например, запрос результата расчета). Статические запросы полностью кэшируются и отрабатываются Nginx.
Все динамические клиентские запросы требуют платежный сертификат. Процедура проверки сертификата достаточно простая, поэтому некорректный сертификат не может быть использован для атаки системы. Если сертификат в порядке, к нему применяется ограничение количества обращений. Превышение этого лимита ведет сначала к временному, а потом и к постоянному отзыву сертификата.
Преимущества Universa:
Структура смарт-контракта
Смарт-контракт глобально состоит из трех частей:
Структура сети
В сети Universa не хранятся контракты и их цепочки состояний, сеть содержит только записи об их актуальном состоянии (не более 140 байт).
Выполнение и хранение контрактов осуществляется на стороне клиента. Сети не нужно хранить полную историю всех транзакций, так как они могут храниться в боковых цепях каждым участником, ответственным за их выполнение. Записи транзакций, источники контрактов и цифровые подписи, могут быть позже проверены на подлинность в соответствующей службе Нотариального Облака, которая отвечает за обработку активов и их цифровых подписей, но является обособленной и отличается от блокчейна.
Каждый отдельный контракт сохраняет свою собственную цепочку состояний, поэтому контракт может выполнять действия асинхронно, не блокируя или не влияя на другие контракты, а совокупные изменения состояния в совокупности образуют направленный ациклический граф («DAG»).
Сеть Universa имеет доступ только к двум частям контрактов: состоянию и определению. Остальные никогда не отправляются в сеть. Этот момент важен, поскольку вложения могут иметь конфиденциальный характер. Таким образом, полный контракт обменивается исключительно между участвующими сторонами любым удобным способом (электронная почта, мессенджеры, облачные пространства и т.п.). Неизменность вложений (расположенных где-то в клиентском хранилище) гарантируется ссылками, подписанными в контракте и одобренными сетью.
Механизм и принципы эмиссии – 2 балла из 3 (доля эмиссии в адрес команды проекта выше средней).
Блокчейн (архитектура и механизм обеспечения консенсуса) – 2 балла из 4 (невнятное запутанное описание архитектуры системы. Принцип децентрализации под вопросом. Каждый узел лицензируется и авторизируется корпорацией Universa и может быть подвержен ее влиянию).
Лицензирование и юридические аспекты – 1 балл из 3 (нет доступной информации о юридическом обеспечении проекта и перспектив взаимоотношений с регуляторами. Есть только упоминание о том, что инвесторы, которые внесли более 10 тыс.долл. должны будут пройти процедуру KYC).
Прогноз – нейтральный. Для реализации проекта выбрана технология с высокой скоростью и масштабируемостью, предусмотрена защита от основных типов атак. Но отбор узлов спорный, с одной стороны он обеспечивает системе дополнительную защиту от недобросовестных участников, а с другой - повышается угроза манипуляции узлами со стороны команды проекта. К тому же неясно, как скажется сложная процедура лицензирования узлов на размере комиссии за транзакции.
Использование технологии DAG положительно сказывается на скорости и масштабируемости платформы:
Смарт-контракты
Смарт-контракт в Universa – это исполняемые сценарии, хранящиеся в древовидных структурах. Сценарии в смарт-контрактах Universa являются Тьюринг-полными, что означает, что сценарии могут выполнять другие сценарии и содержать программируемую логику значительной сложности. Иерархическая структура смарт контрактов создает цепочку смарт-контракта (Smart Contract Chain): набор смарт контрактов, которые ссылаются и подтверждают друг друга, подобно набору связанных документов в реальном мире. Но блокчейн не хранит сами контракты, только их текущий статус, тело контракта хранится в других объектах.
Смарт-контракты могут включать в себя право собственности на объект реального мира. Внутрь контракта могут быть добавлены любые файлы ^ непосредственно или в виде ссылки с подтвержденной подписью (что предотвращает изменение файла) для больших файлов. Клиент Universa проверит соответствие ссылки при выполнении смарт-контракта и, после его заверения Нотариальным Облаком, проставит для него штамп времени. Максимальный размер контракта – 1 ГБ.
Штамп времени – это особенность контрактов Universa. Когда пользовательский клиент отправляет заявку на подтверждение изменения состояния контракта узлу Universa, последний проверяет и удостоверяет время, когда это произошло. Поскольку операция в Нотариальном Облаке занимает меньше секунды, можно узнать точный момент, когда контракт был подтвержден или отклонен Universa. Это позволяет использовать смарт-контракты Universa в юридических целях.
Иногда нужно иметь возможность подтвердить старый статус смарт-контракта; в случае, когда нужно указать состояние контракта в данный момент времени, можно создать «маркер». Это специальный небольшой смарт-контракт, который подтверждает и хранит старое состояние требуемого контракта сроком на 2 года.
Во время запуска, либо вскоре после него Universa предоставит эталонную реализацию нескольких распространенных случаев использования смарт-контрактов на платформе Universa. Эталонные реализации будут адаптивны и доступны с открытым исходным кодом, что позволяет напрямую копировать их или использовать их в качестве основы для будущих разработок. Будут предоставлены образцы «токенов», «счетов-фактур», «сделок условного депонирования» и «организации».
Производные контракты
В сети Universa существует понятие производных контрактов. Как было сказано выше, в сети смарт-контракты имеют иерархическую структуру, которая представляет собой цепочку от родительского контракта к дочерним.
Существует два варианта, как могут быть сформированы цепочки.
Рассмотрим вариант, когда клиент A сети получает, например, от банка, контракт типа “монета” (Coin-type contract – любой контракт, включающий некоторую десятичную ценность, обладающий свойством деления/объединения и изменения владельца), или просто “монету”. В этом случае монета является корневым контрактом. Пусть далее клиент A делает подарок другому клиенту B и передает ему свою монету. В таком случае “монета” клиента A больше не существует, она аннулируется. Создается новая модификация монеты, владельцем которой становится клиент B. Такого рода операции используются при передаче права собственности: объект клонируется, создается новая ревизия (состояние контракта), изменяется владелец и старая ревизия отбрасывается. То есть родительский контракт отменяется.
С другой стороны, производные контракты могут не отменять родительский, а создавать новые, ссылающиеся на него. Например, смарт-контракты публичной оферты могут создавать множество производных клиентских контрактов, которые ссылаются на родительский. А родительский контракт может содержать подробную информацию о полях и ссылках дочернего, когда и кем он был создан.
UniPayments - сервис для полноценной интеграции Universa с другими блокчейнами (Bitcoin, Ethereum), позволяющий преобразование токенов UTN с токенами внешних блокчейнов. В настоящий момент UniPayments может отправлять и принимать BTC, ETH, токены стандарта ERC20. Эта система является передовой с точки зрения развития и объединения криптотехнологий и требует особой проверки надежности. Сейчас идет анализ уязвимостей для взлома и выполняются разнообразные нагрузочные тесты. Сроков готовности и деталей работы системы пока нет.
Сценарии использования платформы Universa:
Universa позволяет создавать цепочки смарт-контрактов под решение практически любых бизнес-задач. Они могут применяться как во внутрикорпоративных процессах, так и для создания публичных приложений. Например:
Планируется, что платформа будет состоять из следующих сущностей:
Узлы Universa – равноправные хосты, хранящие структуру сети Universa. Каждый узел работает на обычном Unix-сервере и содержит динамическую копию реестра. Когда клиент отправляет смарт-контракт в Universa, он сначала проверяется клиентом Universa, который распространяет его по известным узлам.
Universa предоставит следующие образцы разработки и продукты с минимальным функционалом:
Текущее состояние (январь 2018):
За новостями проекта можно следить в блоге Александра Бородича на Medium:
https://medium.com/@borodich
За обновлениями технической части можно следить на GitHub:
https://github.com/UniversaBlockchain/universa
Производительность и масштабируемость – 2 балла из 2.
Встроенные механизмы и функции – 3 балла из 3.
Продукт – 2 балла из 4 (часть функционала в стадии разработки или тестирования).
Возможности интеграции – 1 балл из 1.
Прогноз – нейтральный. Необходимо следить за темпами и разработки и полнотой реализации заявленного функционала.
Сайт и документация на трех языках: русском, английском и корейском.
Дорожная карта расписана до второго квартала 2018 года включительно:
Согласно дорожной карте, сейчас уже второй этап проекта, но по факту не выполнены еще обязательства первого этапа: первый релиз блокчейна, клиенты и кошельки.
Вот что пишет по этому поводу Александр Бородич в своем блоге от 3 января 2018 года: “Нам ставят в вину, что мы сдвинув весь TokenSale и планы в августе на 6 недель c середины сентября на конец октября не поменяли это в WP и на сайте. Мне кажется правильным, чтобы вы видели исходный документ и то, насколько мы отстаем от собственных планов. Через две-три недели мы опубликуем новый roadmap, уточненный и дополненный, а пока идем где-то с опережением, где-то с отставанием от графика.” Однако, на конец января RM все еще не обновлен.
Также вызывают вопросы некоторые пункты:
WhitePaper:
https://www7.universa.io/files/whitepaper.pdf (англ),
https://www7.universa.io/files/whitepaper_ru.pdf?v=1.3 (rus).
Проект позиционирует себя как принципиально новый и инновационный, но при этом в белой бумаге не описана техническая сторона проекта и то, в чем именно заключается инновационность. Сам принцип работы платформы описан очень запутанно, непонятно и противоречиво. Судя по описанию и основным характеристикам, проект использует технологию DAG (направленный ациклический граф), но при этом тут же в белой бумаге описывается формирование блоков и блокчейна. Хотя по сути блокчейн и DAG – это два разных способа записи транзакций.
Есть разночтения в том, для каких именно мобильных платформ будут разрабатываться приложения: в одном месте указаны как iOS, так и Android; а в другом - только Android.
Стоит отдельно упомянуть непрофессионализм работы комьюнити-менеджеров в Telegram. Уровень модерации и взаимодействия с людьми очень низкий. На конкретные вопросы, связанные с техническими аспектами, деталями механизма консенсуса и т. п. практически не удалось получить ответы: они остались проигнорированы. Получить ссылку на документы, в которых описан механизм консенсуса, стало возможно только после личного обращения в Telegram к CEO проекта А. Бородичу.
White Paper – 2 балла из 5 (недостаточно хорошо описана техническая сторона, принцип работы системы описан запутанно и противоречиво, путаница в терминологии).
Road Map– 3 балла из 5 (маленький горизонт планирования, отставание от планов, которое никак не декларируется в RM).
Прогноз – нейтральный. Работа с документацией ведется, WP на русском уже доступен на официальном сайте. Возможно, содержимое документа тоже будет дорабатываться. Также необходимо следить за появлением новой версии RM. При должной работой с документацией, прогноз может измениться на позитивный.
Руководители проекта:
Александр Бородич – СЕО проекта. Бизнес-ангел, серийный предприниматель, основатель компании Future Labs, проектов MyWishBoard, MyDreamBoard, SuperFolder, основатель VentureClub.co. Занимался он-лайн маркетингом, занимал должность директора по маркетингу в компании Acronis и Mail.ru. Финалист MobileBeat 2012 (Сан-Франциско). Имеет патент США в области оценки эффективности распространения информации в социальных сетях.
Сергей Чернов – СТО проекта, ex CTO в проекте Cybiko, 25 лет опыта в области разработки и архитектуры программного обеспечения, 17 лет опыта работы в криптографии, ex CTO в проекте Glomper.
Александр Довнар – Арт-директор проекта, 20 лет опыта работы в области цифрового и полиграфического дизайна, более 10 лет опыта работы арт-директором, бывший арт-директор в Mail.Ru Group.
Максим Постников – Евангелист, 18 лет опыта работы в IT сфере, бывший глава Social Network в Mail.ru Group.
Так же в команду входят 12 программистов/ведущих разработчиков, 9 разработчиков мобильных приложений, 8 менеджеров по качеству, 5 дизайнеров, UI/UX специалистов, 3 менеджера проектов, 25+ CTO с многолетним опытом работы с системами безопасности.
Советники:
John McAfee – Пионер кибербезопасности и программного обеспечения в 1989 году открыл McAfee Associates – первую компанию-разработчик антивирусного ПО.
Yale ReiSoleil – управляющий фондом прямых инвестиций и специалист по трейдингу (алгоритмической торговле), является соуправляющим медицинского фонда Sichuan Hongjian объёмом 20 млн. йен и международного венчурного фонда высоких технологий. Начиная с 2013 года РейСолейл разработал несколько систем для алгоритмического трейдинга. В июле 2017 года вместе с John McAfee и Stanley Zhu стал одним из основателей ReiSoleil McAfee Zhu Ventures.
Dmitry Finkelstein – соучредитель четырех компаний в области IT и FinTech. Магистр прикладной математики, EMBA, CQF. Партнер в Bankex и Terreus Capital.
Команда многочисленная и опытная в сфере IT и FinTech, однако, на первый взгляд, у нее мало опыта именно в сфере блокчейн-технологий и международного опыта работы.
Присутствие среди советников такой знаменитости, как Джон МакАфи, придает солидности проекту, но не понятно, какую именно поддержку он оказывает.
Сообщество ApexFree Platform Services вложит $7 млн. в проект в обмен на долю в компании. В результате сделки ApexFree Platform Services интегрируется с решением Universa, это позволит компаниям запустить SaaS-решение для осуществления быстрых и недорогих микротранзакций на базе технологии блокчейн и смарт-контрактов. ApexFree Platform Services - платформа, работающая в сфере автоматизации и роботизации управления информационными потоками, проведения платежей и документов. Сейчас компания планирует расширить возможности и сферу применения, планируется внедрить новые сервисы и программные решения, Universa будет использоваться в качестве средства регистрации транзакций и связанных с ними метаданных.
Численность команды – 2 балла из 2.
Состав команды – 3 балла из 3.
Компетенции команды – 2 балла из 3 (мало опыта в сфере блокчейн-технологий и международного опыта работы).
Аффилированные лица – 2 балла из 2.
Прогноз – позитивный. Команда пополняется новыми участниками. В случае успешного сотрудничества с ApexFree Platform Services, есть предпосылки к появлению новых инвесторов и партнеров.
Universa позиционирует себя как конкурент Bitcoin и Ethereum, сравнивая с ними свою будущую скорость и масштабируемость. Однако, более быстрых блокчейнов много и помимо Universa, а Bitcoin и Ethereum как были первопроходцами, так ими и останутся.
Если говорить о государственном реестре, создание которого в планах у Universa, то он уже есть Waves Platform.
С точки зрения технической реализации платформы, ближайшими ее конкурентами являются IOTA и ByteBall.
Прямые конкуренты – 2 балла из 4 (есть уже работающие блокчейны, использующие аналогичную технологию, более известные и авторитетные).
Отраслевые конкуренты – 2 балла из 4 (все описанные в белой бумаге сценарии можно реализовать и на уже существующих блокчейнах).
Проектный мониторинг конкуренции – 0 баллов из 2 (некорректное сравнение с Bitcoin и Ethereum, которые не являются DAG, нет анализа отраслевой конкуренции).
Прогноз – негативный. У проекта нет однозначных конкурентных преимуществ. А задекларированные, таковыми на самом деле не являются. Сравнение с Bitcoin и Ethereum это скорее маркетинговый ход, чем анализ конкурентов.
РЕЙТИНГ. Оценка «Universa»: 32 балла из 50 – 64%. Прогноз нейтральный.
Прогноз – нейтральный. Проект может занять свою нишу в развивающемся крипто-рынке, но пока не может составить конкуренцию крупным игрокам. Основной упор в маркетинговой кампании был сделан на высокую скорость транзакций, показатели производительности действительно впечатляют, однако механизм обеспечения консенсуса достигается авторизированными узлами, которые должны получить соответствующую лицензию, схема получения которой, кстати, непонятна. Таким образом принцип работы системы сильно сдвинут в централизованную сторону. Технические детали работы блокчейна в проектной документации раскрыты скудно, что не дает возможности выстроить полноценную корреляцию между заявленными громкими обещаниями и технической стороной вопроса.
Основным своим конкурентным преимуществом команда называет высокую скорость по сравнению с Bitcoin и Ethereum. Однако, на самом деле, практически все новые блокчейны уже быстрее этих двух ветеранов, использующих механизм консенсуса PoW в своей работе, который является самым медленным. Честнее было бы сравнивать с той же системой IOTA, которая использует такой же механизм.
Еще одно преимущество, которое упоминает команда – “более умные смарт-контракты”, но не понятно, какие критерии используются для оценки “ума” контрактов и в чем именно преимущество смарт-контрактов Universa перед другими. Все описанные в белой бумаге сценарии можно реализовать и на уже существующих блокчейнах.
Для ускорения работы в Universa используется идея создания блокчейна, который не будет хранить полную историю транзакций, все данные хранятся на стороне клиента. Но для этого у отправителя и получателя должны стоять соответствующие клиенты. Разработка клиентов для мобильных приложений потребует много ресурсов и могут возникнуть проблемы с iPhone из-за политики безопасности Apple.
Есть также вопрос по поводу обеспечения принципа децентрализации, т.к. все узлы принадлежат партнерам Universa. Каждый узел лицензируется и авторизируется корпорацией Universa и может быть подвержен ее влиянию. В документации не раскрыты вопросы о том, на основе чего будут выбираться партнеры и каким образом будет проводиться лицензирование.
Официальный сайт: https://universa.io/ru.html
GitHub: https://github.com/UniversaBlockchain/universa
Документация: https://access.universa.io/docs
Explorer: https://access.universa.io/
Facebook: https://www.facebook.com/Universablockchain/
Telegram: https://t.me/Uplatform
Twitter: https://twitter.com/Universa_News
Топик на bitcoin.org на русском: https://bitcointalk.org/index.php?topic=2140560.0