Сообщество Nervos Nation недавно провело AMA с соучредителем Tempest Labs Tannr Allard, чтобы узнать больше об интересной работе, которую они выполняют, создавая ключевую инфраструктуру на уровне 1 сети Nervos.
1.Расскажите нам о своем прошлом и немного о себе
Привет Nervos Nation, спасибо всем, кто присутствует, и спасибо Кевину за содействие.
Как вы знаете, я стал соучредителем Tempest Labs вместе с парой других замечательных людей. Я уже некоторое время работаю в сфере блокчейна и несколько лет работал с технологией Nervos — до запуска первой тестовой сети. Совсем недавно я работал в основной команде смарт-контрактов в MakerDAO, где в основном занимался безопасностью и формальной проверкой.
2. Почему стоит выбрать Nervos?
Цепочка уровня 1 Nervos Network — общая база знаний (CKB) — особенно подходит для конкретного типа технологий, которые мы создаем. Фундаментальная структура состояния CKB, называемая «ячейкой», относится к классу цепочек, которые расширяют модель UTXO, представленную биткойном. Из других цепей этого класса модель Cell отличается особой гибкостью и выразительностью. Итак, что же делает CKB лучше других?
Мы должны задать два вопроса при выборе инфраструктуры в качестве инженеров. Первый вопрос: не запрещает ли инфраструктура по какой-то причине нашу способность построить систему, которую мы задумали? Второй вопрос: даже если это возможно, насколько *осуществимо* это с одной инфраструктурой по сравнению с другой.
Во многих цепочках, как в учетных записях, так и в utxo, протокол, который мы создаем, практически невозможен. В других ведущих цепочках в стиле UTXO, хотя подмножества функций Tempest возможны, для всех практических целей они невозможны.
3. Почему L1 против L2?
Это пара причин. Во-первых, L2 в целом не подходят в настоящее время, учитывая цели Tempest. Целью протокола Tempest является чрезвычайно безопасная и простая в использовании инфраструктура, которая может подключить миллионы разработчиков к пространству (на данный момент в мире всего менее 20 тысяч разработчиков в web3). Самый простой способ сделать это — остаться на L1, где у нас есть все естественные преимущества L1.
Во-вторых, я думаю, что обобщенные цепочки UTXO на самом деле недооценены с точки зрения уровня «производительности», которого они могут достичь. Сравнивать, например, пропускную способность CKB с чем-то вроде Ethereum на самом деле не имеет смысла, потому что транзакция, состоящая из UTXO, может представлять огромное количество изменений состояния за один «шаг», для которого в Ethereum потребовались бы длинные последовательности транзакций. . Таким образом, при прочих равных условиях вы можете спроектировать децентрализованные приложения L1 (по крайней мере, на CKB), чтобы выполнить гораздо больше в одном транзакте или блоке, чем во многих других цепочках. По сути, я думаю, что мы только затронули поверхность L1, так зачем переходить на L2 и усложнять так рано? Это преждевременно.
Наконец, после многих экспериментов и исследований стало ясно, что в настоящее время нам действительно нужна модель клетки. Таким образом, единственный L2, который в настоящее время будет работать для нас, — это тот, который имеет те же самые свойства, что и модель программирования, предлагаемая самой CKB.
4. Я слышал, что есть функция автотрейдинга/инвестирования. Можно ли ею пользоваться без особых знаний о внутридневной торговле?
Да, людям не нужно быть экспертами в торговле или анализе, потому что автономная сеть будет стремиться к достижению целей конечных пользователей от их имени. Различные торговые стратегии могут быть явно закодированы в виде дополнительных контрактов, которые любой разработчик может отправить в сеть.
По мере того, как все больше децентрализованных приложений будет создаваться на основе Tempest, сеть Solver, скорее всего, начнет использовать более сложные подходы к получению прибыли конечными пользователями. Это преимущество предоставляется всем децентрализованным приложениям, созданным на Tempest, а не только DEX, который мы создаем.
По сути, DEX — это специальный «портал» или «просмотр» в сети, раскрывающий подмножество своих возможностей, которые имеют смысл в контексте DEX.
5. Как Tempest Labs может вывести USDC, BTC, ETH и т. д. на уровень 1 Nervos, будут ли они торговыми парами и какой будет монета DEX?
Tempest специально не занимается какими-либо парами — участники экосистемы, безусловно, могут использовать Tempest для реализации определенных пар, и если вы отправили ордер на торговлю между двумя токенами, которые не «перечислены» в DEX, те, кто принимает решение попытаются найти способ поддержать эту пару, чтобы вы могли торговать. Таким образом, «пары» в DEX *могут* быть любыми активами, которые существуют на самом CKB (хотя некоторые пары могут быть не очень хорошими или простыми для исполнения).
В отличие от многих других DEX, где пары каким-то образом «одобряются» или «вносятся в белый список», на Tempest dex работает иначе. Отчасти это связано с тем, что, в отличие от многих других платформ, мы можем закодировать свойства безопасности и требования других токенов в контрактах dex, а контракты в сочетании с решателями обеспечат соблюдение этих свойств. Таким образом, мы можем убедиться, что, например, только токены с идеальными свойствами добавляются в виде пар в dex, не требуя какого-либо ручного процесса.
Кроме того, мы рассматриваем Force Bridge и изучаем потенциальную поддержку различных пар после или после запуска, используя Force Bridge для внедрения существующих токенов в экосистему.
У Tempest также будет свой токен, который будет поддерживаться в dex (как и CKB).
6. Каковы преимущества команды, стоящей за проектом?
У нас в команде есть замечательные люди. Мы все согласны с тем, что хотим больше содержания и меньше поверхностности в пространстве. Мы все верим в долгосрочную устойчивость, и все мы верим в продуманное и основанное на исследованиях развитие, а не в преувеличения и ложные заявления.
Что касается членов команды, кроме меня, у нас есть старший разработчик Rust, Пабло, который некоторое время работает в сфере блокчейна и работает в экосистеме Nervos около двух лет. Другой штатный сотрудник, Клинт, является аспирантом пятого курса электротехники. Он много работает над математическим моделированием стохастических и динамических систем, агентным моделированием и симуляцией, а также финансовой инженерией. Каждое принимаемое нами экономическое решение проверяется серией вычислительных экспериментов, чтобы убедиться в обоснованности наших предположений. Другой соучредитель — Майкл Дикин. У него невероятный ум для бизнеса, партнерства и людей. Он многократный основатель и в настоящее время руководит одной из ведущих фирм по подбору персонала в этой области.
У нас также есть третий соучредитель, который основал и управляет несколькими успешными компаниями, работал на уровне директора / исполнительного директора в нескольких блокчейн-проектах (некоторые из которых известны всем).
7. Что на самом деле делает индекс автономным и кто несет ответственность во время медвежьего рынка?
Я отвечу, что делает его автономным, потому что я не уверен, что подразумевается под второй частью вопроса.
Во-первых, важно понимать, что Tempest Labs параллельно создает два проекта: сам протокол, который позволяет любому запустить автономного агента, обрабатывающего транзакции, и продукт dex поверх этого протокола.
Думайте о протоколе как о «децентрализованном бэкэнде» для «автономных» децентрализованных приложений; Создавая децентрализованное приложение на Tempest, децентрализованное приложение по своей сути является автономным. На практике «автономный» означает для децентрализованных приложений то, что разработчикам децентрализованных приложений не нужно писать кучу кода для реализации своей бизнес-логики. Скорее, им нужно только декларативно указать свою бизнес-логику, и протокол обеспечит эту функциональность. Мы можем думать об этом как о естественном расширении «декларативных смарт-контрактов». Напомним, что для цепочек на основе UTXO мы получаем некоторые приятные преимущества, такие как детерминизм (весь результат транзакции известен до обработки этой транзакции). Но нам также приходится иметь дело с тем фактом, что код в цепочке не может фактически изменять состояние; он только проверяет, действителен ли текущий контракт в соответствии с некоторым набором правил, определенных в контрактах. Таким образом, dapps на платформах на основе UTXO необходимо программное обеспечение для генерации транзакций, которые отправляются в цепочку, а также для проверки транзакций, которые обрабатываются валидаторами. Последнее программное обеспечение — это то, что мы называем «умными контрактами» или, в терминологии Nervos Network, «скриптами».
Поскольку сценарии просто *проверяют* правила, они естественным образом подходят для декларативного программирования.
Декларативные языки программирования позволяют программистам указать, *что* они хотят, чтобы произошло, в отличие от императивных языков, которые требуют, чтобы программисты указали, *как* виртуальная машина или компьютер должны выполнить задачу.
В то время как декларативное программирование кажется очень естественным в сочетании с UTXO, декларативные языки смарт-контрактов на самом деле применимы для любого блокчейна с поддержкой смарт-контрактов — UTXO или нет.
Разница с Tempest заключается в том, что мы расширяем идею декларативного программирования еще дальше: декларативный язык, используемый для написания смарт-контрактов с Tempest, не только выполняется в цепочке для проверки, но также является машиночитаемым до такой степени, что транзакции могут автоматически генерироваться на основе правил, определенных в контрактах.
Это означает, что мы можем определить единый интерфейс как для генерации, так и для проверки транзакций. Но даже этого недостаточно, поэтому технология Tempest делает больше, чем просто компилирует декларативный код в программное обеспечение, которое может создавать транзакции, характерные для ваших децентрализованных приложений… Такой код все равно должен быть где-то размещен на сервере. Он по-прежнему декларативный и не совсем «автономный», потому что это ваш сервер, который вы можете модифицировать в любое время и который следует любым старым правилам.
Tempest идет еще дальше, фактически предоставляя универсальную сеть, называемую «сетью Solver», которая генерирует транзакции для ЛЮБОЙ системы смарт-контрактов, написанных на нашем языке. Любой может участвовать в этой децентрализованной сети Solver, запустив программное обеспечение Solver.
Solvers следуют своему собственному протоколу и играют в свою игру. Они предназначены для обучения и улучшения своих возможностей по созданию транзакций от имени пользователей.
Сеть Solver в некотором роде заменяет роль сервера. Пользователи различных Dapps, построенных на Tempest Protocol, взаимодействуют с dapp, отправляя свои «цели» или «намерения» Solvers, которые затем выполняют цель от имени пользователей. Таким образом, «dapps» — это просто наборы возможных вариантов поведения, написанные на нашем языке и отображаемые в определенном интерфейсе.
8. Какие услуги должны предоставляться, чтобы помочь другим создавать проекты на уровне 1?
Во-первых, мы разрабатываем полноценную среду разработки для CKB под названием «Trampoline». Он находится в активной разработке и уже имеет открытый исходный код. Trampoline значительно упрощает и сокращает время, необходимое для создания децентрализованного приложения.
Во-вторых, мы разрабатываем декларативный логический язык под названием «Validity». Причина названия в том, что оно очень похоже на «Solidity», но не может быть более отличным с точки зрения его синтаксиса и семантики.
В-третьих, протокол Tempest предоставляет возможности получения дохода разработчикам с открытым исходным кодом, которые пишут код Validity в сети. Все это делается в автоматическом режиме. Такие постоянные потоки доходов для разработчиков с открытым исходным кодом, которые используют сеть, обеспечивают совершенно новый тип бизнес-модели для разработчиков с открытым исходным кодом. Прямо сейчас разработка с открытым исходным кодом финансируется только в том случае, если вы являетесь сотрудником компании, которая заботится об OSS, или если вы подаете заявку на такие вещи, как гранты gitcoin или просите донейшн. Многие из них возлагают бремя поиска денег на разработчиков, что, на мой взгляд, досадно.
Наконец, комбинация всего вышеперечисленного вместе с сетью Solver позволит разработчикам создавать децентрализованные приложения за короткое время, не нарушая безопасности и защищенности конечных пользователей. Разработка DeFi часто находится под большим давлением, чтобы двигаться быстро и поставлять вещи. Такое давление обескураживает безопасность и защищенность. В то же время, финансовые системы требуют гораздо большей гарантии, чем программное обеспечение, такое как приложения, игры, веб-сайты и т. д. Например, традиционное финансовое программное обеспечение считается «критическим программным обеспечением», к которому предъявляется множество требований с точки зрения гарантий правильности и т. д. Блокчейн сейчас слишком незрелый, чтобы иметь те же самые требования (и их трудно обеспечить в системе без разрешений), но это часто приводит к массовым уязвимостям и низкому качеству кода. Таким образом, мы предоставляем возможность создавать высококачественное программное обеспечение в этой области, не отставая и за небольшую часть стоимости (услуги аудита и безопасности часто могут обходиться проекту в миллионы долларов в год).
9. Какие факторы в вашей компании влияют на блокировку байтов? Я знаю, что значение ckb увеличивается по мере увеличения значения/данных в цепочке, но что считается значением/данными? Что может работать на L2 и никогда не влиять на L1/CKB.
Прелесть модели ячейки заключается в том, что код, данные, активы/токены и все остальное могут храниться в данных ячейки, а емкость данных ячейки ограничена количеством $CKB в этой ячейке (1 $CKB = 1 байт). хранения). Таким образом, по мере увеличения спроса на любой токен в сети будет расти и спрос на хранилище (поскольку любой токен в сети должен занимать место). Контракты также требуют хранения, поэтому деятельность по разработке также повысит спрос на $CKB. Конечно, для нас это хорошо, так как увеличение оценки ЦКБ равносильно увеличению «бюджета безопасности».
Многие вещи можно запускать на L2, используя различные криптографические структуры, которые действуют как накопители на L1. В настоящее время протокол Tempest имеет технические требования, которые могут быть выполнены только на уровне L1. Конечно, по мере роста спроса на $CKB мы продолжим искать способы ответственного использования имеющегося у нас хранилища.
10. Какие особенности проекта стали возможными благодаря клеточной модели и/или характеристикам Nervos? Было бы здорово услышать о возможных будущих разработках.
Возможность принудительного применения свойств более высокого порядка в наших контрактах обусловлена исключительно способностью скрипта анализировать всю транзакцию. Например, вы можете написать сценарий, который применяет правило, согласно которому «транзакция действительна только в том случае, если весь токен X помещен в хранилище, которое принимает только взаимозаменяемые токены с ограниченным запасом». Обратите внимание, что правило находится в скрипте токена X, и оно касается не Хранилища, а ДРУГИХ токенов, с которыми хранилище может взаимодействовать в будущем. Эти типы свойств более высокого порядка обеспечивают новый уровень автоматизации, которого людям еще предстоит достичь на других платформах.
Таким образом, этот тип выразительности обеспечивается моделью Cell.
Еще одна вещь, которую позволяет модель ячеек, — это безопасная компонуемость. На самом деле это не строго модель ячеек, а модель транзакций, которая включает в себя поля «зависимости», которые могут содержать ячейки, не «тратя» эти ячейки. Мы активно используем это, потому что это позволяет нам обогатить транзакцию дополнительной значимой информацией (в других цепочках UTXO единственный способ получить UTXO в транзакции — это потратить его, даже если все, что вы хотите сделать, это просмотреть некоторые данные).
Наконец, виртуальная машина CKB имеет достаточно низкий уровень, чтобы мы могли естественным образом реализовать множество пользовательской логики и семантики.
11. Проложит ли работа Tempest labs путь для большего количества децентрализованных приложений на L1? (инструменты, фреймворки, документы и т. д.)
Да. Как упоминалось выше, мы создаем инструменты и фреймворки (trampoline), языки программирования (validity), инфраструктуру разработчиков (solvers) и активно работаем над документацией, вики и учебными пособиями как для конкретных технологий Tempest, так и для CKB в целом.
12. В чем вы видите основные проблемы при разработке Nervos L1 — особенно для разработчиков, пришедших из пространства EVM/Solidity?
Существует компромисс между мощностью + гибкостью и простотой использования. Модель программирования CKB находится на гораздо более низком уровне, чем то, к чему привыкли разработчики Эфириума, поэтому это очень важный переход от разработки смарт-контрактов на Эфириуме к разработке смарт-контрактов на CKB.
Кроме того, он настолько гибкий, что не всегда очевидны ПРЕИМУЩЕСТВА переключения. Чтобы заставить кого-то переключиться на новый стек технологий, недостаточно быть *так же хорошо*, как альтернатива, потому что переход требует времени, усилий и сопряжен с альтернативными издержками. Так что переход должен стоить денег. Это связано с предоставлением совершенно новых возможностей или радикальных улучшений.
Я думаю, что в целом, как члены сообщества, мы все знаем, что CKB позволяет использовать совершенно новые классы децентрализованных технологий из-за своей гибкости — многие из нас сегодня заявляли об этом в какой-то момент. Тем не менее, если бы вас спросили: «Что позволяет CKB в децентрализованном приложении, что на самом деле невозможно в Ethereum», вы бы ответили на него?
Какое-то время даже я не мог. Только когда я погрузился глубоко в пространство Эфириума и начал формулировать идею Tempest (которая призвана стать решением многих проблем, с которыми я сталкивался на собственном опыте), у меня появилось очень ясное представление о возможностях, которые он включил на уровне децентрализованных приложений, которые были невозможны в других цепочках.
Итак, я думаю, что это главная проблема: придумать точку продажи для РАЗРАБОТЧИКОВ… С CKB сложнее работать, это более низкий уровень и требует больше навыков, И это чуждо разработчикам, привыкшим к Эфириуму… это трудно продать.
Но, надеюсь, технология, которую мы разрабатываем в Tempest, которая демонстрирует множество возможностей, которые до сих пор были невозможны, будет достаточно убедительной
Вопросы после АМА
В. Спасибо Tannr за такие исчерпывающие ответы. Позволит ли Trampoline легко создавать sUDT с настраиваемыми функциями? Я помню, вы поделились скриншотом этого некоторое время назад
О. Да, в Trampoline встроена поддержка взаимодействия, развертывания и расширения SUDT i :)
В. Было бы интересно в будущем провести некоторое сравнение между solvers и batchers (например, решения, использующие DEX от Cardano). UTXO постоянно обвиняют в необходимости централизованного автономного решения для обработки транзакций, например, для DEX в стиле Uniswap. Я думаю, это были бы интересные дебаты, которые придали бы вам известность в пространстве.
А. Да, это было бы интересно. Я читал документы, которые включены в каждый из Cardano DEX, и все они имеют ту или иную форму пакетной обработки. Основное отличие, которое я вижу, заключается в том, что решатели играют в определенную «игру», определяемую механизмами стимулирования, а также они являются общими в том смысле, что они будут создавать любую транзакцию, а не только связанную с DEx.