Cover photo

Оглядова стаття проекту Neon

Сьогодні хочу розповісти про нас під прицілом Neon Labs.

Ідея створити Neon народилася з необхідності: Solana було складно знайти розробників, тоді як творці dApps на Ethereum страждали від низької масштабованості та інших витрат мережі. При цьому була потрібна технологія, яка буде «френдлі» до розробників, і не змусить їх переписувати контракти. Так був створений Neon Labs, який будує EVM, що дозволяє програмам на базі Ethereum простіше розгортатися на Solana.

Neon EVM – це віртуальна машина, завдяки якій розробники додатків можуть використовувати масштабованість та ліквідність, яку надає Solana, та інструменти від Ethereum. Такий симбіоз забезпечує творцям dApps низькі тарифи на газ, високу швидкість транзакцій, паралельне виконання транзакцій, високу пропускну спроможність, а також відкриває доступ до ринку Solana, що росте.

post image

Кількість активних dApps на Ethereum зараз вище 300, а кількість активних користувачів цих dApps наближається до 6 мільйонів, кількість транзакцій зростає. Очевидно, що Ethereum залишається домінуючим блокчейн-протоколом для торгівлі смарт-контрактами. Тому для розробників просто потрібна така співпраця, яка поєднає в собі плюси від обох проектів.

Крос-ланцюгове рішення Neon EVM відкриває для розробників нові можливості, такі як арбітраж або високочастотна торгівля, дозволяє розширити базу користувача, а також вони можуть скористатися перевагами ранніх користувачів і залучити нових клієнтів на Solana. Проект має власний токен NEON, який спочатку використовуватиметься для оплати газу, а потім використовуватиметься як токен управління, як тільки вони перейдуть від управління радою до управління суспільством. Для оплати послуг користувачі можуть використовувати $NEON (пізніше ETH/ERC-20 токени).

Neon EVM побудований як смарт-контракт Solana. Крім перерахованих вище переваг також слід зазначити:

  • Програми можна писати, використовуючи знайомі мови: Solidity та Vyper

  • Розгортання програм Ethereum dApps здійснюється без будь-яких змін в інструментах смарт-контрактів

  • У розробці використовуються звичні інструменти Ethereum, такі як MetaMask, Truffle

  • Neon EVM легко оновлюється з появою нових функцій Ethereum

    Технологія

    Neon EVM написаний на Rust, а також як і Solana, використовує віртуальну машину BPF. Користувач Neon EVM – це будь-який користувач, який має обліковий запис у Neon з балансом у токенах NEON (пізніше ETH/ERC-20 токени), а клієнт – це будь-яка програма, яка має контракт на байт-код EVM (Solidity/Vyper/і т. д.), завантажений у Neon на Solana. Оператором мережі є будь-який обліковий запис Solana, який оплачує виконання транзакції Neon у $NEON (пізніше ETH/ERC-20 токени) та отримує оплату за цю роботу від користувача. Управління децентралізоване.

    Для здійснення задуманого необхідно було щось, що інтерпретує транзакції та оберне їх у транзакції Solana. Команда проекту хотіла, щоб розробники могли взаємодіяти з внутрішніми контрактами Solana та її токенами, які могли б перелітати через контракти до екосистеми Solana та назад. Посередником між клієнтами та самим Neon виступає Neon Web3 Proxy. Це сервіс, що надає API Web3 для доступу до блокчейну Solana і може керуватися операторами.

    Однак проксі-сервер не обов'язковий, він може бути замінений клієнтською бібліотекою. Його головне завдання допомогти клієнтам почати використовувати Neon без будь-яких змін у їхній кодовій базі. Proxy став посередником, він обслуговує та обгортає транзакції Ethereum у транзакції Solana, які сходять до вузлів Solana, і валідатори Solana перевіряють їх та обробляють, а потім викликають контракт Neon EVM.

    Функції Neon EVM:

    • Завантаження контрактів EVM (створених компіляторами Solidity/Vyper) в окремі облікові записи Solana.

    • Перевірте підписи відповідно до правил Ethereum на Solana.

    • Виконання транзакцій Neon

    • Розрахунок споживання газу відповідно до правил Ethereum.

    • Отримання платежу від користувача оператору Neon EVM за спожитий газ та збори

    • Розрахунок та зняття комісій у токенах $SOL у пул управління Neon EVM

    • Зберігання EVM-даних контрактів у вигляді хеш-таблиці з використанням зіставленого хеш-масиву Алгоритм Trie (HAMT).

    Як ми вже згадали, Neon EVM виконує паралельно транзакції Ethereum і Solana. Для цього реалізується кілька стратегій: кожен смарт-контракт зберігає свої дані у власному сховищі Solana, а залишки на рахунках, які використовуються для оплати транзакцій Neon, також поділені. Рішення дозволяє запускати будь-яку програму Ethereum на Solana без будь-яких змін у його кодовій базі, включаючи UNISWAP, SushiSwap, 0x та MakerDAO.

post image

Для паралельних транзакцій. Транзакції Neon виконуються Solana як власні транзакції: паралельно, обмежуючи доступ до загальних даних стану Solana. Коли транзакції відправляються через проксі, валідатори Solana отримують їх паралельно, потім підключається контракт Neon і виконуються на багатьох нодах Solana. Однак у деяких випадках транзакція Neon потребує більше ресурсів, ніж Solana виділяє одну транзакцію. У цьому випадку Neon EVM виконує транзакцію ітеративно, і використовується розширений режим обмеження доступу до загальних даних Solana.

Про ітеративні транзакції. Ми знаємо, що транзакції Ethereum можуть бути дуже довгими. У Solana не можна об'єднати транзакцію Ethereum в одну транзакцію Solana, тому потрібно їх розділити і обернути на кілька транзакцій Solana, але тоді все одно треба завершити одну транзакцію Solana і транзакцію Ethereum. Для вирішення цього необхідно завершити всі ці транзакції Solana та отримати кінцевий результат. Це називається ітеративним виконанням транзакції. Команда Neon прагне того, щоб ітеративні транзакції виконувались паралельно. Ітеративні транзакції викликають облікові записи (як і транзакції Solana), і щоб запобігти їх блокування, використовуються функції оцінки. Транзакції Solana виконуються без кінцевої оцінки, без записування до останніх транзакцій. Це зроблено для того, щоб побачити, якщо щось сталося між цими кроками. І можна було повернутися та перевірити.

Про незалежність операцій. Транзакції, отримані Neon EVM, не можуть бути дискриміновані, оскільки вони не мають жодних атрибутів, що визначають їх пріоритет. Незмінні поля nonce та підписи користувача, перевірені Neon EVM, гарантують узгодженість виконання транзакцій Neon та захищають від повторного виконання.

Отже, щоб дізнатися більше про проект обов'язково підписуйтесь на соціальні мережі :

Посилання на мої соціальні мережі:

  1. twitter

  2. discord — MikDanger1#8217