Посібник для початківців із Segregated Witness (SegWit)
Головна сторінка
Статті
Посібник для початківців із Segregated Witness (SegWit)

Посібник для початківців із Segregated Witness (SegWit)

Просунутий рівень
Опубліковано Nov 25, 2019Оновлено Jun 13, 2023
6m

Що таке SegWit?

Segregated Witness (SegWit) - це оновлення протоколу, розроблене в 2015 році. Дана концепція була представлена в якості вирішення проблем з масштабністю, з якою стикалися і продовжують стикатися блокчейн-мережі.

В середньому мережа Bitcoin перевіряє кожні 10 хвилин новий блок, кожен з яких містить декілька транзакцій. Таким чином, розмір блоку впливає на кількість транзакцій, які можуть бути підтверджені в кожному блоці. Наразі блокчейн Bitcoin може обробляти близько 7 транзакцій на секунду.

Основна ідея SegWit полягає в реорганізації даних в блоці, щоб підписи розміщувалися окремо від інформації про транзакції. Іншими словами, оновлення SegWit складається з відділення свідків (підписів) від даних транзакцій. Це дозволяє зберігати більше транзакцій в одному блоці шляхом збільшення пропускної здатності мережі.

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

SegWit був розроблений у 2015 році розробником Bitcoin, Pieter Wuille разом з іншими учасниками Bitcoin Core. У серпні 2017 року оновлення SegWit було реалізовано у вигляді софт-форку в мережі Bitcoin.

Сьогодні декілька криптовалютних проєктів використовують SegWit, зокрема Bitcoin і Litecoin. Оновлення протоколу принесло багато переваг, таких як поліпшена швидкість транзакцій та ємність блоків. Крім того, SegWit вирішив так звану помилку обробності (гнучкості) транзакцій (обговорюється нижче).


Переваги передбачені в SegWit

Збільшення пропускної здатності

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

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

Без SegWit дані підписи можуть займати до 65% всього блоку. SegWit дозволяє видаляти підписи з вхідних даних про транзакції. Це призводить до збільшення ємності блоку з 1 МБ до приблизно 4 МБ.

Зверніть увагу, що SegWit не передбачає збільшення розміру самого блоку. Це інженерне рішення, що дозволяє залучити весь потенціал блоку без необхідності збільшення його поточного розміру (що можливо тільки в разі хард-форку). Фактичний розмір блоку, як і раніше залишається 1 МБ, але ефективний граничний розмір складе 4 МБ.

Також SegWit висунув ідею ваги блоку. Ми можемо розглядати вагу блоку як концепцію, яка підміняє ідеї про його розміри. По суті, вага блоку – це вимірювання, яке містить весь вміст блоку, серед якого дані про транзакції (1 МБ) і підписи (до 3 МБ), які більше не є частиною поля введення.


Збільшення швидкості транзакцій

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

Збільшена швидкість транзакцій також допомогла знизити операційні витрати в мережі Bitcoin. До оновлення, зазвичай треба було заплатити більше 30$ за транзакцію. SegWit різко знизив вартість комісії до менш ніж 1$.


Хочете почати торгувати криптовалютою? Купуйте Bitcoin (BTC) на Binance!


Виправлення пластичності транзакцій

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

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


SegWit і Lightning Network

Розробка протоколів другого рівня стала частково можливою завдяки виключенню пластичності транзакцій. Висловлюючись в простому формулюванні, протоколи другого рівня - це нові платформи або продукти, побудовані поверх блокчейну, такого як Bitcoin. Одним з найбільш популярних протоколів другого рівня є Lightning Network і офчейн-мережа мікроплатежів.

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

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


SegWit проти SegWit2x

SegWit – це софт-форк оновлення із зворотною сумісністю. Іншими словами, Bitcoin ноди, що не оновлені для включення SegWit, як і раніше можуть обробляти транзакції. Однак була ще одна запропонована реалізація SegWit під назвою SegWit2x (S2X), для якої потрібно хард-форк оновлення.

Основна відмінність між SegWit і SegWit2x полягає в тому, що варіант з хард-форком не тільки змінює порядок пакетування транзакцій, але також і збільшує розмір блоку (з 1 Мб до 2 Мб). Подібні зміни можуть збільшити навантаження на ноди та майнерів, через обробки більших обсягів даних.

Ще одна помітна відмінність полягає в тому, що оновлення SegWit було підтримано і реалізовано Bitcoin спільнотою. Така подія створила концепцію під назвою UASF (від англ. User-activated soft fork), яка означає софт-форк, що активований користувачами.

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


Nested SegWit проти Native SegWit (bech32)

Коротше кажучи, Native SegWit (також відомий як bech32) - це оновлена версія Nested SegWit. Формат bech32 пропонує підвищену швидкість транзакцій, кращі механізми виявлення помилок і навіть нижчі комісії за транзакції. Крім того, адреси bech32 мають нижній регістр, що спрощує їх читання.

Зверніть увагу, що блокчейн транзакції між адресами, відмінними від SegWit (Legacy), Nested SegWit та Native SegWit (bech32), повністю сумісні. Однак не всі біржі та крипто-гаманці підтримують SegWit, тому ви не зможете знімати кошти напряму на адресу SegWit.

Біржа Binance підтримує депозити та зняття SegWit для Bitcoin (BTC). Ви можете знайти більше інформації у SegWit FAQ.


Підсумки

Реалізація SegWit ознаменувало собою найбільше оновлення протоколу Bitcoin, а той факт, що його підтримала і здійснила децентралізована спільнота, робить його ще більш цікавим.

Софт-форк SegWit став важливим кроком у вирішенні багатьох проблем пов'язаних з Bitcoin та іншими блокчейн-мережами, особливо проблем масштабованості. Завдяки комбінації SegWit і протоколів другого рівня, блокчейни можуть більш ефективно обробляти більшу кількість транзакцій за меншу вартість.

Незважаючи на те, що це потужне та інноваційне рішення, на цей момент не всі учасники мережі повністю здійснили оновлення. Тепер відсоток Bitcoin-адрес, що використовують SegWit становить близько 53%.

Поділіться дописами
Реєстрація акаунту
Застосуйте свої знання на практиці, відкривши акаунт Binance вже сьогодні.