Повністю гомоморфний зашифрований протокол EVM fhEVM читайте в одній статті

Автор: ZAMA, перекладач: Золотий фінанс сяоцзоу

fhEVM — це протокол конфіденційного смарт-контракту EVM, розроблений ZAMA, повністю гомоморфним проєктом шифрування.

Блокчейн, як децентралізований механізм зберігання та обробки даних, вимагає прозорості, щоб дозволити членам мережі досягти консенсусу щодо стану системи. Ця прозорість сама по собі є величезною проблемою конфіденційності, оскільки всі дані в ланцюжку широко поширені та загальнодоступні, навіть якщо вони приховані за анонімними адресами.

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

Мета fhEVM полягає в тому, щоб вирішити цю проблему за допомогою блокчейнів загального призначення (Turing-complete), таких як Ethereum. Ми вважаємо, що єдиний спосіб для того, щоб розробка смарт-контрактів була масштабованою, — це не вимагати від розробників досвіду в криптографії. Ось чому наші рішення розроблені таким чином, щоб забезпечити плавну та інтуїтивно зрозумілу роботу розробників. Крім того, успішне рішення для збереження конфіденційності має підтримувати поширені варіанти використання блокчейну та шаблони проектування, такі як легке об’єднання даних від різних користувачів, зберігання зашифрованих даних у мережі та комбінації смарт-контрактів.

Рішення, яке ми пропонуємо, базується на комбінації повністю гомоморфного шифрування (FHE) і порогового протоколу. Усі дані ончейн і доступні для всіх, а деякі з них у зашифрованому вигляді. У зв’язку з детермінованим характером обчислення гомоморфних функцій кожен може виконувати обчислення на зашифрованих даних і використовувати типові протоколи консенсусу. Це також навмисно зберігає ключову перевагу прозорості блокчейну: виконані обчислення залишаються публічними, тоді як приховані лише дані, що обчислюються.

1, fhEVM

У цій статті ми розглянемо інноваційні компоненти блокчейну та те, як їх можна використовувати для створення блокчейну на основі віртуальної машини Ethereum (EVM), який підтримує обчислення криптографічних значень. Конкретні внески такі:

· fhEVM, яка буде бібліотекою FHE з відкритим вихідним кодом Zama TFHE-rs [Zam22] Інтегровано в типовий EVM, який представляє гомоморфні операції як попередньо скомпільовані контракти.

· Механізм дешифрування на основі розподіленого порогового протоколу [DDE+23].[Sma23] , який запобігає поганій роботі шкідливих смарт-контрактів, але є гнучким і дружнім для чесних розробників смарт-контрактів.

· Бібліотека Solidity дозволяє розробникам смарт-контрактів легко використовувати зашифровані дані у своїх контрактах, не змінюючи інструмент компіляції.

Зверніть увагу, що хоча представлена тут презентація заснована на блокчейні EVM, наш підхід дуже універсальний і також може підтримувати інші блокчейни, такі як блокчейни на основі WASM. Крім того, можна легко використовувати непорогові механізми дешифрування класів.

2, приклади

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

2.1 Токени Crypto ERC-20

Стандарт взаємозамінних токенів ERC-20 є важливим стандартом для блокчейнів. Однак через публічний характер системи блокчейн особисті баланси власників токенів ERC-20 є публічними, і просте надання анонімної адреси може призвести до проблем з особистою конфіденційністю. Оскільки fhEVM підтримує використання криптографічних значень у смарт-контрактах, є можливість побудувати криптографічну версію стандарту токенів ERC-20. Для цього просто змініть тип даних балансу з цілого на криптографічне ціле число та замініть кожну операцію відповідним відповідником PHE.

2.2 Сліпа стрільба

Закриті аукціони за першою ціною дозволяють учасникам подавати заявки приватно, щоб ніхто не знав, що вони пропонують. Коли ставка закривається, визначається учасник, який запропонував найвищу ціну, і оголошується переможцем. Сліпі аукціони заохочують учасників торгів робити ставки не більше, ніж вони мають на увазі вартість лота. Ця форма аукціону може бути реалізована повністю ончейн з використанням криптографічних значень, природно, без необхідності в тому, щоб довірена організація виконувала розрахунки за ставками у відкритому тексті, на відміну від рішень на основі промісів або доказів з нульовим розголошенням. За допомогою криптовалютних токенів ERC-20 учасники торгів просто переводять суму криптовалюти в смарт-контракт сліпого аукціону, а потім порівнюють ставки, щоб визначити та оголосити переможця.

