Вольдемар ВоронцовськийАвтор: 

Вольдемар Воронцовський

Відповідальний за розвиток журналу ІТстатті. Має діючий бізнес в IT-сфері. Спеціаліст в галузі заробітку та створенню сайтів.

Вольдемар ВоронцовськийВольдемар ВоронцовськийВольдемар Воронцовський

Що таке шардинг в блокчейні? Як це працює?

Останнє оновлення: Четвер, 25 січня 2024 Автор: Вольдемар Воронцовський

Що таке шардинг

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

Шардинг являє собою технологію масштабування бази даних, основна суть якої в тому, щоб розбити її на окремі сегменти, кожен з яких можна було б винести на окремий сервер.

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

Які проблеми вирішує шардинг?

Які проблеми вирішує шардинг?

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

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

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

Як все це працює

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

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

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

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

Недоліки шардингу

Головних проблем шардингу дві: комунікація між шардами та безпека.

  1. Комунікація. Якщо розділити мережу на ізольовані сектори, то кожен з них, по суті, стане окремим блокчейном. Користувачі та децентралізовані додатки одного шарду зможуть спілкуватися з користувачами та додатками іншого тільки використовуючи особливий комунікаційний протокол.
  2. Безпека. У мережі, розділеної на сегменти, набагато легше взяти під повний контроль один шард, оскільки для цього потрібно набагато менше хешрейту, ніж для захоплення нерозподіленої мережі. Наприклад, для того щоб здійснити атаку 51 % на мережу Bitcoin, будуть потрібні мільярди доларів на обладнання і сотні мільйонів доларів на день на електроенергію. Дорого, невигідно, нездійсненно. А ось захопити один шард набагато дешевше і простіше.

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

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

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

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

Які мережі вже використовують шардинг

Перша мережа, яка впровадила шардинг - Zilliqa. Вона позиціонує себе як блокчейн-платформа, метою якої є застосування сегментування для вирішення проблем масштабованості. На стадії тестнету вона змогла досягти показника в 2828 транзакцій/сек.

Екосистема блокчейна Near називає себе "шардованим блокчейном на PoS" і стверджує, що їхня технологія шардингу дає змогу вузлам залишатися доволі невеликими і використовувати для роботи пристрій із невисокою продуктивністю.

Ethereum також збирається впроваджувати технологію шардингу. Серед інших шардингових мереж - Cardano, QuarkChain, PChain.

Висновок

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

Читайте також - Proof-of-Burn (PoB): Що це за алгоритм і як він працює.


Вітаю всіх на нашому інтернет-журналі. Я - Вольдемар Воронцовський. Цей матеріал написаний і опублікований одним з наших авторів (експертом у своїй справі). За кожною статтею стоїть досвідчений співробітник нашої команди, який перевірив матеріал на помилки і актуальність. Познайомитися з нами можна в розділі - «».


Підписуйтесь на наш канал в Telegram 👉 там все про крипту та інвестиції

Додати коментар


Захисний код
Оновити