Ръководство за начинаещи за отделен свидетел (SegWit)
Начало
Статии
Ръководство за начинаещи за отделен свидетел (SegWit)

Ръководство за начинаещи за отделен свидетел (SegWit)

Средно ниво
Публикувано Nov 25, 2019Актуализирано Jun 13, 2023
6m

Какво е SegWit?

Отделен свидетел (SegWit) е надстройка на протокол, разработена през 2015 г. Концепцията беше въведена като решение на проблема с мащабируемостта, пред който блокчейн мрежите бяха и все още са изправени днес. 

Средно Биткойн мрежата валидира нов блок на всеки 10 минути, всеки от които съдържа няколко трансакции. Като такъв размерът на блока влияе върху броя трансакции, които могат да бъдат потвърдени във всеки блок. В момента блокчейнът на Биткойн може да обработва около 7 трансакции в секунда.

Основната идея на SegWit е да реорганизира блоковите данни, така че подписите вече да не се поставят заедно с данните за трансакциите. С други думи, надграждането на SegWit се състои в отделяне на свидетелите (подписи) от данните за трансакциите. Това позволява повече трансакции да се съхраняват в един блок, увеличавайки пропускателната способност на трансакциите в мрежата.

Тъй като е в състояние да обработва само около 7 трансакции в секунда, преминаването на една биткойн трансакция понякога може да отнеме много време. Това е много по-бавно в сравнение с конвенционалните решения за плащане и финансови мрежи, които могат да обработват хиляди трансакции в секунда.

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

Днес няколко проекта за криптовалута използват SegWit, включително Биткойн и Litecoin. Надграждането на протокола доведе до много предимства, като подобрена скорост на трансакция и капацитет на блокове. Също така, SegWit разреши така наречената грешка в пластичността на трансакциите (обсъдена по-долу).


Какви са предимствата на SegWit?

Увеличаване на капацитета

Едно от най-големите предимства на SegWit е увеличаването на капацитета на блока. Чрез премахване на данните за подпис от входа на трансакцията, повече трансакции могат да бъдат съхранени в рамките на един блок.

Трансакциите се състоят от два основни компонента: входове и изходи. По същество входът съдържа публичния адрес на подателя, докато изходът съдържа публичния адрес на получателя. Изпращачът обаче трябва да докаже, че има средствата, които се прехвърлят, и ги прехвърля с дигитален подпис.

Без SegWit данните за подписа могат да заемат до 65% от блок. Със SegWit данните за подписа се преместват от входа на трансакцията. Това води до увеличаване на ефективния размер на блока от 1 MB до около 4 MB.

Имайте предвид, че SegWit не е действително увеличение на размера на блока. Това е инженерно решение за увеличаване на ефективния размер на блока, без да се налага да се увеличава ограничението за размер на блока (което би изисквало твърдо разклонение). За да бъдем по-конкретни, действителният размер на блока все още е 1 MB, но ефективният размер на блока е 4 MB.

Освен това SegWit въведе идеята за теглото на блока. Можем да разглеждаме теглото на блока като концепция, която замества идеята за размера на блока. По същество теглото на блока е мярка, която включва всички блокови данни, включително данни за трансакции (1 MB) и данни за подпис (до 3 MB), които вече не са част от полето за въвеждане.


Увеличаване на скоростта на трансакцията

С блок, който може да съхранява повече трансакции, SegWit също има способността да увеличи скоростта на трансакциите, тъй като може да има по-голямо количество трансакции, движещи се през блокчейна. Въпреки че един блок може да отнеме същото време за копаене, повече трансакции се обработват в него, така че скоростта на TPS е по-висока.

Повишената скорост на трансакциите също спомогна за намаляване на трансакционните разходи в биткойн мрежата. Преди SegWit не беше необичайно да харчите над $30 на трансакция. SegWit обаче е намалил драстично тази цена до по-малко от $1 на трансакция.


Искате да навлезете в света на криптовалутите? Купете Биткойн (BTC) в Binance!


Коригиране на пластичността на трансакциите

