Logo
Поділитися цією статтею

Вузли та клієнти Ethereum : повний посібник

Терміни «клієнт Ethereum » і «вузол Ethereum » часто використовуються як синоніми, але є різниця.

У світі комп’ютерів «клієнт» відноситься до будь-якого типу програмного забезпечення, яке завантажується на ваш комп’ютер і допомагає вам взаємодіяти з іншим типом програмного забезпечення або служби, що надається сервером. Наприклад, Gmail — це програмний клієнт, який підключається до сервера електронної пошти та дозволяє користувачам надсилати та отримувати електронні листи.

Клієнт Ethereum — це програмне забезпечення, необхідне для того, щоб дозволити вузлам Ethereum читати блоки в блокчейні Ethereum і смарт-контрактах на основі Ethereum. «Вузол» — це робоча частина клієнтського програмного забезпечення. Щоб запустити вузол, вам потрібно спочатку завантажити клієнтську програму Ethereum .

Продовження Нижче
Не пропустіть жодної історії.Підпишіться на розсилку The Protocol вже сьогодні. Переглянути Всі Розсилки

Що таке вузли Ethereum ?

«Вузол» — це комп’ютер, який виконує певну функцію в мережі Ethereum і запускає для цього клієнтське програмне забезпечення. Залежно від ваших конкретних потреб, будь то децентралізована програма (dapp) або гаманець, існує три різні типи вузлів, які можуть бути запущені будь-яким клієнтом: повні вузли, легкі вузли та архівні вузли. Кожен вузол інтерпретуватиме дані по-різному та пропонуватиме різні методи синхронізації – це стосується того, як швидко ваш вузол зможе отримати оновлену інформацію для інтерпретації вашим клієнтом.

  • Повні вузли заповнені даними; вони зберігають і можуть поширювати всі дані блокчейну з мережі Ethereum . Повний вузол додатково бере участь у перевірці блоків (тобто перевіряє всі блоки та стани в мережі).

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

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

  • Легкі вузли схожі на повний вузол, але обробляють менше інформації. Світловий вузол зберігає інформацію про ланцюжок заголовків (основну інформацію, що зберігається в блоці, таку як позначка часу та хеш попереднього блоку), але отримуватиме додаткову інформацію лише за Request. Вони можуть перевіряти достовірність даних, але не беруть повної участі в перевірці блоку. Легкі вузли майже завжди реалізуються у віддалених клієнтах. Оскільки ці вузли не беруть на себе більш інтенсивні процеси зберігання та запису даних, вони виявилися корисними для пристроїв малої ємності, таких як смартфони.
  • Архівні вузли — це вузли, які зберігають всю інформацію, що й повний вузол, і створюють архів історичних станів блокчейну. Архівні вузли зберігатимуть історичні дані навіть після того, як клієнт завершить синхронізацію. З іншого боку, повні та легкі вузли «обрізають» історичні дані блокчейну, тобто вони можуть перебудувати, але не зберігають цю інформацію.

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

Що таке клієнт Ethereum ?

Клієнти можуть бути корисними для розробників, оскільки вони дозволяють їм взаємодіяти з мережею та іншими вузлами мережі за допомогою різних мов програмування. Ethereum Foundation підтримує кілька різних клієнтів для різних мов програмування, включаючи Go, Rust, Java і C#. Різні сторонні розробники також створили клієнти Ethereum для подальшої підтримки мови.

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

Фонд Ethereum підтримує таких клієнтів:

Це дає розробникам можливість реалізувати свої проекти на основі Ethereum. Якщо вибрана мова офіційно T підтримується Ethereum Foundation, існують численні сторонні клієнти Ethereum , які надають додаткову підтримку мови.

