Ivan on Tech: с техническим советником Fantom Foundation Andre Cronje

Превью: Наша редакция следит за развитием проекта Fantom с самого его старта. В сети мало информации о его развитии, помимо основных каналов блог, твиттер и канала в Телеграмм. Для нас было неожиданностью интервью технического советника Andre Cronje и CIO проекта Michael Kong популярному блокчейн обозревателю Ivan on Tech. Для большего понимания их беседы мы подготовили перевод, надеемся он прольет больше света на Fantom Foundation.

Видео — интервью на Английском:

Ivan on Tech:

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

Я думаю, что вы будете довольны, и вы узнаете много нового, в то же время вам не обязательно быть гением, программистом или доктором философских наук, чтобы понять, разобраться в этом сможет каждый и вам следует знать, что: 1) это видео спонсируется, 2) это видео не финансовый совет, надеюсь, вам понравится оставьте лайк, если вам понравилось, и дайте мне знать в разделе комментариев, что вы думаете о Fantom, о их подходе в реализации проекта. Также если у вас есть вопросы оставляйте их в комментариях и Fantom ответят на них, так что наслаждайтесь и увидимся на другой стороне.

Удивительно, у нас тут технический советник Андре Кронье (Andre Cronje) и директор по информационным технологиям Майкл Конг (Michael Kong). Мы собираемся поговорить о Fantom, так что в первую очередь можете просто сказать нам, что делает Фантом и как он отличается от других блокчейн платформ и проектов?

Andre Cronje:

Спасибо за то, что нас пригласил. Я извиняюсь и за себя, и за Майка, мы малословные люди, так что если местами нужно добавить информации или объяснения, просто дайте нам знать. Люди, знают, почему они удивительны, почему они разные, что лучше, бла бла бла

Давайте перейдем к вашему вопросу. Что такое Fantom и что он делает: Ядро Фантома — это новый блокчейн – консенсус механизм, скажу новый со звездочкой, подмечу что это не является новым в концептуальном плане, это переосмысление кучи старых идей. Много людей в этом плане очень заблуждаются, они думают, что изобрели новые решения или технологии. Вы знаете, мы каждые несколько дней видим новые документы по консенсусу или новые структурированные документы, а потом все сходят с ума в том плане, что как чудесно, эта новая идея… когда большая часть распределенной технологии приходит к нам из прошлого, ранних 1980-х годов, где уже были работы от Lamport (сноска на википедию) заложившие основание.

Fantom конкретно выглядит на ABFT пространство, так что это асинхронная Византийская отказоустойчивость (Byzantine fault-tolerance), конкретно, как вы знаете, традиционные системы вы посмотрите, например, на Paxos, фантастический механизм консенсуса в энергонезависимой среде, которая обращается к проблеме византийских генералов (Byzantine generals). Теперь одна проблема, вы имеете дело со стандартом BFT, с накладными расходами связи, в том, чем больше узлов вы добавите, тем дольше все узлы будут подтверждать связь, потому что стандартная потребность BFD проводить несколько раундов, в которых он просит все из нынешних участников подумать об этом, ждет ответов, он также получает ответы, чтобы просто убедиться, а затем только вы достигнете цели.

Ivan on Tech:

Так просто уточнить для аудитории. Когда мы говорим о BFD мы говорим о том, что в сети, такие как Bitcoin, как другие криптосети. Часто у вас есть участники сети и они неизвестны, кто-нибудь может присоединяйтесь и будет участником сети, и проблема, которую мы пытаемся решить, выражена в том что у нас могут быть люди, которые попытаются разрушить сеть, которая у нас может быть, люди, которые пытаются отправить ложное сообщение (транзакцию) и вы не можете доверять всем в сети и так алгоритмы BFD и механизм консенсуса попытаться прийти к консенсусу (соглашению сторон), несмотря на то, что мы возможно имеем противников в сети. Будет ли это правильным резюме, Андре и согласны ли вы с этим?

Andre Cronje:

Да, это верно. Только одна сущность может быть не только вредоносной, может просто неисправна, обычно другой квалификации. Потому что особенно из принципа проектирования вам нужно относиться к неисправной сущности иначе, чем к вредоносной сущности, но да, дизайн (архитектура) мудрый, а это именно то, что несколько единиц должны достичь консенсуса (согласия) между собой, как мы получаем соглашение между всеми сторонами.

Ivan on Tech:

Таким образом, вы знаете, что запланировали различия между Fantom и предыдущей попыткой для BFT, поэтому мы можем просто повторить, каковы ключевые улучшения и различия между вашим подходом и другими решениями.

Andre Cronje:

