Диалог с главным криптографом Mysten Labs: как криптографические инновации стали основой дизайна Суи?

В этой статье мы поговорим с Костасом Чалкиасом, соучредителем и главным криптографом Mysten Labs, о том, как криптографические инновации лежат в основе дизайна Sui, и почему новые функции так интересны?

**В: Можете ли вы кратко объяснить роль криптографов в создании блокчейнов? **

О: На самом деле я работал с одним из первых разработчиков Сатоши Накамото (Майк Хирн), у меня есть докторская степень в области криптографии, и до эпохи блокчейна я в основном занимался академическими вопросами. Из-за этого участия я могу точно сказать вам, что криптовалюта играет роль для компаний инфраструктуры блокчейна, которую обычно можно разделить на три ключевые роли.

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

Второй — реализация, концепция прикладной криптографии. Прикладные криптографы получают запросы от групп разработчиков: «Эй, нам нужна новая более быстрая схема подписи или мы хотим создать новую функцию конфиденциальности для наших клиентов, заказчиков или сообщества». исследует его, но и реализует. Иногда прикладной криптограф также должен быть очень сильным разработчиком программного обеспечения, что требует новых оптимизаций в кодировании.

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

**Подводя итог, мы уравновешиваем исследования, реализацию и продукт, что является ролью типичного криптографа блокчейна. **

**В: Обычно один и тот же человек может делать все три? Или разделить на группы для реализации? **

О: Что касается Суи, поскольку мы представили так много инноваций, нам понадобилось несколько человек, работающих над многими рабочими процессами. Я ведущий криптограф в Mysten Labs и один из основателей Sui, поэтому я участвую в большей части работы. Однако вы не можете делать все в одиночку, и я все еще учусь у своей команды.

Мы не просто используем один язык программирования. Например, используя язык Rust для проверки концепции, но потом мы поняли, что большинство людей в сети используют JavaScript или TypeScript, а криптографы не могут написать все сами. Но вы не можете делегировать полномочия универсальному специалисту, например инженеру-программисту, потому что для некоторых оптимизаций требуется знание продвинутой математики и криптографических примитивов, или вам может понадобиться взаимодействовать с некоторыми библиотеками, с которыми вы не знакомы, поэтому вам нужен кто-то другой, чтобы взять на себя работа.

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

Двух глаз недостаточно, потому что криптография — крайне важная часть инфраструктуры блокчейна.Если что-то пойдет не так, это может быть GAME OVER, поэтому нужно больше глаз. Кроме того, требуется много новаторов.

**В: Каковы ключевые разработки и влияние внешних исследований, примененных в дизайне Sui? Каковы ключевые нововведения во внутреннем диалоге? **

О: С точки зрения криптографии внешние сигналы, которые повлияли на нас, — это эволюция таких технологий, как доказательства с нулевым разглашением и общие методы сохранения конфиденциальности, предложенные в литературе. Не только блокчейн занимается криптографией, но и научно-исследовательские институты и университетские факультеты по всему миру занимаются теоретической работой. Лично я считаю, что Mysten Labs очень хороша в поиске новых теорий в областях, которые никогда раньше не применялись, некоторые из этих предположений могут быть неточными, но мы объединяем их с нашими существующими технологиями и в конечном итоге побуждаем нас к созданию нового продукта.

** У Sui есть новая функция, вход с нулевым разглашением (ZK Login), которая появилась таким образом. Некоторые технологии были предложены извне, но недостаточно для обеспечения бесшовного механизма аутентификации для блокчейна L1, мы придумали новые функции поверх этого, что является внутренней вертикалью прикладных исследований, и, наконец, мы придумали полный план решения. **

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

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

Внутренние инновации часто инициируются продуктовыми командами. Они придут к нам и скажут: «В данный момент это невозможно, мы не видели исследований по этому вопросу. Вы можете это выяснить?»

Например, интересная проблема включения обнаруживаемых адресов блокчейна, но с конфиденциальностью. Как я могу получить что-то отправленное на вашу электронную почту или номер телефона еще до того, как вы создадите учетную запись? Представьте себе функцию в стиле Venmo, когда я отправляю вам активы, а затем иду за ними, когда вы понимаете, что они там. Решение этой проблемы требует внутреннего мозгового штурма о том, как сделать это правильно с учетом конфиденциальности. Взяв теорию со стороны, мы объединяем все это в набор инструментов. Большую часть времени мы на самом деле довольно успешны в этом. Мы пытаемся решить вышеуказанные проблемы, и проблема с продуктом редко остается без решения.

**В: Как Move помогает вам создавать эти криптографические инновации и обеспечивать более безопасный опыт для разработчиков, использующих Sui? **

