Обяснение на консенсус за наето доказателство за залог
Начало
Статии
Обяснение на консенсус за наето доказателство за залог

Обяснение на консенсус за наето доказателство за залог

Напреднал
Публикувано Apr 28, 2019Актуализирано Oct 25, 2023
6m

Алгоритъм за консенсус за наето доказателство за залог и протокола Waves-NG

Автор: Гай Брандън, сътрудник на Waves.

Мрежата на Waves работи на консенсусен алгоритъм за наето доказателство за залог (LPoS), комбиниран с протокола Waves-NG, което позволява висока степен на мащабируемост и пропускателна способност на трансакциите.


Въведение

Мрежата Waves стартира през 2016 г. след ICO, което събра 30 000 BTC – около 16 милиона долара по това време. Проектът разработва цялостна блокчейн екосистема за използване в бизнес процеси, с широкообхватен набор от инструменти, покриващ различни нужди - включително лесно създаване на персонализирани криптовалутни токени; ясни смарт договори; peer-to-peer търговия на вградена децентрализирана борса (DEX); и безопасно, удобно средство за взаимодействие с dApp-ове и уеб услуги чрез приставката за браузър Waves Keeper.


Мащабируемост

От самото начало Waves разбра, че мащабируемостта ще бъде необходима за масовото приемане на блокчейна, и даде приоритет на разработването на технология за справяне с ограниченията на съществуващите блокчейни. Например биткойнът е много сигурен, но относително бавен и може да поддържа само около 7 трансакции в секунда (TPS). Като такъв биткойн не е достатъчно ефективен, за да се използва като ежедневна валута в световен мащаб. Решения от второ ниво, като например Lightning Network, са необходими, за да може Биткойнът да служи на тази цел. Waves възприе различен подход, фокусирайки се първоначално върху висока мащабируемост във веригата, преди да обмисли приложения от второ ниво.


Наемане на баланс

Оригиналният консенсусен алгоритъм на Waves беше проста реализация на доказателство за залог. Всичките 100 милиона токена WAVES бяха разпределени след ICO и предлагането е фиксирано: няма инфлация, както е при монетите, добивани с PoW. Следователно валидаторите на блокове на Waves (създаващи, въпреки че те обикновено са известни просто като „копачи“ в екосистемата на Waves) получават такси за трансакции от блоковете, които обработват, но не и блок награди. 

