Релиз кода IoTeX — Mainnet Preview (Photon)
Posted by Sergei Romanov 6 months ago

Привет, сообщество IoTeX! С момента нашего последнего выпуска кода в августе, команда IoTeX добилась больших успехов в исследованияхдоказательствах концепции и росте сообщества. Самое главное, что мы достигли невероятного прогресса в техническом развитии и на один шаг стали ближе к нашей цели создания самой безопасной, удобной и производительной блокчейн-платформы во всей отрасли. Сегодня мы с гордостью запускаем наш четвертый релиз кода — предварительный просмотр главной сети (Mainnet Preview) “Photon” — который включает в себя новые интересные функции, которые будут полностью реализованы в полной Альфа версии главной сети в 1 квартале 2019 года:


  • Обеспечение субцепей: поддержка двух независимых блокчейнов (корневой цепи, субцепи), работающих на отдельных базах данных в сети IoTeX
  • Межблокчейновая связь: возможность передачи от корневой цепи к субцепи, с поддержкой кошелька IoTeX обеими цепочками
  • Усовершенствования консенсуса: повышение производительности Roll-DPoS (1,000+ TPS & 100+ node tests) и новые улучшения безопасности
  • IoTeX Explorer v2.0: отдельные страницы IoTeX Explorer для визуализации активности в корневой цепи и субцепи

И многое другое!

Вы можете увидеть открытый исходный код на нашем Github сейчас.

iotexproject/iotex-core

Подробные инструкции по запуску кода Photon приведены в этом файле README, а подробное демо-видео также можно найти здесь.



Почему “Photon”? — Kenneth Lane Thompson

Photon назван в честь Kenneth Thompson (Photon состоит из букв от “Thompson”), следуя тенденции именования релизов кода IoTeX в честь пионеров информатики. Ранее в этом месяце, мы дали нашему сообществу возможность предложить и проголосовать за кодовое имя для Майннет Привью. Мы получили более 12,600 заявок, и из пяти финалистов, Photon стал единогласным победителем получив 27% всех голосов. Спасибо всем, кто принял участие! Полный список победителей мы объявим завтра!

Kenneth Thompson — американский пионер в области компьютерных наук. Он наиболее известен изобретением нескольких языков программирования (например, Go, B) и операционных систем (например, Unix) и получил премию Тьюринга в 1983 году. Как вы, возможно, знаете, блокчейн IoTeX кодируется в Go (совместно изобретенный Томпсоном) — название этого выпуска “Фотон” является данью работе Томпсона, которая обеспечивает строительные блоки для IoTeX и наших инноваций на сегодняшний день.



Обзор & свойства Photon

В Photon, мы предварительно показываем некоторые новые технологические концепции, которые будут полностью развернуты в нашем Альфа-релизе главной сети в первом квартале 2019 года. Цель IoTeX — создать блокчейн, который может поддерживать все типы сценариев использования Интернета Вещей (IoT) — умные города, цепочки поставок, носимые устройства, автономные транспортные средства и многое другое. Несмотря на общие требования (масштабируемость, конфиденциальность, поддержку устройств Интернета Вещей), каждый вариант использования уникален и требует индивидуального подхода для оптимизации производительности и безопасности. Чтобы учесть это разнообразие, IoTeX использует архитектуру корневой цепи/субцепей, которая позволит разработчикам создавать индивидуальные субцепи, используя дизайн, который лучше всего подходит для их DApps. Приложения будут легко обмениваться ценностями и данными с другими приложениями через межцепочную связь. Таково наше видение будущего IoT — динамичной экосистемы универсальных и совместимых субцепей, работающих на базе IoTeX.

За последние два месяца, мы разработали несколько собственных инноваций, которые приближают нас к нашему видению будущего Интернета Вещей. Основные функции Photon, о которых мы подробно расскажем в следующих разделах, включают в себя обеспечение субцепеймежцепочную связьусовершенствования консенсуса (Roll-DPoS) и IoTeX Explorer v2.0. Благодаря исчерпывающим обзорам кода/“неделям качества”, мы значительно повысили стабильность наших смарт-контрактов, кошелька и существующей кодовой базы. Наконец, мы тщательно протестировали тестовую сеть IoTeX и достигли 1000+ TPS (с мгновенной завершенностью) и успешно развернули 100+ узлов с помощью Kubernetes. Полный список функций и улучшений Photon приведен ниже:



Обеспечение и управление субцепями

Архитектура корневой цепи/субцепи является основной частью дизайна блокчейна IoTeX, позволяя любому пользователю создавать свои собственные субцепи и выбрать архитектуру, язык программирования и даже консенсусный механизм, который наилучшим образом будет соответствовать его целям. Например, субцепь, ориентированная на конфиденциальность, выиграет от архитектуры Mimblewimble, в то время как субцепь, требующая более высокой пропускной способности, может использовать большие блоки. Субцепи не только повышают гибкость для разработчиков, но и добавляют масштабируемость. Можно думать о субцепях как об отдельных блокчейнах, работающих параллельно, где активность в одной субцепи не влияет на пропускную способность других субцепей. Их состояния (т.е. история транзакций) периодически синхронизируются с корневой цепью, которая записывает состояние всей сети IoTeX. Способность добавления неограниченного количества субцепей делает сеть IoTeX практически бесконечно масштабируемой.

