Давайте поговоримо про суперсилу Starknet: Sierra. Коли ви створюєте блокчейн на базі ZK з віртуальною машиною на базі ZK для загальних обчислень (як у Каїрі для Starknet), виникне питання: як зробити віртуальну машину одночасно безпечною для блокчейну *і* дружньою для ZK? Проблема полягає в недетермінізмі. Поясню: zkVM стають набагато ефективнішими, якщо секвенсор/провер може «вгадувати» певні записи і магічно їх заповнювати. Проблема в тому, що це відкриває простір для різних атак: зловмисний користувач може надіслати повідомлення, яке важко вгадати, а шкідливий секвенсер/провер може вирішити не вгадувати правильне значення, щоб нашкодити користувачу. Яке рішення? - Один із варіантів — усунути недетермінованість. Але це шкодить ефективності. - Інший варіант — використовувати ігрові методи, щоб інші секвенсори карали атакуючих, одночасно стимулюючи деякі секвенсори включати хороші транзакції. - Третій варіант — побудувати безпечне проміжне представлення (ми називаємо його: Sierra). Сьєрра дозволяє саме той тип недетермінізму, який можна заповнити всі припущення. У процесі використання цього інструменту дозволяє вирішувати інші цікаві речі, наприклад, додати газове вимірювання як частину процесу компіляції. Резюме: Під капотом Каїра, найкращої мови смарт-контрактів, прихована перлина — суперсила, яка дозволяє безпечно та ефективно працювати на основі блокчейну ZK. Тільки на Starknet, майбутніх технологій сьогодні.