Системата за наето доказателство за залог (LPoS) беше напълно пусната през май 2017 г., позволявайки на потребителите на клиента Waves lite – тези, които не са стартирали пълен възел – да отдадат под наем своите WAVES токени на възли за копаене. Наетите WAVES се заключват в акаунта на потребителя и не могат да бъдат прехвърляни или търгувани. Все пак токените остават под пълен контрол на притежателя на акаунта и отдадените могат да бъдат анулирани по всяко време. Като се имат предвид техническите разходи, свързани с работата на възел за копаене и необходимостта да бъдете онлайн денонощно, само относително малка част от общността на Waves управлява възли (списък с генератори на блокове може да бъде намерен на https://dev.pywaves.org/generators/). 

Токените WAVES, които се отдават под наем на възел за копаене, се използват за увеличаване на дяловото тегло на копача, което от своя страна увеличава шансовете този копач да намери следващия блок. Системата за наето доказателство за залог подобрява мрежовата сигурност по поне два начина. Първо, колкото повече WAVES се използват за защита на мрежата, толкова по-добре, защото за атакуващия става по-трудно да натрупа токените, необходими за извършване на 51% атака. Второ, WAVES може да бъде отдаден под наем на възел от адреса на хладилното хранилище на потребителя, но самият възел – който остава онлайн – може да има само минимален баланс. Това значително намалява риска токените WAVES да бъдат хакнати от компютри, които са онлайн, тъй като наетите средства не се прехвърлят към копача.


Нов подход към консенсус: Waves-NG

Допълнително надграждане на мрежата се случи през декември 2017 г. с пускането на Waves-NG. Това беше нов протокол, базиран на предложението Bitcoin-NG от професора по информационни технологии на Cornell Емин Гюн Сирер.

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

Въпреки че протоколите на Биткойн и Bitcoin-NG се считат за системи с толерантност към византийска грешка (BFT), последният беше предложен през 2015 г. като мащабируема алтернатива, базирана на различен работен механизъм. В система Bitcoin-NG следващият копач се избира предварително и този копач създава празен „ключов блок“ – който е блокът, който в крайна сметка ще бъде добавен към блокчейна. Малки блокове, наречени „микроблокове“ (състоящи се от няколко трансакции всеки) се добавят в почти реално време към този ключов блок. Ако използваме ежедневна аналогия, това е като да добавите няколко торби с покупки (микроблокове) към количка (ключов блок), преди пълната количка да бъде закарана до касата (добавена към блокчейна). Това означава, че трансакциите могат да се добавят към блокчейна само за няколко секунди, като единственото реално забавяне е латентността на мрежата. Waves актуализира тази идея за мрежа с доказателство за залог, създавайки протокола Waves-NG – първото внедряване на Bitcoin-NG за отворен, публичен блокчейн.

Друго допълнение към екосистемата е MassTransfers. Те позволяват до 100 трансфера да бъдат пакетирани в рамките на една трансакция с намалени такси. Ограничението от 100 трансакции на MassTransfer беше избрано като компромис между добавянето на значителен капацитет и удобство, от една страна, и ограничаването на възможността за изпращане на много големи партиди евтини трансакции наведнъж, от друга страна. Ако трябва да се извършат повече преводи, могат да бъдат изпратени последователно множество преводи с MassTransfer. 

С други думи, потребителите могат просто да изберат MassTransfer като различен вид „Изпращане на трансакция“, което им позволява да включат до 100 получателя в една трансакция. Освен това адресите на получателите могат да бъдат предоставени чрез JSON или качени от CSV файл, което прави лесно и ефективно провеждането на големи еърдропове или извършването на седмични изплащания на тези, които отдават под наем своите WAVES на възли за копаене. Комбинирана с Waves-NG, функцията MassTransfer позволи много висока скорост на пропускателна способност в мрежата.

Редица стрес тестове бяха проведени в мрежата Waves, за да се прецени пропускателният потенциал на новия протокол. През октомври 2018 г. беше проведен голям стрес тест на MainNet. Това показа, че публичният отворен блокчейн протокол (не просто ограничен и контролиран TestNet) може да поддържа над 6,1 милиона трансакции в рамките на 24-часов период – средно 4200 трансакции в минута или 71 трансакции в секунда, с пикова пропускателна способност, достигаща стотици трансакции в секунда.


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

Системата за наето доказателство за залог даде възможност на ежедневните потребители без технически опит да помогнат за защитата на мрежата Waves, отдавайки под наем своите WAVES на пълни възли, без да губят контрол върху своите токени. Междувременно Waves-NG активира пропускателна способност до 100 TPS, което е с порядък повече от много блокчейни. Таксите са ниски, защото няма нужда да плащате на копачите с блок награди, за да ги компенсирате за високите разходи за електроенергия и скъпия хардуер.

Мащабируемостта във веригата е приоритет за Waves, но има ограничения до степента, в която всеки блокчейн може да мащабира по този начин поради необходимото съхранение и честотна лента. Разработчиците на Waves вярват, че настоящият подход може да бъде оптимизиран, за да поддържа до 1000 TPS, преди да са необходими допълнителни решения за мащабиране. В момента Waves проучва опции за решение за мащабиране от второ ниво, включващо странични вериги, което позволява голям брой трансакции да бъдат обработвани в паралелна верига, но в крайна сметка защитени в основния блокчейн на Waves.

Споделяне на публикации
Регистриране на акаунт
Приложете знанията си на практика, като отворите акаунт в Binance днес.