О: Раньше я был разработчиком Solidity, писал контракты Ethereum, и я также был увлечен нарушением смарт-контрактов на Ethereum. Моей первой работой был аудит лотерейных контрактов на Ethereum, и мне удалось разрушить некоторые алгоритмы. В то время можно было почти сказать, что алгоритмы случайности были несправедливыми и непрозрачными. На самом деле это научило меня тому, что разработчики смарт-контрактов обычно являются инженерами, которые пишут небольшие сценарии. Смарт-контракты не являются большими программами и не являются сложными базами данных.Обычно кто-то, прошедший всего несколько дней обучения, может написать смарт-контракт и развернуть его, но это требует очень тщательного аудита, и могут быть скрытые ловушки во взаимодействиях между веб2 и веб3. .

Мы поняли, что в Ethereum некоторые функции безопасности Solidity были проблематичными из-за двух конкретных факторов. Во-первых, инженеры оптимизируют сжатие, чтобы снизить затраты на газ, что может привести к тому, что пользователи пропустят некоторый контент, поскольку крайние случаи не охватываются. Также существует проблема повторных атак. Это похоже на то, как один смарт-контракт оплачивает другой смарт-контракт, не обновляя его состояние. Этот вектор атаки уже приводил к значительным финансовым потерям в прошлом, включая DAO Ethereum много лет назад, что привело к форку Ethereum.

**Перемещение не имеет этих проблем, особенно проблем с повторным входом, мы защищаем исходный код с нуля. Мы также внесли множество изменений в оригинальный Facebook Move, создав более объектно-ориентированный язык Move, что очень помогло с возможностью повторного использования кода. Вместо того, чтобы копировать и вставлять код смарт-контракта, а затем, возможно, вносить некоторые изменения, вы можете вызвать исходный код и получить лучшие гарантии согласованности. **

Кроме того, в Move у нас есть объекты для всего. В Solidity, когда вы переносите что-то из одного контракта в другой, вы обычно не знаете, что это такое без контекста. Это адрес? Это число? Это URL изображения? Когда вы относитесь ко всему как к объектам, подобно Java и C++ и всем объектно-ориентированным языкам, вы можете сначала преобразовать свои существующие клиентские проекты в мир, основанный на смарт-контрактах, не беспокоясь о механизмах сжатия с тройной оптимизацией. Поскольку вы можете буквально видеть, что это объект «тигр», я передаю вам объект «тигр».

Что насчет криптографии? Когда вы владеете предметами, когда я отправляю что-то из одного кошелька на другой адрес, вы получаете всплывающее окно с надписью «Вы передаете тигр NFT. Этот тигр NFT имеет характеристики X». Благодаря объектно-ориентированному дизайну, независимо от того, к какому объекту вы прикасаетесь, вы можете точно видеть, что вы делаете, что может помочь вам выявить любые проблемы с вашими транзакциями. Многих пользователей привлекают вредоносные программы или приложения, которые пытаются убедить вас подписать что-то, что вы не хотите подписывать в других кошельках блокчейна. Но с Move это немного сложнее, и пользователь может четко видеть, что происходит, что повышает безопасность конечного пользователя.

Еще одна вещь, которая действительно помогает в разработке более интересных и крутых алгоритмов, — это распараллеливание, обеспечиваемое объектами. Допустим, у меня есть купюры: 10-долларовая и 100-долларовая. Я могу делать это параллельно, если предлагаю счета двум людям рядом со мной.

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

Вот где мы получаем все самое интересное от языка Move, и как криптографы мы можем использовать распараллеливание и объектно-ориентированное программирование, которые предоставляет Move, для создания более безопасных, более крутых инновационных алгоритмов. В этом вся идея. Например, мы создали лотерейную программу. Хотя на первый взгляд это может показаться простым, если честно, сделать это правильно часто бывает очень и очень сложно, особенно при создании многопользовательских лотерей со сложными пограничными случаями, где блестят хорошие криптографы. Нужна какая-то случайность, нужно покупать лотерейные билеты, которые можно покупать параллельно. Как вы делаете это на блокчейне? Move и его доступные криптографические примитивы помогают создать лучшую и более безопасную криптоэкосистему.

Я прекрасно понимаю, что что-то вроде лотерейной системы можно использовать в продукте, где, скажем, 300 билетов доступны, но их хотят тысячи людей, а вы хотите, чтобы они распределялись случайным образом? Эта система является основой Sui, и любая компания может добавить ее в свою продукцию.

Приятно то, что благодаря объектно-ориентированной природе Sui вы можете вызывать один и тот же контракт из множества других смарт-контрактов. У нас есть концепция компонуемости, которая на самом деле помогает вам использовать один и тот же лотерейный билет в двух разных лотереях, что отлично подходит для создания новых впечатлений, которых раньше не было.