Причина, чому всі ці різні клієнти можливі, полягає в тому, що Ethereum визначається формальною специфікацією (тобто «Жовтий папір"). Формальні специфікації, які складають Ethereum , відрізняють блокчейн від Bitcoin. Якщо Ethereum визначає стандартну поведінку для Соціальні мережі клієнтів Ethereum , у Bitcoin CORE немає таких визначень. Забезпечуючи узгоджену документацію та чітку мову, специфікації Ethereum дозволили блокчейну забезпечити незалежні, але сумісні реалізації програмного забезпечення клієнта Ethereum .

Типи клієнта Ethereum

Повноцінний клієнт

Повноцінні клієнти зберігають весь блокчейн Ethereum ; процес, який може тривати кілька днів для синхронізації та вимагає величезного обсягу дискового простору – більше 1 терабайта, якщо бути точним, згідно з останні цифри. Повноцінні клієнти дозволяють підключеним вузлам виконувати всі завдання в мережі, включаючи майнінг, перевірку транзакцій і заголовків блоків і запуск смарт-контрактів.

Легкий клієнт

Клієнти Ethereum можуть бути реалізовані повністю або частково. У наведеному вище огляді пояснюється, як працює «повний» клієнт, однак важливо знати, що вам T завжди потрібно запускати повний клієнт. Як правило, коли йдеться про зберігання даних і швидкість, розробники обирають використання так званих «легких клієнтів».

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

Обсяг функціональних можливостей легкого клієнта пристосований до цілей клієнта Ethereum . Наприклад, легкі клієнти часто використовуються для керування приватними ключами та адресами Ethereum у гаманці. Крім того, вони, як правило, обробляють взаємодію смарт-контрактів і трансляції транзакцій. Інші способи використання віддалених клієнтів включають екземпляри web3 в об’єктах JavaScript, браузери dapp і отримання даних про обмінний курс.

Віддалений клієнт

Існує третій тип клієнта, який називається віддаленим клієнтом і схожий на легкого клієнта. Основна відмінність полягає в тому, що віддалений клієнт не зберігає власну копію блокчейну, а також не перевіряє транзакції чи заголовки блоків. Натомість віддалені клієнти повністю покладаються на повноцінний або легкий клієнт, який надає їм доступ до блокчейн-мережі Ethereum . Ці типи клієнтів переважно використовуються як гаманці для надсилання та отримання транзакцій.

Різниця між вузлами та клієнтами

Вузли та клієнти працюють ONE , і обидва терміни часто використовуються як взаємозамінні. Однак обидва вони працюють окремо, щоб отримати доступ до мережі Ethereum .

Подумайте про вузли та клієнти, що працюють як комп’ютер, який має доступ до Інтернету: вузол — це операційна система, наприклад Windows або iOS, а клієнт — це сам комп’ютер. Клієнтський комп’ютер дає користувачеві можливість отримати доступ до операційної системи вузла, яка, у свою чергу, дає вам можливість отримати доступ до Інтернету. Різні комп’ютери зможуть надати вам доступ до однієї операційної системи, а різні операційні системи нададуть вам доступ до одного Інтернету.

МетаМаска

Щоб побачити, як клієнти Ethereum працюють у реальному світі, ми можемо розглянути MetaMask як приклад. MetaMask — це гаманець на основі браузера, клієнт Remote Procedure Call (RPC) і базовий дослідник контрактів. Будь-який комп’ютер із Chrome, Firefox, Opera або Brave Browser може запускати MetaMask.

MetaMask — це реалізація віддаленого клієнта, який взаємодіє з блокчейном через легкий клієнт. Щоб уникнути проблем із безпекою, MetaMask використовує власний легкий клієнт для зв’язку з віддаленим клієнтом, щоб забезпечити ефективну безпеку та надійність транзакцій.

MetaMask є унікальним серед інших гаманців на основі браузера, оскільки він застосовує екземпляр web3 до зчитувача JavaScript у браузері, надаючи доступ до основної мережі Ethereum та інших тестових мереж, включаючи тестову мережу Ropsten, тестову мережу Kovan і локальний екземпляр вузла RPC. Незважаючи на свою унікальну функціональність, MetaMask все ще запускає віддалений клієнт, як і більшість гаманців інших браузерів. Віддалений клієнт забезпечує функціональність зберігання гаманця, трансляцію транзакцій і ін’єкції web3 JavaScript.

Griffin Mcshane

Гріффін МакШейн — трансплантований із Нью-Йорка, який зараз проживає в Брукліні, штат Нью-Йорк. Він закінчив коледж Провіденс, де вивчав інформатику та бізнес, а також Школу права Університету Мен, де отримав ступінь доктора права. Окрім написання для CoinDesk, Гріффін написав інформаційний бюлетень Inside Крипто для Inside.com Джейсона Калаканіса та є членом Міжнародної асоціації професіоналів із Політика конфіденційності (IAPP). Він не володіє істотною кількістю будь-якої Криптовалюта.

Griffin Mcshane