Основен проблем с биткойн беше възможността за потенциално подправяне на подписите на трансакциите. Ако подпис бъде променен, това може да доведе до повреда на трансакция между две страни. Тъй като данните, съхранявани в блокчейн, са практически неизменни, невалидните трансакции могат да се съхраняват постоянно в блокчейна.

Със SegWit подписите вече не са част от данните за трансакциите, което премахва възможността за промяна на тези данни. Тази корекция позволи допълнителни иновации в блокчейн общността, включително протоколи от второ ниво и смарт договори.


Какво представлява Lightning Network

Разработването на протоколи от второ ниво беше частично разрешено чрез коригиране на грешката с пластичността на трансакциите. Казано по-просто, протоколите от второ ниво са нови платформи или продукти, които са изградени върху блокчейн, като биткойн. Един от най-популярните протоколи от второ ниво е Lightning Network, off-chain мрежа за микроплащания.

Lightning Network е протокол от второ ниво, който работи над биткойн мрежата. Основната цел на Lightning Network е да позволи потвърждаването на повече трансакции за по-кратък период от време, което води до по-бързи трансакции за потребителите. Трансакциите се събират off-chain и ефективно се буферират, за да може биткойн мрежата в крайна сметка да ги обработи.

Мрежата Lightning първоначално е разработена за Биткойн. Въпреки това, няколко други проекта за криптовалута и блокчейн работят върху внедряването на технологията за своите мрежи. Това не само ще намали времето за потвърждение на трансакциите, но и ще насърчи разработването на нови решения на проблема с мащабируемостта.


SegWit срещу SegWit2x

SegWit е ъпгрейд на меко разклонение, което означава, че е обратно съвместимо. Това означава, че дори биткойн възлите, които все още не са актуализирани, за да включват SegWit, все още могат да обработват трансакции. Въпреки това, имаше друга предложена реализация на SegWit, наречена SegWit2x (S2X), която ще изисква надграждане на твърдото разклонение.

Ключовата разлика между SegWit и SegWit2x е, че последният би включил не само промяна в пакетирането на трансакциите, но и увеличаване на размера на блока (от 1MB на 2MB). И все пак, по-големият размер на блока би увеличил тежестта върху операторите на възли и миньорите, тъй като ще има повече данни за обработка. 

Друга забележителна разлика е, че предложението на SegWit беше подкрепено и наложено от биткойн общността. Епизодът роди концепцията за UASF, което означава активирано от потребителя меко разклонение.

От друга страна, SegWit2x предложи съществена промяна на едно от основните правила, управляващи биткойн. Но тъй като разработчиците не успяха да постигнат консенсус относно неговото приемане и внедряване, движението SegWit2x в крайна сметка беше спряно.


Вложен SegWit срещу нативен SegWit (bech32)

Накратко, нативният SegWit (известен също като bech32) е актуализирана версия на вложения SegWit. Форматът bech32 предлага повишена скорост на трансакция, по-добри механизми за откриване на грешки и дори по-ниски такси за трансакции. Освен това адресите на bech32 са с малки букви, което ги прави по-лесни за четене.

Имайте предвид, че блокчейн трансакциите между адреси, които не са SegWit (Legacy), вложен SegWit и нативен SegWit (bech32), са напълно съвместими. Въпреки това, не всички борси и крипто портфейли поддържат SegWit, така че има вероятност да не можете да теглите средства директно на адрес на SegWit.

Борсата Binance поддържа SegWit депозити и тегления за Биткойн (BTC). Можете да намерите повече информация в често задаваните въпроси за SegWit.


Заключителни мисли

Внедряването на SegWit отбеляза най-голямото надграждане на биткойн протокола и фактът, че беше подкрепено и внедрено от децентрализираната общност, го прави още по-интересен.

Въвеждането на SegWit беше голяма стъпка напред в решаването на много проблеми, свързани с биткойн и други блокчейн мрежи - особено по отношение на мащабируемостта. Чрез комбинацията от SegWit и протоколите от второто ниво, блокчейн мрежите могат да обработват по-голям брой трансакции с по-голяма ефективност и по-ниски разходи.

Въпреки че е мощно и иновативно решение, SegWit все още не е напълно възприет. В момента процентът на биткойн адресите, използващи SegWit, е около 53%.