В Photon, мы вводим нашу первую пару корневой цепи/субцепи, которые являются отдельными, однородными блокчейнами, работающими в отдельных базах данных. Они используют некоторые общие P2P сети, но в остальном независимы, что означает, что транзакции в корневой цепи и субцепи регистрируются в отдельных реестрах, и каждый из них будет производить блоки параллельно. Хотя субцепи являются гибкими и настраиваемыми, корневая цепь является более жесткой и выполняет определенные роли. В сети IoTeX, одна из ролей корневой цепи заключается в записи состояния каждой субцепи в различные моменты времени (блоки), что подробно показано на следующей схеме.

Каждый блок субцепи содержит различные типы транзакций, включая передачу токенов/данных и выполнение смарт-контрактов. Как и в каждом блокчейне, блок производится и проверяется (“майнится”) после достижения максимального предела газа блока. Кроме того, дайджест транзакций субцепи записывается в корневую цепочку для каждого нового созданного блока. Это достигается путем сообщения хэш-корня (он же хэш-идентификатор на диаграмме выше) транзакций дерева Merkle, каждый раз, когда добывается блок субцепи; проще говоря, Дерево Меркла — это иерархическое представление истории транзакций блокчейна в определенный момент времени. Каждый новый блок будет иметь уникальное дерево Меркла и, следовательно, уникальный хэш-идентификатор, который передается в корневую цепочку в качестве доказательства того, что произошло в субцепи с момента последнего блока.

Транзакции корневой цепи состоят из голосов за делегатов, межцепочных передач ценности/данных (описанных в следующем разделе) и хэш-идентификаторов различных блоков субцепей, которые представляют собой “снимки” истории транзакций всех субцепей в сети IoTeX. Как показано на рисунке выше, блок 3 корневой цепи содержит несколько межцепочных транзакций (т. е. Hash ID (cross-chain)), а также хэш-идентификаторы нескольких блоков (т. е. A, B, C, X-2, X-3). “Х-2” находится в состоянии субцепи Х-2 после второго блока, “Х-3” находится в состоянии субцепи после третьего блока, состояние субцепей А, B и C, также записываются. В зависимости от количества транзакций, генерируемых в субцепи (т.е. скорости, с которой она создает новые блоки), несколько хэш-идентификаторов блоков субцепи могут храниться в одном блоке корневой цепи.

Конечным результатом является массовая масштабируемость. С обычной блокчейн архитектурой, все транзакции субцепи X хранились бы индивидуально в корневой цепи. Благодаря архитектуре IoTeX, мы можем эффективно хранить весь блок субцепей как одну транзакцию в корневой цепи, обеспечивая масштабируемость “100 к 1”. Благодаря возможности добавления неограниченного количества параллельно обрабатываемых субцепей, сеть IoTeX в будущем сможет поддерживать миллиарды устройств IoT.



Межцепочная коммуникация (Cross-chain Communication, CCC)

Межцепочная связь, которая обеспечивает совместимость между блокчейнами, является широко исследуемой темой в индустрии блокчейнов. Такие проекты, как Polkadot, Cosmos и Aion, имеют разные подходы к созданию интероперабельной сети блокчейнов. Концепция интероперабельных блокчейнов (т.е. субцепей IoTeX) является ключевым компонентом нашего видения будущего IoT. Сегодня устройства Интернета Вещей и компании, работающие на различных облачных платформах (например, AWS, Google, Azure), не могут обмениваться данными, что значительно ограничивает ценность и возможности Интернета Вещей. Обеспечение совместимости между уникальными и сложными отраслями IoT является основным направлением IoTeX, поэтому наши первоначальные проектные решения сосредоточены на поддержке гетерогенных субцепей и межцепочной связи.

В Photon, мы предварительно показываем возможности межцепочной связи между корневой цепью и субцепью, которые являются независимыми блокчейнами. За последние месяцы, мы исследовали и разработали строительные блоки для обеспечения двусторонней передачи данных и ценности (т.е. токенов) между корневой цепочкой/субцепями — мы планируем выпустить исследовательские работы в ближайшие недели и полностью развернуть межцепочную связь в нашем Альфа-выпуске основной сети. Для нашего выпуска Photon, мы предварительно рассмотрим некоторые из этих строительных блоков:

  • Депозиты токенов из корневой цепи в субцепь: передача токенов EIOTX между независимыми блокчейнами (т.е. корневой цепью и субцепью) через Explorer API вызов
  • Обновленный кошелек IoTeX: используйте один кошелек как для корневой цепи, так и для субцепи (т.е. разные адреса аккаунтов, один и тот же приватный ключ) с отдельными балансами токенов



Продолжение в нашем блоге

84 Views0 Replies0 Subscriptions
Loading