В играх вам нужна случайность, и Sui на самом деле является одним из лучших блокчейнов. В настольной игре, даже в шахматах, которые кажутся детерминированной игрой, нужно знать, кто ходит первым. Кто белый, а кто черный (в шахматах, как известно, белые имеют преимущество), требуется некоторая прозрачность, чтобы правильно сопоставить разных игроков в одной партии. Есть также правительственные приложения. Представьте, что налоговая служба проводит статистическую выборку и выбирает, кого проверять. Могут ли они действительно предоставить доказательства того, что статистическая выборка была проведена честно и прозрачно?

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

**В: Недавно вы написали твит, в котором обсуждаете важность хранения NFT в сети, чтобы они оставались динамичными и менялись со временем. Можете ли вы рассказать больше об этой точке зрения, в частности о том, как структура данных Sui повышает полезность NFT? **

Ответ: Это горячо обсуждаемая тема. Я пытаюсь объяснить, что разные инфраструктуры активируют свойства NFT по-разному, и когда это просто статическое изображение, когда вы не выполняете никаких операций с большим трафиком на этом изображении, традиционная структура действительно хороша. Но в некоторых случаях, например, в играх, игроки надеются получить больше преимуществ от NFT, тогда как традиционная структура NFT недостаточно хороша.

У Sui есть несколько алгоритмов, которые позволяют использовать динамические NFT, поля которых обновляются каждый раз, когда происходит транзакция. Когда вы играете в игру, у вас есть герой, вы побеждаете, проходите уровень, вы можете получить какое-то новое оружие или силы, все это можно записать в состояние блокчейна и создать своего рода совершенно новый жанр. Кроме того, поскольку стоимость хранения на Sui невелика, NFT можно хранить в цепочке. Это упрощает чтение и запись различных смарт-контрактов в сети и обеспечивает возможность компоновки.

В других цепочках вы столкнетесь с проблемой, потому что изменения не в состоянии. Чтобы другой смарт-контракт мог прочитать ваш контракт, им нужно знать вашу структуру, вам нужен анализатор вне сети, что создает некоторые сложности UX. В некоторых крутых приложениях также есть условная логика, где вы не знаете, к какому NFT вы прикасаетесь во время отправки транзакции, поэтому что я могу предложить из мира вне сети, это нелегко масштабировать.

Существует также проблема моделей угроз и тот факт, что некоторые конкретные приложения могут допускать сжатие и хранение вне сети. Но на самом деле, когда мы храним что-то вне сети, мы меняем модель угроз. Причиной обычно является централизация, представьте, если однажды вы сохраните их в AWS, а затем... Amazon выйдет из строя. Amazon — это отдельная компания, и если она выйдет из строя и вы не сможете получить доступ к этим конкретным данным вне сети, вы не сможете использовать их в сети; и даже если бы вы могли, вам даже нужны данные для создания доказательства того, что вы на самом деле владеете данными вне сети, потому что иногда вам просто нужно это доказать, верно? Чтобы доказать это, вам нужно получить контент из AWS, затем хешировать его и отправить очень небольшой объем данных в блокчейн, который в некоторой степени проверяется, но если у вас нет данных, вы не можете доказать Это Каково содержание моего NFT.

Так что есть некоторая проблема с централизацией, хотя некоторые люди говорят, что это не так, потому что мы можем хранить ее в разных местах. Я согласен, что если нам удастся иметь конкретный дизайн, все эти модели угроз будут закодированы в блокчейне, но другая проблема — это задержка, NFT хранится в других цепочках, что удвоит задержку, это не то, чего мы хотим. , Мы надеемся, что все хранится в цепочке при уменьшении задержки.

**В: Что вас больше всего волнует в будущем Суи? **

О: Это мой любимый вопрос. Основная причина, по которой я присоединился к Mysten Labs, заключается в том, что я предпочитаю место, где инновации стимулируют разработку продуктов. Мы предлагаем что-то новое для сообщества. Я даже назвал своего сына Криптосом.

Если вы спрашиваете меня конкретно об инновациях Sui в шифровании, одно можно сказать наверняка: мы разрешаем множество способов аутентификации. Как правило, большинство блокчейнов поддерживают только один алгоритм подписи, Ethereum имеет свой собственный, а Cardano и Solana поддерживают другой. Мы пытаемся заставить Sui общаться с другими публичными сетями, что означает, что мы разрешаем все существующие алгоритмы, что означает, что мы совместимы с большим количеством кошельков. Существующие кошельки не нужно изобретать велосипед, вам нравится алгоритм, основанный на Ethereum, мы его поддерживаем, так что используйте его. Вы используете iphone, тогда вам даже не нужен кошелек, iPhone и более продвинутые устройства Android имеют встроенный чип безопасности, который поддерживает только определенные алгоритмы, и мы поддерживаем это.

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

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

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

Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • комментарий
  • Поделиться
комментарий
0/400
Нет комментариев
  • Закрепить