2.3DAO для розширеної конфіденційності

Децентралізовані автономні організації (DAO) стають все більш популярними в блокчейн-просторі як спосіб створення автономних спільнот без центрального органу влади. Вони покладаються на смарт-контракти для забезпечення дотримання правил і прийняття рішень на основі голосів учасників. Як правило, DAO мають власну скарбницю, якою керують їхні члени за допомогою пропозицій. Пропозиції голосуються членами і можуть бути реалізовані лише після того, як за них проголосували. Система голосування тут може бути реалізована за допомогою контракту токенів ERC-20, де кількість токенів, якими володіють учасники, відображає їхню силу голосу. Таким чином, криптографічні значення в ланцюжку дозволяють членам DAO голосувати таємно.

Використовуючи криптосховища, DAO також можуть чесно конкурувати на аукціонах, не дозволяючи іншим знати деталі коштів (тобто можливість робити ставки) заздалегідь.

2.4 Децентралізовані ідентифікатори

Децентралізовані ідентифікатори (DID) — це новий тип ідентифікаторів, який надає окремим особам і організаціям автономні цифрові ідентифікатори, які можна перевірити. Використовуючи зашифровані дані, смарт-контракти, розташовані в fhEVM, можуть безпечно зберігати та обробляти конфіденційну інформацію, пов’язану з ідентифікацією користувачів, захищаючи конфіденційність користувачів протягом усього процесу.

Наприклад, центральний орган влади або уряд може опублікувати криптографічну дату народження авторизованого користувача в смарт-контракті. Згодом уповноважена сторона може зробити запит на смарт-контракт, якщо це необхідно для отримання інформації про вік користувача (наприклад, чи досяг він повноліття).

3, пов’язана робота

Існує кілька способів виконання обчислень смарт-контрактів на приватних входах. Хоча деякі рішення можуть використовувати більше однієї технології, ми поділяємо ці технології на чотири категорії:

Докази з нульовим розголошенням (ZK), довірене середовище виконання (TEE), безпечні багатосторонні обчислення (MPC) і гомоморфне шифрування (HE).

3.1 Доведення з нульовим розголошенням (ZK)

Докази ZK вирішують проблеми конфіденційності, зберігаючи лише надіслані дані в ланцюжку та правильно обчислюючи докази. Однак, щоб розрахунки відбулися, ці дані повинні бути у відкритому тексті, а це означає, що копія даних у відкритому тексті повинна зберігатися десь. Цей підхід добре працює, коли для обчислень потрібні дані лише від однієї сторони, але як щодо програм, які вимагають даних від кількох сторін?

ZCash [BCG+14] і Monero [Mon23] [Ped92]Забезпечте анонімність як відправнику, так і одержувачу транзакції, використовуючи зобов’язання Pedersen Захист конфіденційності для кількості токенів, що торгуються.

Zexe [BCG+20] і VeriZexe [XCZ+23] дозволяють використовувати zkSNARK для оцінки довільних скриптів у блокчейнах з нульовою готівкою. Обмеження полягає в тому, що оскільки кілька смарт-контрактів або кілька сторін не мають доступу до криптографічного стану в ланцюжку, вхідні дані повинні бути відомі принаймні одній стороні, щоб згенерувати zkSNARK. Наразі неможливо оновити стан шифрування, не розкривши його за допомогою цього методу.

Hawk [KMS+16] використовує докази ZK, де вхідні дані смарт-контракту відображаються довіреному менеджеру, який виконує обчислення.

Наше рішення полягає в тому, щоб виконувати обчислення безпосередньо із зашифрованими даними, що означає, що легко агрегувати та змішувати дані від кількох користувачів, а обчислення можна виконувати в мережі.

3.2 Довірене середовище виконання (TEE)