Fantom на самом деле, я бы сказал, основан на трех основных моментах, которые существуют уже долгое время, — первое: стандарт заказа Лампорта и стандарт распределенных систем, тут нет ничего необычного, — второе: это документ, который не получил большого признания, который является непрерывным последовательным сокращением – CCK (continuous consistent cuts), как его часто называют. Который предоставляет модель, в которой, в рамках системы непрерывного добавления записи каждый будет иметь представление в определенный момент времени, которое похоже на все остальные, даже если верхние сегменты новых записей не обязательно одинаковы. Таким образом, последовательный разрез — это фрагмент информации, который вы снимаете с этого графика, чтобы с высокой вероятностью получить локальное представление, которое является общим и становится общеизвестным. На самом деле это еще одна концепция, которая является частью решения, является общеизвестной, но на самом деле исходит из психологии, а не технологии.

И тогда последняя из теории графов — это идея отношений Доминатора между различными узлами и / или вершинами в графе, а некоторые играют, объединяя эти три элемента, мы можем получить несинхронное локальное представление связи. Теперь причина, по которой я добавляю, является несинхронной, поскольку она позволяет асинхронную связь. Красота в этом заключается в том, что нам больше не нужно использовать широковещательную рассылку, но мы можем использовать стандартное распространение gossip, потому что у нас есть неизвестные непредвиденные сетевые gossip, которые по-прежнему являются самым быстрым способом распространения информации.

Ivan on Tech:

По сравнению, например, для людей, которые нас смотрят, они знакомы с Биткойном и Эфириумом, и у вас есть синхронность, потому что вам нужно две трасляции, которые должны быть в блоке, а затем все принимают его. Хотя этот подход больше похож на hashgraph и другие Gossip протоколы, где вам не нужно ждать, пока у всех будет информация для создания блока, который все принимают. Что бы это было правильное сравнение, вы знаете, связать это во что-то, что люди понимают, например, Bitcoin hash graph, так что в основном то, что у меня есть, когда я вижу транзакцию. Я говорю это своим соседям или как я практически распространяю информацию, когда я являюсь узлом в сети.

Andre Cronje:

Да, у нас есть эта концепция кластера «K». «K» — это просто какая-то настраиваемая константа и / или случайная в системе. Это количество узлов, с которыми я пытаюсь общаться, когда они присоединяются к сети, они проходят через один и тот же механизм консенсуса, чтобы вся сеть знала об этом новом узле, который участвует в сети. Поэтому, когда я получил некоторые транзакции или какую-то полезную нагрузку, не обязательно транзакцию, и я хочу достичь консенсуса относительно временного порядка этой полезной нагрузки. Я выбираю из своих известных N узлов, я выбираю подмножество этих K, и я создаю асинхронную связь в этом конкретном экземпляре. Я создаю начальную синхронную связь, чтобы синхронизировать разницу между их и моими блоками событий, и я присоединяюсь к остальным нашим соседям в этот набор связи, а затем совместные участники, которые в кластере K подписывают и создают новый блок, а затем этот блок фактически имеет стандартную ноту трансляции, но это необязательная часть системы. Таким образом, даже если он терпит неудачу, то это не откатывает систему, но делает ее немного медленнее.

Так что в принципе быстро подводя итог, выбора соседних узлов, так скажем, K равно трем, так что я собираюсь выбрать троих моих соседей, далее я собираюсь создать подключение к каждому из них, по принципу скажи мне что ты знаешь, я  скажу что я знаю, а это новые транзакции, мы все согласны с этим, что это то, что все мы знаем, далее мы создаем новый блок, который подписывает то, что что мы все знаем из текущей информации и то что нам транслировали, от всех участников, то что в настоящее время мы знаем. И так каждый маленький кластер продолжает делать, и они продолжают добавлять сверху, это лучше для более известных в контексте статей. Я имею в виду что это немного походит на концепцию из Avalanches Cluster Sampling, как они общаются друг с другом и как это в конечном итоге достигает метастабильности по всей сети и хэшированния cross gossip связи, где связь как способ распространить информацию и подпись подтверждает, что вы распространяете информацию, поэтому я бы сказал, что если мне придется заимствовать из образцов, что аудитория, скорее всего, знает, что я бы сказал, что это суб-объединение.

Ivan on Tech:

И так, с Биткоин, есть proof of work, это очень безопасно, я имею ввиду, что люди получают концептуальную идею, что вы должны хэшировать много вычислительной мощности для создания блока, есть четкий стимул для вас, чтобы играть по правилам, потому что вы хотите получить награду и улучшить Proof of Stake, вы поставите свои монеты, есть четкий стимул для вас, чтобы играть по правилам, потому что вы можете потерять свои монеты. В данном протоколе, чем я рискую, если пытаюсь обмануть сеть, нет никакого наказания? есть стимул для меня, чтобы играть по правилам?

