Легкий клієнт Helios: реалізація доступу до Ethereum без довіри
8 листопада криптовалютна інвестиційна компанія запустила легкий клієнт Ethereum Helios. Цей клієнт написаний мовою Rust і призначений для забезпечення повністю незалежного доступу до Етер.
Однією з великих переваг блокчейну є відсутність необхідності в довірі. Завдяки технології блокчейн ми можемо самостійно контролювати свої багатства та дані. Блокчейни, такі як Ethereum, у більшості випадків дійсно виконали цю обіцянку: наші активи насправді належать нам.
Однак, для зручності ми також зробили деякі компроміси. Одним з них є використання централізованих RPC (віддалених викликів) серверів. Користувачі зазвичай отримують доступ до Ethereum через централізованих постачальників. Ці компанії працюють на високопродуктивних вузлах на хмарних серверах, допомагаючи всім легко отримувати доступ до даних на ланцюгу. Коли гаманець перевіряє баланс токенів або перевіряє, чи були оброблені очікуючі транзакції, майже завжди використовуються ці централізовані постачальники.
Проблема поточної системи полягає в тому, що користувачі повинні довіряти цим постачальникам, не маючи можливості перевірити, чи є результати запитів правильними.
Helios є легким клієнтом Ethereum, що базується на Rust, і може забезпечити повністю бездоставний доступ до Ethereum. Він використовує протокол легкого клієнта, спричинений переходом Ethereum на PoS, для перетворення даних від ненадійних централізованих постачальників RPC на безпечні та перевіряємi локальні RPC. У поєднанні з централізованим RPC, Helios може перевіряти достовірність даних без запуску повного вузла.
Цей клієнт може завершити синхронізацію приблизно за дві секунди і не вимагає зберігання, користувачі можуть отримати доступ до безпечних даних на ланцюгу з будь-якого пристрою (включаючи мобільні телефони та плагіни для браузера). Але які потенційні ризики залежать від централізованої інфраструктури? Далі ми розглянемо ці ризики, представимо дизайн Helios та надамо кілька ідей, які допоможуть розробникам робити внески в кодову базу.
Потенційні ризики централізованої інфраструктури
В екосистемі Ethereum існує теоретичний спосіб атаки. Ця атака не полягає в пошуку цілей у пам'яті транзакцій, а в налаштуванні пастки шляхом імітації централізованої інфраструктури, на яку ми покладаємося. Жертви не зробили нічого неправильно: вони просто, як зазвичай, відвідують децентралізовану біржу, встановлюють розумний сліп і проводять обмін токенів. Проте вони можуть зіткнутися з новим типом сендвіч-атаки, яка є ретельно налаштованою пасткою у постачальника RPC.
Щоб зрозуміти цю атаку, нам потрібно розібратися, як децентралізовані біржі обробляють угоди. Коли користувач здійснює обмін, він надає смарт-контракту кілька параметрів: токени, які потрібно обміняти, суму обміну та, що найважливіше, мінімальну кількість токенів, яку користувач готовий прийняти. Останній параметр визначає "мінімальний вихід", якого потрібно досягти для обміну, інакше угода буде скасована. Це зазвичай називається "сліпим" (slippage), оскільки він ефективно встановлює максимальний ціновий розрив, який може виникнути між моментом надсилання угоди до пулу пам'яті та моментом, коли угода буде включена в блок.
Якщо постачальник RPC не надає точну ціну смарт-контракту децентралізованої біржі, користувачі можуть бути введені в оману, підписуючи обмінні транзакції з нижчими мінімальними параметрами виходу. Ще гірше, що користувачі можуть безпосередньо надсилати транзакції зловмисному постачальнику RPC. Постачальник може не транслювати цю транзакцію до публічного мемпулу, а натомість приватно утримувати і безпосередньо надсилати атаковані транзакційні пакети певній службі, з якої отримує прибуток.
Причина цієї атаки полягає в довірі до інших у допомозі з отриманням стану блокчейну. Щоб вирішити цю проблему, досвідчені користувачі зазвичай запускають свої власні вузли Ethereum, але це потребує значних витрат часу та ресурсів. Хоча зараз запуск вузлів спростився в порівнянні з минулим, для більшості користувачів, особливо тих, хто використовує мобільні пристрої, це все ще залишається складним.
Слід зазначити, що атаки централізованих постачальників RPC, хоча теоретично можливі, насправді ще не відбувалися. Минулі записи великих постачальників заслуговують на довіру, але перед додаванням незнайомого постачальника RPC до гаманця все ж варто провести деякі дослідження.
Helios: повністю безпечний доступ до Ethereum
Після запуску протоколу легкого клієнта Ethereum відкрилися нові можливості для швидкої взаємодії з блокчейном та перевірки RPC-інтерфейсів з мінімальними вимогами до апаратного забезпечення. Протягом місяця після The Merge з'явилося кілька незалежних легких клієнтів, кожен з яких має свої особливості, але з однаковою метою: забезпечити ефективний доступ без довіри, без необхідності використовувати повні вузли.
Helios є легким клієнтом Ethereum, який може завершити синхронізацію приблизно за дві секунди, не потребуючи зберігання, і забезпечує повний доступ до Ethereum без довіри. Як і всі клієнти Ethereum, Helios складається з виконавчого рівня та рівня консенсусу. Але на відміну від більшості інших клієнтів, Helios тісно поєднує ці два рівні, користувачеві потрібно лише встановити та запустити одне програмне забезпечення.
Принцип роботи Helios наступний: шар консенсусу використовує відомий хеш блоку сигнальної мережі та підключається до ненадійного RPC, щоб верифікованим способом синхронізуватися з поточним блоком. Виконавчий шар поєднує ці верифіковані блоки сигнальної мережі з ненадійним RPC виконавчого шару для перевірки різної інформації про стан на ланцюгу, такої як баланси рахунків, зберігання контрактів, квитанції про транзакції та результати викликів смарт-контрактів. Ці компоненти працюють разом, щоб надати користувачам абсолютно ненадійний RPC без необхідності запуску повного вузла.
Використання Helios у практичних застосуваннях
За допомогою легкого клієнта Helios користувачі можуть отримувати доступ до безпечних даних на ланцюгу з будь-якого пристрою (включаючи мобільні телефони та плагіни для браузера). Це дозволить більшій кількості людей без довіри отримувати доступ до даних Ethereum без обмежень апаратного забезпечення. Користувачі можуть використовувати Helios як свого RPC постачальника в деяких гаманцях для бездовірчого доступу до різних децентралізованих додатків, весь процес не потребує жодних інших змін.
Крім того, підтримка Rust для WebAssembly дозволяє розробникам програм застосовувати Helios в додатках Javascript (таких як гаманці та децентралізовані додатки). Ці інтеграції підвищать безпеку Ethereum і зменшать нашу залежність від централізованої інфраструктури.
Спільнота може зробити внесок у Helios різними способами, окрім того, щоб додавати цегли до кодової бази, вона також може створювати програмне забезпечення, що інтегрує Helios. Деякі захоплюючі ідеї включають:
Підтримка отримання даних легкого клієнта безпосередньо з P2P-мережі, а не через RPC
Розгорніть деякі відсутні RPC-методи
Створення версії Helios, що може компілюватися в WebAssembly
Інтегрувати Helios безпосередньо у програмне забезпечення гаманця
Побудуйте інформаційну панель мережі для перегляду залишків токенів, вбудуйте Helios на сайт, який використовує WebAssembly, для отримання даних.
Розгорніть API двигуна, підключіть консенсусний шар Helios до повного вузла існуючого виконавчого шару
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
15 лайків
Нагородити
15
5
Репост
Поділіться
Прокоментувати
0/400
just_another_fish
· 08-13 11:39
Централізоване виходу
Переглянути оригіналвідповісти на0
AirdropHunter007
· 08-13 07:00
Нарешті можу самостійно контролювати свої фінанси~
Переглянути оригіналвідповісти на0
CryptoCrazyGF
· 08-13 07:00
Не кажіть більше, як почую rust, хочеться блювати.
Helios легкий клієнт: двосекундна синхронізація для бездовірчого доступу до Ethereum
Легкий клієнт Helios: реалізація доступу до Ethereum без довіри
8 листопада криптовалютна інвестиційна компанія запустила легкий клієнт Ethereum Helios. Цей клієнт написаний мовою Rust і призначений для забезпечення повністю незалежного доступу до Етер.
Однією з великих переваг блокчейну є відсутність необхідності в довірі. Завдяки технології блокчейн ми можемо самостійно контролювати свої багатства та дані. Блокчейни, такі як Ethereum, у більшості випадків дійсно виконали цю обіцянку: наші активи насправді належать нам.
Однак, для зручності ми також зробили деякі компроміси. Одним з них є використання централізованих RPC (віддалених викликів) серверів. Користувачі зазвичай отримують доступ до Ethereum через централізованих постачальників. Ці компанії працюють на високопродуктивних вузлах на хмарних серверах, допомагаючи всім легко отримувати доступ до даних на ланцюгу. Коли гаманець перевіряє баланс токенів або перевіряє, чи були оброблені очікуючі транзакції, майже завжди використовуються ці централізовані постачальники.
Проблема поточної системи полягає в тому, що користувачі повинні довіряти цим постачальникам, не маючи можливості перевірити, чи є результати запитів правильними.
Helios є легким клієнтом Ethereum, що базується на Rust, і може забезпечити повністю бездоставний доступ до Ethereum. Він використовує протокол легкого клієнта, спричинений переходом Ethereum на PoS, для перетворення даних від ненадійних централізованих постачальників RPC на безпечні та перевіряємi локальні RPC. У поєднанні з централізованим RPC, Helios може перевіряти достовірність даних без запуску повного вузла.
Цей клієнт може завершити синхронізацію приблизно за дві секунди і не вимагає зберігання, користувачі можуть отримати доступ до безпечних даних на ланцюгу з будь-якого пристрою (включаючи мобільні телефони та плагіни для браузера). Але які потенційні ризики залежать від централізованої інфраструктури? Далі ми розглянемо ці ризики, представимо дизайн Helios та надамо кілька ідей, які допоможуть розробникам робити внески в кодову базу.
Потенційні ризики централізованої інфраструктури
В екосистемі Ethereum існує теоретичний спосіб атаки. Ця атака не полягає в пошуку цілей у пам'яті транзакцій, а в налаштуванні пастки шляхом імітації централізованої інфраструктури, на яку ми покладаємося. Жертви не зробили нічого неправильно: вони просто, як зазвичай, відвідують децентралізовану біржу, встановлюють розумний сліп і проводять обмін токенів. Проте вони можуть зіткнутися з новим типом сендвіч-атаки, яка є ретельно налаштованою пасткою у постачальника RPC.
Щоб зрозуміти цю атаку, нам потрібно розібратися, як децентралізовані біржі обробляють угоди. Коли користувач здійснює обмін, він надає смарт-контракту кілька параметрів: токени, які потрібно обміняти, суму обміну та, що найважливіше, мінімальну кількість токенів, яку користувач готовий прийняти. Останній параметр визначає "мінімальний вихід", якого потрібно досягти для обміну, інакше угода буде скасована. Це зазвичай називається "сліпим" (slippage), оскільки він ефективно встановлює максимальний ціновий розрив, який може виникнути між моментом надсилання угоди до пулу пам'яті та моментом, коли угода буде включена в блок.
Якщо постачальник RPC не надає точну ціну смарт-контракту децентралізованої біржі, користувачі можуть бути введені в оману, підписуючи обмінні транзакції з нижчими мінімальними параметрами виходу. Ще гірше, що користувачі можуть безпосередньо надсилати транзакції зловмисному постачальнику RPC. Постачальник може не транслювати цю транзакцію до публічного мемпулу, а натомість приватно утримувати і безпосередньо надсилати атаковані транзакційні пакети певній службі, з якої отримує прибуток.
Причина цієї атаки полягає в довірі до інших у допомозі з отриманням стану блокчейну. Щоб вирішити цю проблему, досвідчені користувачі зазвичай запускають свої власні вузли Ethereum, але це потребує значних витрат часу та ресурсів. Хоча зараз запуск вузлів спростився в порівнянні з минулим, для більшості користувачів, особливо тих, хто використовує мобільні пристрої, це все ще залишається складним.
Слід зазначити, що атаки централізованих постачальників RPC, хоча теоретично можливі, насправді ще не відбувалися. Минулі записи великих постачальників заслуговують на довіру, але перед додаванням незнайомого постачальника RPC до гаманця все ж варто провести деякі дослідження.
Helios: повністю безпечний доступ до Ethereum
Після запуску протоколу легкого клієнта Ethereum відкрилися нові можливості для швидкої взаємодії з блокчейном та перевірки RPC-інтерфейсів з мінімальними вимогами до апаратного забезпечення. Протягом місяця після The Merge з'явилося кілька незалежних легких клієнтів, кожен з яких має свої особливості, але з однаковою метою: забезпечити ефективний доступ без довіри, без необхідності використовувати повні вузли.
Helios є легким клієнтом Ethereum, який може завершити синхронізацію приблизно за дві секунди, не потребуючи зберігання, і забезпечує повний доступ до Ethereum без довіри. Як і всі клієнти Ethereum, Helios складається з виконавчого рівня та рівня консенсусу. Але на відміну від більшості інших клієнтів, Helios тісно поєднує ці два рівні, користувачеві потрібно лише встановити та запустити одне програмне забезпечення.
Принцип роботи Helios наступний: шар консенсусу використовує відомий хеш блоку сигнальної мережі та підключається до ненадійного RPC, щоб верифікованим способом синхронізуватися з поточним блоком. Виконавчий шар поєднує ці верифіковані блоки сигнальної мережі з ненадійним RPC виконавчого шару для перевірки різної інформації про стан на ланцюгу, такої як баланси рахунків, зберігання контрактів, квитанції про транзакції та результати викликів смарт-контрактів. Ці компоненти працюють разом, щоб надати користувачам абсолютно ненадійний RPC без необхідності запуску повного вузла.
Використання Helios у практичних застосуваннях
За допомогою легкого клієнта Helios користувачі можуть отримувати доступ до безпечних даних на ланцюгу з будь-якого пристрою (включаючи мобільні телефони та плагіни для браузера). Це дозволить більшій кількості людей без довіри отримувати доступ до даних Ethereum без обмежень апаратного забезпечення. Користувачі можуть використовувати Helios як свого RPC постачальника в деяких гаманцях для бездовірчого доступу до різних децентралізованих додатків, весь процес не потребує жодних інших змін.
Крім того, підтримка Rust для WebAssembly дозволяє розробникам програм застосовувати Helios в додатках Javascript (таких як гаманці та децентралізовані додатки). Ці інтеграції підвищать безпеку Ethereum і зменшать нашу залежність від централізованої інфраструктури.
Спільнота може зробити внесок у Helios різними способами, окрім того, щоб додавати цегли до кодової бази, вона також може створювати програмне забезпечення, що інтегрує Helios. Деякі захоплюючі ідеї включають: