нНаша задача заключается в том, чтобы создать родственную для Эфириума сеть, которая расширит возможности, предоставляемые экосистемой виртуальной машины Эфириума (EVM). Для этого DFINITY должен привнести нечто большее, чем наши новые сетевые протоколы и криптография, которые, мы надеемся, тоже будут востребованы Эфириумом. В качестве комплимента Эфириуму и для расширения возможностей, предлагаемых его экосистемой, DFINITY вводит фундаментально отличное управление посредством новейшей децентрализованной системы принятия решений под названием «Blockchain Nervous System» («Нервная система блокчейна»), или BNS.
В рамках проекта были разработаны такие новые методики, получающие всё большее признание, как пороговое реле (Threshold Relay), валидационные башни (Validation Towers), валидационные деревья (Validation Trees) и USCID (Unique State Copy IDs) (идентификационные данные уникальных состояний). Многие из этих разработок полностью меняют правила – например, цепочки порогового реле повышают безопасность, обеспечивая в 50 раз более высокую скорость, чем сегодняшний Эфириум, что значительно улучшает обеспечиваемый распределёнными приложениями (Dapps) пользовательский опыт.
Эта распределённая система искусственного интеллекта интегрирована в сеть и наделена особыми правами, позволяющими ей играть роль доброжелательного привилегированного пользователя, который помогает решать проблемы, в противном случае нерешаемые без посредничества человека. Сеть DFINITY возлагает контроль за исполнением принципа «код есть закон» на этот распределённый искусственный интеллект.
СОВЕТ: если вас уже не нужно убеждать в необходимости «нервной системы блокчейна», вы можете перейти сразу к разделу «Как это работает».
Проект децентрализованной платформы, авторы которого стремятся создать экосистему, хорошо сочетающуюся как с Ethereum, так и с его корпоративными клонами. Dfinity ICO является попыткой реализации так называемого «децентрализованного облака» — среды, в которой будут выполняться смарт-контракты Эфириума.
Команда разработчиков
Известно, что за проектом стоит DFINITY Stiftung — некоммерческий фонд в Цуге (Швейцария). По состоянию на апрель 2017 года ему принадлежали активы проекта в размере около $10 млн. Реализацией проекта занимается большая группа специалистов по компьютерным наукам и математике, криптографии, техническим новинкам и т. д.
Команда разработчиков и советников включает 35 человек, в том числе:
- Доминик Уильямс (президент и главный научный сотрудник, криптотеоретик и предприниматель, специалист по пороговому реле и цепям PSC, ранее руководил созданием MMO-игры с использованием собственных распределенных систем, которая привлекла миллионы пользователей).
- Тимо Ханке (руководитель инженерного отдела, ранее был профессором математики и криптографии в Аахенском университете в Германии, но затем увлекся Биткоином, в 2013 году он создал AsicBoost для повышения эффективности добычи Bitcoin на 20-30%, который затем стал стандартом для крупномасштабных майнинговых операций).
- Бен Линн (старший научный сотрудник и инженер, криптограф, ранее занимался технологиями в сфере безопасности, скорости и масштабирования публичных блочный сетей, имеет около 10 лет опыта работы на руководящих инженерных должностях в Google).
- Андреас Россберг (старший научный сотрудник и инженер, ранее был инженером по персоналу в Google, где участвовал в разработке виртуальной машины WebAssembly и возглавлял команду разработчиков JavaScript, работавшую над движком Chrome V8, является автором множества научных работ).
- Махнуш Мовахеди (старший научный сотрудник и инженер, ранее занимал должность постдокторанта в Йельском университете, работал над масштабируемыми и отказоустойчивыми распределенными алгоритмами для достижения консенсуса и безопасного многопартийного вычисления, конфиденциального обмена и интерактивной коммуникацией).
Основные цели и особенности Dfinity
Согласно исследованию, в настоящее время более 82,6% населения в мире используют компьютер. Каждый из ПК работает на разных типах операционных систем, таких как Windows, Linux, Dos и т. д. Однако любой компьютер и операционная система имеют определенные границы. У них есть ограничения по использованию технологий, которые пользователь не в состоянии пересечь. Пользователь может регулярно использовать компьютер в повседневной жизни, но не способен выходить за пределы операционной системы.
Авторы Dfinity предлагают создать компьютер без границ, для которого рамки той или иной операционной системы не будут иметь значения. Именно поэтому они называют свою идею децентрализованной InFINITY («бесконечность»).
Dfinity представляет собой блочный компьютер с неограниченной пропускной способностью, повышенной вычислительной способностью и алгоритмическим управлением. Разработчики создали новый вид публичного децентрализованного ресурса облачных вычислений. Он работает на новом блочном компьютере, который аналогичен концепции Ethereum, но имеет расширенную производительность, а в конечном счете должен получить неограниченную емкость.
Бизнес-приложения, которые будут работать на этом компьютере, не будут включать такие сложные компоненты, как базы данных, системы резервного копирования и восстановления или веб-службы Amazon. Это сократит расходы вычислительных ресурсов на 90% за счет привлечения необходимого человеческого капитала, но столь мощный общественный ресурс также будет нуждаться в управлении.
Как Dfinity может решит современные вычислительные проблемы?
Ключевой задачей для децентрализованных облачных сетей является быстрое завершение вычислительных транзакций. В настоящее время на все расчеты требуется несколько минут. Разработчики приложений, такие как децентрализованные сервисы обмена, как правило, предупреждают пользователей об этом и стремятся обеспечить для них приемлемый пользовательский интерфейс.
Dfinity использует цепочки Threshold Relay для ограничения текущих ограничений. Сама сеть рассчитана на масштабирование для обработки неограниченного количества вычислений. Это позволит ей даже на начальной стадии развития обеспечить существенный рост технических возможностей без необходимости внедрения дополнительной системы масштабирования.
Это достигается благодаря тому, что цепочки пороговых реле не связаны с «пуассоновским процессом» систем на базе алгоритма Proof-of-Work, и майнеры могут осуществлять проверки транзакций без ущерба для коммерческих целей.
Ключевые особенности
Перечень основных отличий Dfinity от других блочных сетей включает:
Высокий уровень производительности
Проект был разработан для изучения способов предоставления публичным децентрализованным сетям возможности размещения виртуального компьютера с неограниченной пропускной способностью. Концепция идеи основывается на новом блочном компьютере, который по-своему похож на Ethereum, но обладает значительно улучшенной производительностью с перспективой неограниченной емкости. Исходным требованием такой системы является ее присоединение к майнинговым сервисам с 1 млн участников и более.
В системе Dfinity для осуществления транзакции потребуется всего лишь 2 подтверждения и 5-10 секунд времени. Для сравнения: в блокчейне Bitcoin транзакции проводятся в течение около 60 минут после 6 подтверждений, а в сети Ethereum — за 10 минут после 37 подтверждений.
Интероперабельность
Хотя многие приватные сети будут управляться корпорациями, добавление некоторых новых услуг выходит за рамки их практических бюджетов и опыта. Например, в систему цепочки поставок, предназначенную для подключения поставщиков и помогающую в создании новых систем финансирования вместо счетов-фактур можно интегрировать функцию арбитража, идентичности, функциональности рынка перевозок и т. д. Dfinity позволит создавать открытые версии таких сервисов в своей публичной цепочке, а затем внедрять в приватные сети в виде строительных блоков.
Самоуправление
Dfinity предусматривает использование алгоритмического управления Blockchain Nervous System (BNS), которое может защитить пользователей от атак и помочь перезапустить сломанные системы, динамически оптимизировать сетевую безопасность и эффективность, обновить протокол и смягчить риски злоупотребления платформой.
Интернет 3.0
Разработчики охвачены идеей создания нового вида публичного децентрализованного ресурса облачных вычислений. Их цель — создание интернета 3.0, в котором вся сеть будет действовать как единый гигантский компьютер с радикально новыми свойствами.
IT-системы предприятий, работающие на этом компьютере, будет невозможно остановить.
Защита пользователей
На платформе Dfinity будет действовать правило — «Код является законом». Это означает, что все будет зависеть от решений «нейронной» системы.
Если вспомнить ситуацию вокруг кражи средств с биржи Bitfinex и взлом DAO, то становится понятным, что хакеры чаще всего крадут ключи пользователей, а иногда способны взламывать системы смарт-контрактов, имеющих программные недостатки.
Основная цель встроенной в Dfinity функции BNS — вернуть средства там, где это возможно, и обратить вспять ущерб от взлома. BNS также может вносить правки в системы, которые просто потерпели неудачу из-за инженерных ошибок.
Это позволит повысить комфорт для потребителей и компаний, многие из которых опасаются делать шаг в сторону децентрализованных систем без подобной защиты.
Система управления Dfinity
На платформе будет использоваться децентрализованный интеллект (DI), способный совершать произвольные изменения. Это помогает снизить уровень злоупотребления и защитить пользователей, решить проблемы, связанные с оптимизацией конфигурации сети и легко обновлять протоколы.
Система будет зависеть от контролируемых человеком «нейронов», управляемых специальным клиентским программным обеспечением (ПО). Нейроны будут создаваться путем внесения внутренних цифровых токенов и получения вознаграждения за выполнение услуг голосования. Это позволит сделать процесс принятия решений конфиденциальным, защищая персональные данные участников.
Создание единой экосистемы
На сегодняшний день приватные локальные сети могут подключаться к общественным сервисам в интернете. Однако отдельные облачные сети, созданные с использованием технологии Ethereum, изолированы. Их смарт-контракты не способны взаимодействовать с другими публичными сетями. Авторы Dfinity стремятся преодолеть эту проблему.
Платформа позволит программным методам, вызываемым на самом высоком уровне в приватных системах, контактировать с публичной сетью Dfinity. Затем система будет гарантировать выполнение как приватных, так и публичных методов, или невыполнение ни одного из них.
В этом случае даже один вызов ПО может привести к запуску вычислительных процессов, происходящих в других отдельных децентрализованных сетях.
Период и условия проведения Dfinity ICO
Официальный сайт: https://dfinity.org/
На момент написания обзора официальная информация о проведении основного этапа ICO не была доступна. Однако в мае разработчики провели успешный airdrop для ранних сторонников на общую сумму около $35 млн. Токены планируется раздать в 4 квартале 2018 года.
Также авторы проекта сообщили на своей странице в Twitter о планах по продаже 10% токенов на сумму $350 млн.
Вокруг проекта отмечается хороший ажиотаж, что было явно заметно по итогам предпродажной подготовки ICO. В целом, Dfinity имеет хорошие отзывы от инвесторов.
Между тем, многие важные сведения о проекте (в том числе дорожная карта) пока отсутствуют в технической документации, и разработчики даже не пытаются это объяснить. На самом деле в «Белой книге» проекта практически нет стоящей информации, связанной с реальным процессом разработки платформы.
Почему разработчики не хотят придерживаться принципа прозрачности относительно своих планов, даже когда проект развивается с завидным успехом, пока непонятно. Тем не менее, это не отпугнуло от него инвесторов и не сказалось на привлечении финансирования.
После того, как Ethereum стал логичным продолжением развития Bitcoin, он получил огромную популярность и завоевал абсолютную часть рынка ICO. Как и Bitcoin у Ethereum есть свои парадигмы, которые взяты за основу всей сети. Одна из таких ключевых парадигм, «Протокол — это закон». Это означает, что нет никакого интеллектуального управления, регулирующего использование платформы или базовую сеть, вследствие чего происходят хардфорки и софтфорки, когда возникает какая-либо угроза.
А теперь представьте себе сеть третьего поколения, в которых все существующие криптографические технологии и протоколы стали совершенны и способствуют бесконечной скорости. Сеть, в которой существует новая парадигма «Искусственный Интеллект(ИИ) – это закон». Безопасность такой сети будет основана на голосованиях участников сети и традиционных механизмах ИИ, которые способны мгновенно вычислять уязвимости, а в случае проникновения безболезненно «откатывать» сеть назад. Такая сеть позволяет динамически оптимизировать экономические параметры сети, проводить обновления протоколов и различных приложений, без нарушения работы системы. Именно в блокчейне третьего поколения извечная проблема масштабируемости и скорости транзакций будет окончательно решена, что позволит использовать его неограниченным количествам пользователей и приложений.
Если вам удалось хоть немного представить себе вышеописанную глобальную сеть, поздравляю вас, теперь вы немного знакомы с проектом Dfinity.
Что такое Dfinity?
Dfinity — это публичная сеть нод, предоставляющая «децентрализованное мировое вычислительное облако», где программное обеспечение может быть установлено и запущено со всеми обычными свойствами и возможностями смарт – контрактов. Виденье Dfinity направлено в две стороны. С одной стороны, они хотят усовершенствовать существующий рынок посреднических услуг, который представлен такими гигантами индустрии, как Uber, eBay и прочие. Идея в том, чтобы провести реинжиниринг этих субъектов, как «предприятий с открытым исходным кодом» с использованием автономного программного обеспечения, которые используют свои собственные децентрализованные системы управления для обновления самих себя. С другой стороны, они хотят осуществить глобальный реинжиниринг IT систем, чтобы воспользоваться уникальными свойствами блокчейн вычислительной техники и значительно сократить расходы. Этот последний момент неочевиден, потому что вычисления посредством блокчейна намного дороже, чем на традиционных облаках, таких как Amazon Web Services. Но существенная экономия возможна, потому что подавляющее большинство затрат, связанных с управлением корпоративными IT-системами, связано с поддержкой человеческого ресурса, а не вычислений как таковых и Dfinity cloud позволит создавать системы, в которых задействовано гораздо меньше человеческого труда.
Являясь блокчейном третьего поколения, Dfinity работает на базе EVM – Ethereum Virtual Mashine, но в отличие от эфира имеет больше связей между нодами. Dfinity полностью совместима с сетью Ethereum и любое приложение, которое можно запустить на Ethereum, запустится и на Dfinity. Хоть Dfinity и является достаточно крутым и самостоятельным проектом, они не намерены конкурировать с эфиром, даже наоборот называют себя «лучшими приверженцами Ethereum». По заявлениям разработчиков проект Dfinity частично задумывался как родственная сеть Ethereum, которая будет иметь более глубокую основу, такую как «ИИ – это закон». Благодаря алгоритмическому управлению сеть иногда называют «сумасшедшая сестра Ethereum». Однако у сетей есть ключевые различия:
- Специальные протоколы и методы позволяют Dfinity иметь максимальную производительность, неограниченную масштабируемость, интероперабельность и другие преимущества.
- Blockchain Nervous System – децентрализованный интеллект Dfinity. Именно он способен наиболее эффективно управлять сетью.
Dfinity Stiftung — это некоммерческий фонд в Цуге, Швейцария, который поддерживает проект Dfinity. В настоящее время проект привлек как минимум порядка $100 миллионов для дальнейших разработок.
Заработай на Партнерской ПрограммеНадежный и Честный оффер. У нас можно добиться доходов около 10 тыс.руб в день.Пошаговая ИнструкцияСоглашениеАрбитраж — что этоОбучениеbinpartner.com | Однокомнатные квартиры в ЖК «Пирс»Клубный квартал закрытого типа. Малоэтажная застройка от А-100 Девелопмент!О кварталеУсловия покупкиВыбрать домУслуга Trade-inpirs.byПроектная декларация на рекламируемом сайте |
Яндекс.Директ
Blockchain Nervous System – основа сети Dfinity
Blockchain Nervous System(BNS) — распределенный интеллект, интегрированный в сеть со специальными привилегиями, которые позволяют ему играть роль беспристрастного децентрализованного суперпользователя. Данная система может решать проблемы, которые в противном случае могут быть неразрешимы без посредников. Дизайн для первой итерации BNS удивительно прост. Любые новшества в сети, (приложения, смарт – контракты и т.д.) в первую очередь, должны быть представлены BNS за отдельную плату. Затем BNS принимает решения по этим предложениям, используя голоса, контролируемые «нейронами» – любым пользователем в сети. BNS адаптируется и учится принимать лучшие решения, поскольку нейроны реагируют на стимулы и обратную связь.
Любой человек может создавать и запускать нейроны. По сути нейроны это те же самые ноды. Новый нейрон создаётся, путем заморозки токенов на срок от 3 месяцев, (возможно в будущем этот срок изменится). Относительная сила голоса нейрона пропорциональна размеру депозита, который он держит. Таким образом обеспечивается легитимность голосования и участие владельцев нод в голосованиях, ведь они получают вознаграждение, пропорциональное количеству замороженных токенов.
Когда создается нейрон, указываются два ключа. Один из них — «делегат» позволяет нейрону голосовать. Другой ключ — это «мастер», который должен храниться в холодном хранилище и может использоваться для заморозки нейрона и получения его депозита. Нейроны управляются специальным клиентским программным обеспечением, которое обычно устанавливается на пользовательский ноутбук или защищенный сервер и работает в фоновом режиме, постоянно контролируя резидентную часть BNS. Когда пользователь открывает свое клиентское программное обеспечение, оно отображает предложения, хранящиеся в резидентной части блока BNS. В предложениях есть такие темы, как «Экономика», «Политика», «Протокол», «Модернизация клиентов» и другие. Пользователи могут голосовать самостоятельно либо отдать свой голос авторитетной ноде в какой-либо сфере и дать команду программе, голосовать как эта нода. Смысл в том, что никто не может отследить кто за кого голосует, тем самым в принципе устраняя возможность атаки 51%.
Еще одно очень крутое свойство данного решения – это способность «откатывать» систему. Представьте, что некий пользователь обнаружил уязвимость в сети и поспешил ею воспользоваться, чтобы украсть средства. BNS способна на лету обнаружить уязвимость, устранить причину данного бага и что самое важное в результате голосования «откатить» обратно систему и вернуть похищенные средства. Если в других сетях, чтобы провернуть подобное, потребовались бы хардфорки, то здесь это происходит без урона и остановки всей системы. Таким образом, данная сеть становится менее привлекательной для хакеров и имеет более глубокую фундаментальную защиту. В этом и проявляется обновленная парадигма Dfinity «ИИ – это закон». Благодаря этим свойствам BNS в Dfinity нет понятия форков, обновление протокола происходят на регулярной основе, быстро внедряя исправления и оптимизируя сеть, стимулируя её эволюционировать очень быстро.
BNS также динамически управляет экономическими параметрами. Это может быть оптимизация экономики сети, например, за счет увеличения количества замороженных токенов для подключения новых нод, тем самым предотвращая избыток мощностей или для обеспечения безопасности, путем увеличения количества депозитов, необходимых для создания новых нейронов, поскольку курс токенов Dfinity упал на рынках.
Внедрение BNS представляет концепцию среды в киберпространстве, которая управляется алгоритмически без прямых человеческих посредников или контроллеров. Если система заработает, это поможет решить многие проблемы, с которыми мы сталкиваемся сейчас. В конечном счете у BNS есть только одна глобальная цель — защищать, оптимизировать и продвигать сеть Dfinity.
Основные технологии и возможности Dfinity
Помимо интеллектуальной системы управления, в Dfinity также реализованы некоторые интересные решения, оптимизирующие всю сеть. Одним из таких решений является компонент механизма консенсуса Threshold Relay.
- Threshold Relay – новая технология, которая обеспечивает организацию и обработку сети Dfinity. Используя Threshold Relay, участники сети DFINITY создают детерминированную контролируемую случайную функцию, которая абсолютно случайна и не предсказуема. Данная технология использует инновационную криптографическую схему BLS, разработанную в Стэнфорде. Threshold Relay создает специальные маяки, которые позволяют случайным образом выбирать ноды, формируя группу нод для проведения голосований. Именно случайный отбор позволяет обеспечивать безопасность сети. Получается, для транзакций допускаются только те блоки, которые набрали определенный вес в системе. Другие блоки ожидают своей очереди, дальше увеличивая свой вес. Благодаря этому сеть не засоряется мелкими транзакциями, что позволяет ей совершать операции в течении 5-10 секунд. Ниже вы можете увидеть сравнительную таблицу генерации подтверждений блоков и общего времени на совершение транзакции.
- Dfinity decentralization cloud — открытая платформа облачных вычислений, основанная на децентрализованной сети. В действительности, разработчики представляют это как гигантский виртуальный компьютер в киберпространстве, который будет поддерживать корпоративные ИТ- системы, то есть серверы для веб-сайтов, системы управления персоналом, системы управления поставками и другие важные процессы в жизнедеятельности компаний и крупных организаций. По замыслам Dfinity, в итоге должен образоваться массовый рынок автономных предприятий с открытым исходным кодом и децентрализованное финансирование. Это решение должно стать альтернативой централизованным системам, которые управляются технологическими гигантами, такими как Google, Amazon и Microsoft. Вычислительное децентрализованное облако Dfinity представляет собой Интернет 3.0, где Интернет выступает в качестве вычислительного ресурса с новыми свойствами, которые могут запускать бизнес — системы, приложения. Например, сейчас P2P сети подвержены централизации и регулированию, поскольку зависимы от одноранговой сети. Dfinity позволяет обойти ограничения централизации, в результате не будет ни одного сервера, который можно заблокировать и обвалить всю сеть. В первую очередь Dfinity нацелены решить проблему многозатратного человеческого ресурса, которое очевидно при обслуживании существующих систем облачного хранения массивных данных. К тому же, благодаря саморегулирующейся системе BNS облачное хранилище будет надежно защищено от внешних угроз, без нужды в администрировании и человеческих ресурсах.
- PHI – система кредитования, которая позволит создать инфраструктуру децентрализованного кредитования. Dfinity планируют внедрить свои разработки, забрав сектор кредитования у банков. Они предлагают передать эту функцию людям, тем самым обеспечивая абсолютно честную и прозрачную систему. Для устранения риска волатильности криптовалют, они предлагают ввести локальные монеты PHI, которые будут привязаны к курсу той или иной страны. К примеру, в Америке это будет PHI-USD, в России PHI-RUB, а в Еврозоне PHI-EUR. Таким образом все кредиты будут выдаваться и отдаваться в одной валюте. Фактически они предлагают сделать аналог фиатной валюты в цифре и подвязать это в блокчейн — систему кредитования. Представим, что некий пользователь А решил оформить заём. Он прошел верификацию в системе, доказал свою личность и выложил своё предложение на оформление кредита. Кредиторы, или как их называют в системе валидаторы, рассматривают эту заявку и принимают по ней решение. К слову, валидатором может стать любой человек, внесший некий залог в систему, для обеспечения кредитов. Здесь в дело вступает технология Threshold Relay, определяющая случайных пользователей – кредиторов, которые анонимно и без возможности сговора принимают решение по кредиту пользователя А. Если среди них нет единогласия, то пользователю А в кредите будет отказано, а кредиторам, которые в отличие от общей массы кредит ему одобрили, понизят репутацию за плохое решение. Если кредит одобрен составляется несколько смарт – контрактов на исполнение и выплату кредита. В случае невозврата заёмщиком средств, система забирает пропорциональные суммы у кредиторов, активируя дополнительный смарт – контракт, в котором заёмщик должен вернуть средства уже напрямую кредитору, с большими издержками. Честно говоря, не знаю, как это все будет выглядеть в действительности и как кредиторы должны трясти заёмщика в случае невозврата, если он находится где-нибудь в Мексике, к сожалению об этом история умалчивает.
Токены в системе – dfinities
Dfinities — это токены системы, которые будут применяться практически во всех действиях сети. Разработчики выделили четыре основные роли dfinities:
- Топливо для установки и запуска смарт – контрактов.
- Вклады для создания нод, которые смогут участвовать в управлении системой через BNS.
- Вклады для вынесения своих предложений и присоединения к инфраструктуре сети.
- Вклады, которые позволят облачным сетям Dfinity подключаться к общей сети.
Как вы видите, все основные функции и возможности Dfinity будут возможны только через оплату или заморозку токенов. Инфляция в системе возможна, но решение о выпуске новых монет будет приниматься участниками и ИИ BNS совместно, таким образом обеспечивая максимальную ценность токенов.
Стоит здесь добавить и о вышеупомянутых локальных токенах PHI, которые судя по всему станут дополнительными токенами экосистемы. Пока разработчики описали только одну возможную функцию этих токенов – валюта децентрализованного кредитования. Однако, кто знает, возможно PHI станут такими же электронными деньгами как Adv.Cash или WebMoney.
Социальная активность и ICO
Давайте рассмотрим социальные площадки в Интернете, на которых представлен проект и немного проанализируем.
- Twitter аккаунт имеет 21 300 читателей! Это очень солидно, особенно учитывая, что у проекта даже не анонсировано ICO и еще нет готового продукта.
- Блог на Medium имеет небольшую активность. Однако статьи хоть и появляются не часто, но достаточно объемны и имеют интересный познавательный контент. Блогу уже год, а последняя статья вышла 3 марта 2018 года.
- Страничка на Reddit имеет 4426 читателей. Опять же, учитывая только начинающий ажиотаж вокруг проекта это довольно серьезный показатель. К примеру, у Komodo сейчас около 6 000 читателей.
- Telegram канал имеет 25 726 пользователей. Это очень крутой показатель, превышающий количество пользователей многих монет, которые уже давно на рынке. К тому же у проекта есть официальный русскоязычный Telegram канал, в котором также можно следить за новостями.
Что ж, теперь давайте перейдем к самому главному. Когда же ICO?
Вокруг проекта ходит много слухов и доводов, по поводу финансирования и вливающихся средств. Но давайте будем опираться только на официальные заявления руководителей, одно из которых вышло в феврале этого года, на блоге в Medium. В своем посте главный разработчик Доминик Уильямс рассказывает всю историю финансирования проекта и дальнейшие планы.
В феврале 2017 года, незадолго до бума ICO, некоммерческая организация Dfinity Stiftung провела сбор средств, который был ознаменован как «Seed». Этот сбор средств был совершенно открытым, но рекламировался он довольно слабо. Хардкап сбора был ограничен в 1 миллион CHF (швейцарских франков), а деньги были собраны в основном от приверженцев проекта, которые активно следили за ним. Сбор средств проходил в BTC и ETH и через несколько часов после закрытия сборов, благодаря росту курса, у проекта было около 3,9 миллиона CHF (около $4.2 миллиона). Несмотря на быстрый вывод средств в фиат, компания к моменту вывода уже имела около $40 миллионов!!!
Изначально компания пообещала участникам «Seed» провести еще один раунд продаж, который должен был называться «Main» и иметь больший хардкап. Однако неподготовленность к проведению ICO заставила разработчиков отказаться от этой идеи. В итоге компанией было принято решение 24.72% всех будущих токенов распределить пропорционально между инвесторами раунда «Seed».
Летом 2017 года, Polychain Capital – успешный крипто — хедж фонд, связался с основателями Dfinity, после чего началась очень плодотворная совместная работа. Было решено, что Polychain проведет относительно небольшой раунд торгов, а также поможет создать фонд «Dfinity Ecosystem Venture Fund», который будет финансировать проекты, основанные на суперкомпьютере Dfinity, или иным образом поддерживать его. Andreessen Horowitz, один из ведущих фондов венчурного капитала в Силиконовой долине, также присоединился к раунду продаж. На сегодняшний день общее финансирование «Dfinity Ecosystem Venture Fund», превышает $100 миллионов.
Как мы видим у проекта все в порядке с финансированием и в данный момент это их не первоочередная задача, однако все-таки кое-какая информация есть.
Несмотря на все вышесказанное, в компании стремятся сделать проект народным и дать возможность людям поучаствовать в нем. В связи с этим было анонсировано два этапа. Первый этап — это привлечения участников, на этом этапе все желающие должны будут пройти строгие процедуры KYC и AML, описанные финансовым регулятором FINMA, с некоторыми возможными географическими ограничениями. Второй раунд это непосредственно само ICO. Но как я понял из статьи, это будет некий pre-sale. То есть далеко не последняя возможность поучаствовать в продажах.
В общем, на сегодняшний день все ждут анонса записи в whitelist и проверках KYC, чтобы потом иметь возможность поучаствовать в неком pre-sale. Что именно это будет, с каким хардкапом, по какой цене и прочие подробности не известны. В сети появилось много мошенников, которые представляются разработчиками Dfinity и собирают деньги на якобы закрытую продажу токенов. Будьте внимательны! Все новости обязательно выйдут на официальных каналах и на Топовом Блоге. Следите за нашими новостями!
Давайте подведем итоги. В данный момент у Dfinity запущена тестовая сеть, а запуск первой версии сети ожидается в конце второго квартала 2018 года. К сожалению разработчики не указывают срок, когда они планируют полностью внедрить свои разработки, однако мне кажется это будет не раньше, чем конец 2019 года. Что касается остального, у компании есть около 20 активных членов команды, которые являются очень крутыми специалистами в различных областях. Есть финансирование и вполне понятная, перспективная идея. Хоть они упорно открещиваются от возможной конкуренции с Ethereum, однако я считаю это неизбежно. И если к моменту запуска финальной версии, Виталик Бутерин не усовершенствует свою сеть, очень вероятен переход многих проектов именно на Dfinity.
Как знать, возможно сегодня мы рассмотрели новый Ethereum, и через каких-то пару лет мы увидим Dfinity на первых строчках капитализации. Я уверен, если ICO будет доступным, проект Dfinity однозначно должен быть в вашем портфеле, ведь эти токены подойдут как спекулянтам, так и холдерам
Суть и смысл
Прежде чем углубляться в то, как работает «нервная система» DFINITY, рассмотрим некоторые из событий и потребностей, которые привели к её созданию.
1. Mt. Gox, Bitfinex и другие случаи хищения токенов
Я считаю, что истории c Mt. Gox и Bitfinex – заслуженные шрамы для криптографического сообщества, однако из них необходимо сделать выводы. На мой взгляд, взлом Bitfinex, безусловно, был хуже всех. Сегодня, с помощью программ анализа блоков, можно наблюдать за движением украденных биткойнов на сумму более 100 млн долларов по блокчейну, но прежним владельцам их вернуть невозможно. Между тем, Bitfinex даже не опубликовали анализ безопасности с объяснением произошедшего, что дурно пахнет, однако кто знает, что произошло на самом деле. Дело в том, что, при хищении большого количества токенов из систем, работающих по принципу «код есть закон», как Биткойн или Эфириум, единственный способ исправить эту ситуацию – это хард-форк из предшествующей краже точки. Но это, как правило, слишком сложно исполнить, либо оборачивается причинением значительного ущерба сообществу.
Это серьёзная проблема. Позволяя похитителям сохранять и реализовывать такие богатства, мы взращиваем паразитические сообщества хорошо обеспеченных ресурсами хакеров. Если моральные качества у вас в дефиците, а необходимых технических навыков, наоборот, достаточно, то кража токенов криптовалют – таких, как биткойны, – фантастически прибыльное дело, и число атак со временем растёт.
По этой причине я пришёл к выводу, что децентрализованные сети нуждаются в способах смягчения последствий подобных краж без привлечения человеческих посредников, таких, как фонды, комитеты, конгломераты майнеров или любые другие формы непосредственного контроля человека, противоречащие и враждебные ценностям открытых сетей на основе блокчейна, и такие сетевые механизмы должны существовать в дополнение к прочим методам укрепления безопасности, как, например, аппаратные кошельки Ledger. Если мы сможем снизить доходность хищений, хакеры будут выделять на это меньше ресурсов и количество взломов снизится. С помощью таких резидентных механизмов сети можно было бы также попытаться вернуть украденные токены.
Ясно, что Blockchain Nervous System (BNS), с привилегированным правом контроля принадлежности токенов, может служить по крайней мере одной цели.
Примечание: О нескольких дополнительных опциях, которые следует внедрить для того, чтобы максимизировать эффективность BNS в возврате похищенных средств, мы расскажем в следующих постах.
2. DAO и уязвимые системы
Кто бы что сейчас ни говорил, DAO, несомненно, был одним из самых захватывающих финансовых экспериментов в истории. Люди со всего мира инвестировали токены в децентрализованный фонд, расположенный в киберпространстве. В общей сложности, этот фонд собрал 14 % всего эфира, существовавшего на тот момент, одновременно продемонстрировав, насколько огромным может стать спрос на ETH, и, вместе с тем, создав огромный риск для экосистемы. Однако я тогда был в лагере скептиков – не потому, что я не верил в концепцию DAO как таковую, а потому, что структура проекта содержала многочисленные недочёты с точки зрения теории игры, достаточно очевидные для разработчика протокола (несколько старых постов: 1, 2, 3). И всё же, губительными оказались не эти тонкие недостатки, но куда более прозаичные ошибки в коде: в программное обеспечение DAO был включён непроверенный код, не учитывающий возможность атак повторного входа.
Будучи и сам причастным к проекту, я много думал о том, что произошло. Для меня стали очевидными три вещи. Во-первых, сообществу разработчиков потребуется много времени на то, чтобы в полной мере справиться со многими из дополнительных трудностей, возникающих при проектировании автономных систем с помощью смарт-контрактов, и в некоторых важных системах неизбежно будут обнаруживаться изъяны. Во-вторых, трудноразрешимость потенциальных проблем станет препятствием к построению открытых компьютерных сетей важной частью бизнес-сообщества, так как лица, ответственные за принятие решений, захотят увидеть средства исправления и возвращения контроля над важнейшими системами, которые были взломаны или работа которых была блокирована. В третьих, вероятно, несправедливо оставлять массового потребителя без поддержки в решении проблем, вызванных недостатками в коде автономных смарт-контрактов, который они даже не могут прочесть.
Ко времени взлома DAO, концепция Blockchain Nervous System уже приняла достаточно ясные очертания, а после взлома работа над ней ускорилась многократно. Пользуясь привилегированным доступом к сети, BNS может инициировать исполнение произвольного кода с целью исправления взломанных систем, таких, как DAO.
3. Ускоряющаяся эволюция
Несколько лет назад я запустил MMO (массовую многопользовательскую онлайн) игру. Со временем, количество пользователей в ней достигло трёх миллионов. Я тогда жил в Великобритании, а не в Пало-Альто, и хотя, в конце концов, мне удалось привлечь венчурные инвестиции (после достижения отметки в миллион пользователей), всю работу на раннем этапе проделал я с небольшой командой, практически без денег. Ввиду ограниченности ресурсов, наши действия были обусловлены необходимостью продвигаться в наших исследованиях настолько эффективно, насколько это возможно, и горизонтально масштабировать наши технические системы предельно экономно и только в случае необходимости. В отношении исследовательской работы это означало, что, по большей части, мы были вынуждены полагаться на непроверенные решения и выкатывать значительные изменения без всестороннего тестирования и вспомогательных серверов.
Большой проблемой было то, что в каждый момент времени в нашей многопользовательской игре находилось много тысяч людей, которые, с помощью клиентских приложений, подключались к виртуальному кластерному серверу, работающему на собственной системе под названием Starburst. Иногда мы готовили по несколько релизов клиентских и серверных компонентов в день, и наши пользователи с нетерпением ждали каждой новой итерации, так что быстрое развитие стало одним из наших преимуществ. Для того, чтобы достичь этого без ущерба для игрового процесса, не сломав сеть и не сделав подключение невозможным, что было бы совсем плохо, в Starburst были предусмотрены внутренний и внешний протоколы. Внутренний протокол содержал игровые команды и функционал и регулярно изменялся. Внешний протокол был намного более стабильным и отвечал за доставку сообщений, RPC и управление версиями программного обеспечения, позволяя откатывать неудачные релизы и обеспечивая для пользователей плавный переход между итерациями без прерывания игрового процесса. Этот опыт вполне релевантен для решения задач, связанных с массовым распространением передовых сетей на основе блокчейна.
Видя трудности, с которыми сталкивается протокол Биткойна, я могу сказать, что это не тот путь, по которому может идти развитие сети DFINITY. DFINITY неизбежно предполагает намного более сложные распределённые протоколы и проектирование, и если мы хотим достичь нашей цели в срок, разработчикам нужно выходить за рамки обычных представлений о подготовке и выпуске версий. Более того, в случае возникновения проблем, таких, как недавние DOS-атаки на Эфириум, DFINITY лучше поддержит массовый рынок, быстрее приняв смягчающие действия, направленные на исправление ситуации.
Blockchain Nervous System может помочь нам решить эти задачи посредством управления протоколом и обновления программного обеспечения. Базовую реализацию сделать достаточно просто. Вместо того, чтобы подключать Dapps к Geth или Parity (два популярных клиента для Эфириума) напрямую, DFINITY добавляет между ними специальное программное обеспечение для инвертированного прокси-сервера и подключает Dapps к нему. Прокси получает сигналы от Blockchain Nervous System и следует его командам в отношении обновлений протокола. Когда блокчейн решает, что в некоем будущем блоке должно произойти обновление, он загружает инсталлятор клиентского программного обеспечения из сети BitTorrent, IPFS или Swarm по указанному хэшу. В нужный момент прокси временно накапливает запросы в буфере и автоматически обновляет клиентское приложение, не прерывая работы связанных с ним Dapps и не мешая их пользователям (факт обновления и его содержание от пользователей не скрываются).
Конечно, обновления BNS потребуют намного больше внимания, чем мы уделяли релизам моей MMO-игры. Серьёзные ошибки могут повлиять на состояние виртуального компьютера, а также на способность BNS принять решение об откате на последнюю рабочую версию. Тем не менее, поскольку «нервная система» DFINITY действует в пределах соответствующих допусков, мы делаем ставку на то, что обеспечение регулярных и прозрачных обновлений протокола без спорных хард-форков побудит разработчиков DFINITY осуществлять эволюцию значительно быстрее.
4. Больше безопасности и улучшенная экономика
Традиционные децентрализованные сети, такие, как Биткойн и Эфириум, включают простые экономические модели. Общий объём эмиссии их токенов фиксирован протоколом абсолютно или приблизительно, и майнеры конкурируют за токены вознаграждения через применение прямых вычислений «грубой силы», случайным образом выигрывая право публиковать блоки транзакций. Поскольку конечный объём и скорость новой эмиссии фиксированы и определены протоколом, цена токена в первую очередь отражает изменение спроса. В настоящее время природа спроса носит, главным образом, спекулятивный характер, и рост цены порождает новый спрос и страх остаться не у дел, и так по кругу. Баланс между корыстью, страхом и эмиссией токенов крайне нестабилен и вызывает циклические, но непредсказуемые эпизоды подъёма и падения цены.
В то время как участие систем Proof-of-Work (PoW) фундаментально опосредовано стоимостью электроэнергии, участие систем Proof-of-Stake (PoS) опосредовано стоимостью приобретения токенов сети. Проблема заключается в том, что, в то время как стоимость электроэнергии относительно стабильна, стоимость приобретения токенов сети буйно скачет вместе с их рыночной стоимостью. В квази-PoS системах, таких, как DFINITY, клиентские приложения для майнинга подключаются к сети, используя «майнинговое удостоверение», приобретаемое путём размещения залогового депозита в токенах. Опасность заключается в том, что, если во время обвала рынка цена токена резко падает, оппонент может недорого и более или менее безопасно контролировать сеть путём создания достаточного количества сущностей, обладающих «майнинговыми удостоверениями». В действительности, он мог бы даже намеренно вызвать обвал рынка с такой целью.
Колебание в цене родного токена сети представляет собой многоплановую проблему безопасности даже для сетей с PoW-доказательством, так как это влияет на стимулы участников сети. Мы считаем, что DFINITY имеет уникальную способность решать эти давние проблемы с помощью Blockchain Nervous System. Пользуясь привилегированным доступом к внутренним компонентам сети, BNS, по сути, может динамически изменять любые экономические параметры. Например, если цена токенов DFINITY резко падает, система может увеличить размер требуемого залогового депозита, а если ситуация не изменится, она может также увеличить вознаграждение за майнинг с целью повышения собственной устойчивости. Теоретически, она может даже предотвратить избыток майнеров, сократив выдачу новых «удостоверений» и собрав заявителей в пул ожидания.
Как мы увидим, в основе решений, принимаемых Blockchain Nervous System, лежит цель увеличения стоимости токенов участия в сети DFINITY. Ожидается, что невидимая рука рынка будет побуждать её к принятию максимально взвешенных решений в отношении безопасности, масштабирования сети и эмиссии токенов. По оценкам, система станет намного эффективнее, включая точно необходимые вычислительные мощности и сокращая выпуск токенов, повышая таким образом их стоимость и безопасность сети по сравнению с традиционными моделями.
5. Убийство рынка заказных убийств и пр.
Автономные системы на основе блокчейна, построенные при помощи смарт-контрактов, станут самыми мощными технологическими структурами в истории, сделав возможным перепроектирование важнейших структур, таких, как Uber и массовая передача сообщений в открытой форме без посредников. По сути, они дают возможность перенести важнейшие бизнес-функции, такие, как экономика совместного потребления, с имеющих географическую привязку посредников в киберпространство и сеть Интернет. Это несёт в себе невероятные потенциальные выгоды для всего мира, однако автономные системы также и потенциально опасны, и опасность, которую они несут, может поставить под угрозу существование поддерживающих их сетей.
Взять, например, рынки заказных убийств. Некоторые радикальные криптоанархисты выступали в их поддержку, говоря о том, что наличие таких рынков может удерживать под контролем поведение людей в децентрализованном мире. Лично я с этим не согласен. На мой взгляд, куда более вероятно, что они будут использоваться злыми людьми просто для устранения конкурентов. Но какого бы мнения вы не придерживались, в одном можно быть уверенным: правительства будут жёстко реагировать на подобные вещи, включая невольничьи рынки ИГИЛ (организация запрещена территории РФ), сервисы обмена детской порнографией и другие очевидно отвратительные вещи. Как разработчики протокола, мы стремимся создать сеть, которую невозможно остановить, чтобы она выдержала атаку даже правительственных спецслужб, однако сам факт существования такого рода систем может спровоцировать принятие согласованных международных ограничительных мер, что значительно снизит способность открытых блокчейнов быстро воплотить в жизнь свой невероятный потенциал.
Blockchain Nervous System предлагает решение этого противоречия. Напомню, что главная цель BNS заключается в максимизации стоимости токенов участия в сети DFINITY, таким образом, ею движет невидимая рука рынка. Имея абсолютный контроль над сетью, она может блокировать работу размещённых на ресурсах сети систем, которые, по данным BNS, причастны к атакам, подвергать их пользователей чрезвычайному регуляторному давлению либо исключать массовых пользователей из совместного хостинга. Решения будут основываться на компромиссах. Если BNS будет вести себя чересчур ограничительно, слишком непредсказуемо или деспотично, несправедливо закрывая маргинальные системы, многие пользователи откажутся от участия в сети. Мы делаем ставку на то, что рука рынка поможет DFINITY находить оптимальный баланс.
Описание ICO DFINITY
DFINITY — это общедоступная сеть клиентских компьютеров, обеспечивающая «децентрализованное глобальное вычислительное облако», где программное обеспечение может быть установлено и запускаться со всеми обычными преимуществами, ожидаемыми от систем «умного контракта», размещенных на традиционной блочной цепочке
Основная информация о ICO DFINITY
Категория: Облачное хранение данных
Сайт: https://dfinity.org/
Страна команды: США
Подробная инфа: WhitePapper
Видео о ICO DFINITY
Социальные сети ICO DFINITY
Информация о токене TBA
Тикер: TBA
Даты продаж: 12.02.2017 — 13.02.2017
Тип токена: Own wallet
Доступно к продаже: 4%
Мин. цель сбора: 1 000 000 USD
Макс. цель сбора: 1 000 000 USD
Собрано средств на Pre-ICO: 4 000 000 USD
Валюты: ETH
Эфириум – это общедоступная база данных с возможностью хранения цифровых транзакций в течение неограниченного времени.
Важно также отметить, что для обслуживания и защиты такой базы данных не требуется каких-либо систем управления ключами. Вместо этого данная платформа работает как «беззащитная» транзакционная система – фреймворк, в котором физические лица могут совершать одноранговые транзакции, при этом ни одна из сторон не несет перед другой или третьей сторонами каких-либо обязательств.
Я не удивлюсь, если вы мало что поняли. Собственно, цель данной статьи – объяснить, каким образом блокчейн Эфириум функционирует на техническом уровне, не прибегая для этого к сложным математическим расчетам или ужасающим своей величиной формулам. Даже если вы и не программист, у меня есть полная уверенность в том, что данная статья поможет вам понять принципы технологии Эфириума. И даже если некоторые части данной статьи будут напичканы техническими определениями, которые могут показаться вам чересчур сложными для восприятия, вам не стоит отчаиваться, ведь ее цель – донести до вас понимание данной платформы в целом, не вдаваясь в технические и математические тонкости.
Многие из тем, затронутых в данной статье, представляют собой разжевывание тех основных понятий, с которыми вы, вероятно, уже не раз сталкивались, читая yellow paper (от англ. «желтая бумага» – официальная спецификация для Эфириума). Мною были добавлены собственные пояснения и диаграммы для того, чтобы вы как можно быстрей разобрались с данной технологией. Ну, а для самых храбрых и технически подкованных я могу посоветовать прочтения Ethereum yellow paper.
Что такое блокчейн
Блокчейн – это криптографически безопасная транзакционная одноэлементная система с общим состоянием. Далеко не самое простое определение, не так ли? Давайте разобьем каждую составляющую этого определения на отдельные части.
- «Криптографически безопасный» означает, что безопасность криптовалюты обеспечивается сложными математическими алгоритмами, которые практически невозможно обойти. Защита, выстроенная с помощью данных алгоритмов, представляет собой подобие файрвола: благодаря используемым алгоритмам обход системы безопасности практически невозможен (например, невозможно создание поддельных транзакций, уничтожение транзакций и т. д.).
- «Транзакционная одноэлементная система» означает, что существует только одно заданное состояние системы, благодаря которому происходят все транзакции, создаваемые в данной системе. Другими словами, для данной системы предусмотрено только одно состояние, которое является единственно верным.
- «С общим состоянием» означает, что состояние, заданное в системе, является общим и открытым для всех.
Таким образом, в платформе Эфириум реализуется приведенная выше парадигма блокчейна.
ПАРАДИГМА БЛОКЧЕЙНА ПЛАТФОРМЫ ЭФИРИУМ
Блокчейн Эфириум является, по сути, системой состояния транзакций. В информатике такое понятие, как «система состояний» или «машина состояний» – это система, которая обрабатывает вводимую информацию и на основании последней преобразуется в новое состояние.
В машине состояний Эфириума все процессы начинаются с «первоначального состояния». Такое состояние представляет собой аналог нулевого состояния, в котором находится машина до того момента, как в ее сети начнут происходить какие-либо действия, связанные с транзакциями. Когда такие действия начнут происходить, первоначальное состояние заменяется на конечное, при этом в любой момент времени конечное состояние отображает текущее состояние Эфириума.
Состояние Эфириума имеет миллионы транзакций. Эти транзакции сгруппированы в «блоки». Блок содержит ряд транзакций, при этом каждый последующий блок соединен с предыдущим, благодаря чему обеспечивается своеобразная цепочка блоков.
Транзакция должна быть корректной, для того чтобы вызвать ее переход из одного состояния в другое. Транзакция считается корректной только тогда, когда она прошла процесс проверки – так называемый «майнинг». Майнинг — это когда группа узлов (компьютеров) расходует свои вычислительные ресурсы для создания блока корректных транзакций.
Любой узел в сети, объявляющий себя майнером, может попытаться создать и проверить блок транзакций. Распространенным опытом является попытки множества майнеров одновременного создания и проверки блока транзакций. Каждый майнер предоставляет свое математическое «доказательство» при отправке блока в блокчейн, и это доказательство выступает в роли своеобразной гарантии: в случае если доказательство существует, транзакции в блоке считаются корректными.
Майнер должен предоставить свое математическое доказательство быстрее, чем это сделает любой другой конкурент, для того чтобы его блок был добавлен в основной блокчейн. Процесс проверки каждого блока, который заключается в предоставлении майнером своего математического доказательства, называется «доказательством работы».
Майнер, который обосновывает новый блок, получает определенное вознаграждение за выполнение этой работы. О каком вознаграждении идет речь? В блокчейне Эфириума используется встроенный цифровой токен, который носит название «эфир» (от англ. ether— «эфир»). Каждый раз, когда майнер обосновывает свой блок транзакций, создается новый токен или новый эфир, а майнер получает вознаграждение за его создание.
Тогда, у вас может возникнуть вполне логичный вопрос: где гарантия того, что каждый майнер будет придерживается только одной цепочки блоков? Как мне убедиться в том, что другая команда майнеров не решит создать свою собственную цепочку блоков?
В самом начале данной статьи мы уже приводили такое понятие как «транзакционная одноэлементная система с общим состоянием». Исходя из такого определения можно сделать вывод, что не бывает двух и более корректных текущих состояний – оно является единственным в своем роде. Таким образом, каждый, кто принимает участие в процессе обоснования новых блоков, должен принять это утверждение за истину. Наличие нескольких состояний (или цепей) разрушило бы всю систему, потому что было бы невозможно договориться о том, какое из состояний является корректным. Например, представим, что существовало бы несколько цепочек блоков. Тогда, в теории, вы могли бы собрать 10 монет на одной цепочке, на другой – 20 монет, на третьей – 40 монет и т.д. В таком случае было бы невозможно определить, какая цепь является наиболее «корректной».
Всякий раз, когда генерируются несколько путей, возникает «разветвление». Зачастую, разветвления очень нежелательны, поскольку они нарушают целостность системы, а пользователям приходится выбирать одну из возможных цепочек.
Чтобы определить, какой из возможных путей является корректным, и предотвратить образования множества цепей, в Эфириуме применяется метод, называемый «протокол GHOST».
GHOST – «Жадное-и-Самое-Весомое-из-Известных-Дочерних-Деревьев» (Greedy Heaviest Observed Subtree)
Попробую объяснить простыми словами: протокол GHOST объявляет, что мы должны выбрать только тот путь, на котором было выполнено наибольшее число вычислений. Для определения такого пути можно использовать номер того блока, который был определен последним («листовой блок»). Благодаря такому подходу можно определить общее число блоков, находящихся в текущем пути (без учета блока первоначального состояния). Чем выше находится блок, тем длиннее путь и тем больше обоснований должны предоставить майнеры. Исходя из таких соображений, принимается единственно верная версия для текущего состояния.
Теперь, когда вы уже имеете представление о том, что такое блокчейн, я предлагаю разобраться с основными компонентами, из которых состоит система Ethereum:
- учетные записи
- состояние
- горючее о вознаграждение
- транзакции
- блоки
- выполнение транзакций
- майнинг
- обоснование
Небольшое отступление перед тем, как мы начнем: при упоминании хэша X имеется ввиду хэш KECCAK-256, используемый в Эфириуме.
Учетные записи
Глобальное общее состояние платформы Эфириум состоит из множества небольших объектов – учетных записей, которые взаимодействуют между собой за счет парадигмы обмена сообщениями. У каждой учетной записи есть определенное состояние и 20-байтовый адрес. Адресом в Эфириум является 160-битный идентификатор, используемый для идентификации любой из учетных записей.
Всего существует два вида учетных записей:
- Внешние учетные записи, контролируются с помощью закрытых ключей. При этом такие записи не имеют никакого кода, связанного с ними.
- Контрактные учетные записи, контролируются специальным кодом, указанным в условиях контракта, и имеющие связанный с ними код.
Внешние и контрактные учетные записи
Давайте разберемся с основными отличиями между внешними и контрактными учетными записями. Для внешней учетной записи предусмотрена возможность отправлять сообщения другим внешним учетным записям, а также другим контрактным учетным записям. Для данной цели необходимо создать и зарегистрировать новую транзакцию, используя закрытый ключ. Сообщение между двумя внешними учетными записями является всего лишь значением для передачи. С другой стороны, сообщение, отправленное от внешней учетной записи к контрактной, подразумевает активацию кода контрактной учетной записи, при этом появляется возможность совершения определенных действий (например, с помощью такого сообщения можно переводить токены, записывать значения во встроенную память, создавать токены, выполнять некоторые вычисления, создавать новые контракты и т. д.).
С помощью контрактных учетных записей, в отличие от внешних, самостоятельно инициировать новые транзакции невозможно. Вместо этого с помощью контрактных учетных записей можно только запускать транзакции в ответ на другие полученные транзакции (например, полученные из внешней учетной записи или из другой контрактной учетной записи). Более подробно о вызовах между контрактными учетными записями мы остановимся в разделе «Транзакции и сообщения».
Каждое действие в блокчейне Эфириума происходит благодаря транзакциям, инициируемым внешне контролируемыми учетными записями.
Состояние учетных записей
Состояние каждой из учетных записей, вне зависимости от их типа, может принимать одно из четырех значений:
- nonce: Если настоящая учетная запись соответствует внешней учетной записи, то полученное число представляет собой количество транзакций, которые были отправлены с адреса учетной записи. Если учетная запись является контрактной учетной записью, то элемент nonce – это количество контрактов, созданных в данной учетной записи.
- balance: общее количество wei, приобретенных данной учетной записью. Например, каждый эфир, который является обменной единице Эфириума, содержит 10^18 wei – дробных частей эфира.
- storageRoot: хэш корневого узла префиксного дерева Меркла (что собой представляет дерево Меркла мы рассмотрим немного позже). Дерево Меркла кодирует хэш содержимого данной учетной записи, при этом по умолчанию оно является пустым.
- codeHash: хэш EVM-кода (от англ. Ethereum Virtual Machine; что это такое я расскажу немного позже) учетной записи. Для контрактных учетных записей данное поле является кодом, который хэшируется и хранится в виде codeHash.
Общее состояние системы
Итак, мы разобрались, что глобальное состояние Эфириума – это сопоставление адресам учетной записи состояний счета. Это сопоставление хранится в структуре данных – префиксного дерева Меркла.
Дерево Меркла (или «Merkle trie») представляет собой тип двоичного файла, состоящего из набора узлов, которые включают:
- определенное количество листовых узлов, которые располагаются в нижней части дерева, содержащего базовые данные;
- набор промежуточных узлов, при этом каждый узел представляет собой хэш двух его дочерних узлов
- один корневой узел, также образованный из хэша двух дочерних узлов, который представляет вершину дерева
Данные, находящиеся в нижней части дерева, создаются путем разделения тех данных, которые мы хотим сохранить, на отдельные фрагменты. Далее такие фрагменты размещаются в корзинах хранения данных, после чего происходит их хэширование и аналогичный процесс повторяется до тех пор, пока общее число хэшей не будет равно единице или корневому хэшу.
Для каждого значения, хранящегося внутри данного дерева, вам потребуется ввести определенный ключ. Для получения соответствующего значения, хранящегося в листовых узлах, вы должны получить команду ключа: цепочки какого дочернего узла необходимо придерживаться. Что касается Эфириума, то отображение ключа/значения, необходимого для дерева состояний, находится между адресами и связанными с ними учетными записями, в том числе balance, nonce, codeHash, а также storageRoot для каждой из учетных записей, при этом storageRoot является деревом.
Подобная структура префиксного дерева также может применяться для хранения как транзакций, так и страницы приема оплаты. Если останавливаться на этом более подробно, то каждый блок имеет так называемый «header» или заголовочный файл, в котором хранится хэш корневого узла трех разных структур дерева Меркла, в том числе:
- Состояние префиксного дерева
- Транзакции префиксного дерева
- Страницы приема оплаты для префиксного дерева
Возможность эффективного хранения данной информации в префиксном дереве Меркла Эфириума является невероятно практичным решением для так называемых тонких клиентов или тонких узлов. Необходимо также отметить, что поддержка блокчейна осуществляется с помощью набора узлов. Простыми словами: всего существует два вида узлов: полный и тонкий.
Полный узел архива выполняет синхронизацию блокчейна с помощью загрузки всей цепочки от блока первоначального состояния до текущего блока, содержащего заголовочный файл, при этом происходит выполнение всех располагающихся в нем транзакций. Как правило, майнеры хранят полный узел архива, поскольку без последнего у них не будет возможности участвовать в процессе майнинга. Кроме того, вы также может загрузить полный узел, при этом в выполнении каждой отдельной транзакции нет необходимости. Также стоит отметить, что каждый полный узел всегда содержит полную цепочку.
В том случае если для узла нет необходимости выполнять каждую отдельную транзакцию или запрашивать накопленные данные, то хранение полной цепочки может оказаться излишним. Именно в данном случае мы сталкиваемся с таким понятием как тонкий узел. Вместо загрузки и хранения полной цепочки, а также выполнения всех транзакций, тонкие узлы загружают только цепочку заголовочных файлов из блока первоначального состояния в текущий заголовок, при этом не происходит выполнения каких-либо транзакций. Поскольку у тонких узлов имеется доступ к заголовкам блоков, содержащих хэш трех префиксных деревьев, они могут с легкостью создавать и получать соответствующие ответы, касающиеся транзакций, событий, баланса и т.д.
Хэш в дереве Меркла распространяется от нижних ветвей к верхним, и если злоумышленник попытается заменить оригинальную транзакцию на поддельную в нижней части дерева Меркла, то это приведет к изменению хэша верхнего узла, а это, в свою очередь, приведет к изменению хэша располагающегося над ним узла и так до тех пор, пока, в конечном итоге, это не приведет к изменению корня.
Любой узел, для которого требуется проверка какой-либо части данных, использует так называемое «доказательством Меркла». Последнее состоит из:
- Фрагмента данных, который должен быть проверен
- Корневого хэша дерева
- Так называемой «ветви» – всех хэшей, от проверяемого фрагмента данных до корня.
Каждый пользователь, считывающий такое доказательство, может проверить, является ли хеширование для определенной ветви соответствующим на всем участке дерева, а также занимает ли данный фрагмент соответствующее положение в этом дереве.
Таким образом, можно сделать вывод, что преимущество применения префиксного дерева Меркла заключается в том, что корневой узел данной структуры является криптографически зависимым от данных, хранящихся в дереве. Следовательно, хэш корневого узла может быть использован в качестве безопасного идентификатора для этих данных. Ввиду того, что в заголовок блока включен корневой хэш деревьев, а также их состояния, транзакции и информацию о приходе оплаты, любой из узлов может проверять ту или иную часть состояния Эфириума без необходимости хранения всех состояний, которые могут быть потенциально неограниченным по размеру.
Горючее и вознаграждение
Одним из важных моментов в системе Эфириума является процесс оплаты. За любое вычисление, осуществляющееся в результате проведения операций с транзакциями внутри сети Эфириума, берется определенная плата. Номинал данной оплаты носит название «горючее» (от англ. gas).
Горючее – это единица измерения, которая используется для определения размера оплаты по конкретному вычислению. Цена на горючее – это количество «эфира», которое вы способны потратить на каждую единицу горючего. Измеряется цена на горючее в «gwei». Wei является самой маленькой единицей эфира, где 1018 Wei –это всего 1 эфир. Один gwei равен 1 000 000 000 Wei.
Для проведения любой транзакции отправитель должен установить лимит горючего, а также цену на горючее. Цена на горючее и лимит горючего – это максимальная сумма в Wei, которую отправитель готов заплатить за проведение транзакции.
Давайте представим, что отправитель устанавливает лимит горючего в 50 000 gwei, а цену на горючее – в 20 gwei. Это значит, что отправитель готов потратить не более 50 000 х 20 gwei = 1 000 000 000 000 000 Wei или 0,001 эфира для проведения данной транзакции.
Таким образом, лимит горючего – это максимальное количество горючего, которое отправитель готов оплатить. В том случае если на балансе его счета достаточно эфира для покрытия данного максимума, то отправитель может проводить транзакции. Кроме того, отправителю возмещаются любые убытки, связанные с неполным использованием горючего по завершении транзакции, при этом горючее будет обменяно по первоначальной ставке.
В том случае, если отправителем не было предоставлено необходимого количества горючего для проведения транзакции, последняя будет проведена «без горючего» и будет считаться недействительной. Таким образом, проведение транзакции прерывается, а любые изменения состояния аннулируются, вследствие чего система Эфириум возвращает участников сделки в первоначальное состояние. Стоит отметить, что информация о такой неудавшейся транзакции записывается в системе, так что вы можете отследить, проведение каких транзакций было проведено и на каком этапе произошел сбой. И что также немаловажно: поскольку до того момента, как у отправителя закончилось горючее, машиной уже были затрачены определенные усилия для выполнения расчетов, логично было бы предположить, что убытки, связанные с расходованием горючего, уже не будут возмещены отправителю.
«Куда именно я отправляю горючее?» — спросите вы. Итак, все деньги, которые были потрачены на приобретение отправителем горючего, отправляются на адрес бенефициария, который в большинстве случаев является адресом майнера. Поскольку майнеры выполняют расчеты и проверку транзакций, то именно они получают плату за горючее в качестве вознаграждения.
Как правило, чем выше стоимость горючего, которую отправитель желает оплатить, тем выше оплата, получаемая майнером в результате проведения транзакции и, кроме того, тем более вероятно, что майнер сделает свой выбор в ее пользу. Таким образом, майнеры свободны выбирать, валидацию каких транзакции они желают осуществить, а какие транзакции им стоит проигнорировать. Зачастую, майнеры сообщают отправителям, какую цену им стоит задать для горючего, для того чтобы первые были готовы выпо