Блокчейн-система на основі TEE зберігає лише зашифровані дані в ланцюжку та виконує обчислення, розшифровуючи дані всередині безпечного анклаву, що містить ключі розшифровки [YXC+18, KGM19, CZK+19, SCR23, Oas23, Pha23]. Безпека такого рішення залежить від того, чи надійно міститься ключ дешифрування в Secure Enclave. Це робить користувачів залежними від апаратного забезпечення Secure Enclave та його виробників, які покладаються на механізми віддаленої атестації.

Неодноразово було показано, що анклавний метод сприйнятливий до кількох атак на сторонні канали [VMW+18, LSG+18, KHF+19, vMK+21, TKK+22, vSSY+22], включаючи атаки, які розглядають лише витоки шаблонів доступу до пам’яті [JLLJ+23].

3.3Багатосторонні обчислення (MPC)

zkHawk [BCT21] [BT22]та V-zkHawk Використовуючи протокол MPC замість довіреного менеджера в Hawk [KMS+16], всі сторони введення повинні брати участь онлайн.

Орел [BCDF23] Структура Hawk була вдосконалена, щоб дозволити клієнтам передавати свої вхідні дані на аутсорсинг механізму MPC, який виконуватиме розрахунки за них. Eagle також додав такі функції, як ідентифіковані аборти та можливість публічної перевірки до аутсорсингового механізму MPC. Хоча в Eagle сторона введення не обов’язково повинна бути постійно онлайн, їм потрібно взаємодіяти з рушієм MPC принаймні протягом одного раунду, щоб забезпечити вхідні дані [DDN+16].

Хоча їхня жовта книга дуже докладна, в ній немає нічого про партизію [Par23] Як реалізувати захист конфіденційності, що зберігається в інформації.

3.4Гомоморфне шифрування (HE)

Було запропоновано ряд гомоморфних криптографічних рішень, заснованих на частковій гомоморфній криптографії, яка обмежує типи операцій, які можуть бути виконані, так що підтримуються лише певні класи смарт-контрактів і додатків. Наприклад, Zether [BAZB20] Використання схеми шифрування на основі ElGamal забезпечує конфіденційний переказ коштів. Але коли справа доходить до більш складних смарт-контрактів, цього недостатньо для досягнення повної секретності.

Zkay [SBG+19] визначає, як виконувати смарт-контракти Ethereum за допомогою FHE, але з використанням довіреної третьої сторони, яка володіє ключем розшифровки. smartFHE [SWA23] [FV12]Використовується BFV FHE побудований як блок базового шару (HE). У своєму налаштуванні кожен гаманець запускає процес генерації ключів BFV локально, щоб отримати пару відкритих ключів. Кілька гаманців мають різні ключі, тому для виконання більш складних смарт-контрактів, таких як сліпі аукціони, необхідно запустити протокол розподіленої генерації ключів і згенерувати спільний (PK, SK). Потім шифротекст, який бере участь в обчисленні, повинен бути повторно зашифрований під новим PK, а після гомоморфного виконання сліпого пострілу потрібно запустити розподілений протокол дешифрування, щоб отримати результат (хоча протокол розподіленого дешифрування не детально описаний в їх документації).

РИБОЛОВЛЯ [Dai22] Використовуючи архітектуру, подібну до нашої, використовується глобальний відкритий ключ PK, який кожен використовує для шифрування власних балансів, а пороговий протокол FHE використовується для розшифровки вихідних даних. Одна з головних відмінностей полягає в тому, що їх порогові операції за модулем протоколу виконуються з q = p як простим числом, тоді як наше застосовується до кільця zq, де q зазвичай є степенем 2. Ще одна відмінність полягає в тому, що в PSCA поріг модуля FHE q експоненціально пов’язаний з числом сторін-учасниць n; Тобто модуль шифротексту повинен збільшуватися (n!) в порівнянні з безпороговою схемою 3 рази.

Було кілька пропозицій щодо покращення Ethereum (EIP), які досліджували ідею додавання гомоморфного криптографічного сховища до EVM.

Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Репост
  • Поділіться
Прокоментувати
0/400
Немає коментарів
  • Закріпити