Andre Cronje:

Несмотря на то, что у вас есть этот ABFT поверх всего, сам ABFT — это всего лишь способ распространить и согласовать информацию между узлами на уровне блока событий, вы все равно можете добавить доказательство работы (Proof of Work) если хотите, у вас все еще останется доказательство доли (Proof of Stake). Наша конкретный дизайн использует доказательство доли (Proof of Stake) в качестве базовой линии, поэтому каждый узел должен делать ставку, так же есть сокращение для отрицательного поведения, но сама конструкция, которая является основой, не привязывается к механизму распространения блоков. Так что если вы хотели, чтобы это было авторитарным, вы могли бы поставить модель подтверждения полномочий (Proof of Authority), если вы хотите делать какие — либо доказательства работ (Proof of Work), можно добавить алгоритм хеширования для создания блока, а затем мы в конечном итоге с вами знаем, что стандарт доказательства работы (Proof of Work) блока DAG ближе к как spectre и ghosts и phantom  протоколам, но в нашей конкретной реализации также является доказательством участия / доли (Proof of Stake) в распределенной сети. Таким образом, это не делегированное доказательство доли (Proof of Stake), это не в последнюю очередь доказательство доли (Proof of Stake), это не что-то еще, что люди добавляют в качестве прилагательного в наши дни, это просто доказательство доли (Proof of Stake).

Ivan on Tech:

И поэтому мне кажется, что это больше похоже на главный инструмент, верно, вы могли бы создать с ним просто криптовалюту, такую как биткойн, возможно, вы могли бы построить с ним смарт-контрактную платформу, это всего лишь способ коммуникаций, и это будет правильно, и тогда вы можете выбрать свой собственный механизм консенсуса, такой как доказательство работы (proof of work) или доказательство заинтересованности (proof of stake), когда дело доходит до двух блоков

Andre Cronje:

Да, я имею в виду, что очевидно, полную инфраструктуру Fantom, теперь, если мы поговорим о полной экосистеме Fantom, мы говорим о виртуальной машине (VM), мы говорим о консенсусе, мы говорим об инструментах экосистемы которые используются. Специально для целей консенсусного слоя, который называется lattices framework (фреймворк), я просто не назвал бы его механизмом консенсуса, поскольку он является распределенным механизмом ордеров в том смысле, что он должен принимать произвольные данные рандомно, и он должен обеспечивать децентрализованное соглашение ордеров указанных полезной нагрузкой. Поэтому, если по дизайну вы можете добавить традиционный вывод блока, потому что традиционный блокчейн — это очень аккуратный, упорядоченный список. Поэтому вы можете использовать блок DAG, основанный на времени и на базе Lamport консенсус ордеров на всю сеть, а затем выводить из этого стандартный блокчейн, что в настоящее время делает система, потому что VMs, которая привязана к этому, поэтому сами VMs могут либо быть частью консенсуса, либо они абстрагированы от консенсуса, а затем просто общаются с консенсус узлами, через p2p их транзакций и / или через прямую синхронную связь с узлом. Таким образом, они отправляют свою информацию в сеть консенсуса, и сеть консенсуса выводит стандартную структуру блокчейна для их потребления и применения к их состоянию, и это вы знаете, что стандартное хэширование подразумевает их стандартное подписание с кворумом участников, чтобы вы знали, что это было по крайней мере 2 или более 3-х всех участников.

Ivan on Tech:

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

Andre Cronje:

Мы делаем шестимесячный хакатон совместно с Crypto Bazaar. Мы предоставляем доступ всем своим разработчикам, так что они сейчас разрабатывают на обеих консенсус системах, системе VM, и они создают Dapps против VMs, поэтому у нас есть текущая тестовая сеть в приватном режиме, так что это не для всеобщего участия, где вы можете загружать VM, вы можете иметь VM на одном из консенсусных узлов, это даст вам ордера, мы также имеем сеть VM, настроенную так, что Dapps разработчики могли работать против нее. Мы запускаем несколько хакатонов сейчас, чтобы увидеть, какую стабильность и какие проблемы мы имеем и с какими мы еще можем столкнуться. После чего, что мы хотим открыть его до внутреннего сообщества разработчиков, людей, которые в нашем канале Slack и Telegram, для общей тестовой нагрузки узлов и сети, а уже после этого мы откроем для всеобщего участия.

Ivan on Tech:

Так что в настоящее время это не открытый исходным код, потому что, если это было открытым исходным кодом, мы просто могли взять его и попробовать, как это работает.

Andre Cronje:

Исходный код на самом деле является открытым исходным кодом, он доступен прямо сейчас на github, но его нет в репозитории Fantom foundation, поэтому, если вы его найдете, знайте, что вы можете загрузить его и присоединиться к сети. Но вы не получите его на главном репозитории Fantom.

Ivan on Tech:

Хорошо, но в будущем это будет с открытый исходный код доступный каждому?

Andre Cronje:

Да, мы просто дорабатываем его там прямо сейчас, чтобы люди, которых вы знаете, не вызывали слишком много запросов к нему или проблем, а затем, как только мы закончим мы просто переместим его в репозиторий Fantom Foundation

Ivan on Tech:

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

Andre Cronje:

Я не решаюсь соглашаться ни с одним из этих утверждений, пока мы не проведем полные испытания в реальном мире, которые будут работать против системы. Сейчас тесты идут очень хорошо. На самом деле мы видим увеличение пропускной способности при соединении узлов, поэтому по-прежнему существует ограничение входа, к которому он движется, но мы не видим ухудшения, поскольку больше присоединяется, и мы видим увеличение пропускной способности среди первых нескольких, которые соединяются. Таким образом, наши текущие нагрузочные тесты дают нам в десятках до сотен и тысяч транзакций в течение секунды, но я имею в виду, пока это не в реальной сети, вы знаете, что это не реальное число. Что мы увидим, когда это на самом деле будет запущенно, я имею в виду что это определенно будет больше чем у Ethereum, я точно не знаю об этом, я ожидаю, по крайней мере, производительности на уровне tendermint. Таким образом, производительность уровня tendermint составляет от двух тысяч до трех тысяч транзакций в секунду. Если идеализировать тесты, то они могут пойти выше пятьсот тысяч транзакций в секунду, но это не приводит к реальной пропускной способности. Так что да, это будет быстрее, чем стандартные смарт-контракты Etherium. Архитектура склона к динамическим компонентам, хотя это мне нравится, и это очень похоже на оригинальный дизайн tendermint, а также то, что специально адаптировано для каждой точки зрения. Если вы хотите разрабатывать против NEO VM для аргумента, вы можете просто отделить виртуальную машину и подключить ее к сети консенсуса. Если вы хотите разрабатывать Eos, вы можете сделать то же самое, указывая на сеть консенсуса. Таким образом, преимущество этого дизайна позволяет нашим сетям масштабироваться вместе с ней. Так что разработчики Solidity просто взяли стандартную развязку VM к этой сети те же, как вы могли бы сделать с Tendermint BCI. И это наше новое над чем мы сейчас работаем, где доказательство формальной верификации и проверки вычислений Bolton не закончены, находятся в исследовательской стадии. Так что DApps разработчики в настоящее время работают против несвязанного EVM подключенной к консенсусной сети.

Ivan on Tech:

Но это уже будет другая сеть, я имею в виду, если я отцеплю EVM и создам смарт-контракт Solidity на Fantom, это будет не та же сеть, что и Ethereum. Таким образом, это просто способ, которым мы можем воспользоваться, так что фактическое выполнение кода отделено от коммуникации и от достижения консенсуса, и там мы можем подключать и играть с разными VMs (виртуальными машинами).

Andre Cronje:

Вы могли бы взять весь DLT, если бы захотели. Так что вы можете скопировать всю сеть Эфириума на текущую момент, потом отвязать PoW (доказательство работы) и слой консенсуса, потом у вас получится реализация в течении нескольких часов, мы, наверное, сделаем это в любом случае. Но да, теперь то, о чем я сейчас говорю, это просто новое состояние VM направленное к консенсусу сети, а не физическое копирование DLT.

Ivan on Tech:

Если люди хотят узнать больше, как они могут присоединиться к вашему развитию сообщества? если у людей больше вопросов по теме консенсуса о возможности переключения виртуальных машин? может быть, люди хотят участвовать в тестировании, как они могут присоединиться к вам? И какой лучший способ связи с вами?

Andre Cronje:

Да отправной точкой остается наш Телеграм. Так что вы можете придите туда и спросите, как связаться с нами, они обычно знают, как нас найти. Другие способы, наш Medium – там можно найти все ссылки на наши ресурсы, включая наш Slack и на все что открыто для сообщества. На веб-сайте есть вся документация, все исследовательские работы, белые книги и текущая документация по развитию. Так что это хороший способ начать общение с нами. Fantom Foundation имеет полный пакет документации для ознакомления.

Ivan on Tech:

Хорошо, большое спасибо за то, что были на шоу и объяснили вашу технологию. Я думаю, что это было очень интересно, и друзья, если у вас есть больше вопросов оставляйте в комментариях, или попробуйте задать их телеграм канале Fantom.