Съдържание
Въведение
Проблемът с мащабируемостта на блокчейн
В резултат на това се оказваме в нещо като стеснение. Блокчейн може да се разглежда като влакова услуга, която тръгва на определени интервали. Има само ограничени места във всеки вагон и за да получат билет, пътниците трябва да подадат оферти, за да гарантират място. Ако всички се опитват да се качат във влака едновременно, цената ще бъде висока. По същия начин, мрежа, задръстена с чакащи трансакции, ще изисква от потребителите да плащат по-високи такси, за да видят трансакцията си включена навреме.
Създателят на Ethereum Виталик Бутерин измисли трилемата за мащабируемост, за да опише предизвикателството, пред което са изправени блокчейните. Той теоретизира, че протоколите трябва да правят компромиси между мащабируемост, сигурност и децентрализация. Те са донякъде в противоречие помежду си – като се фокусирате твърде много върху две от свойствата, третото ще се влоши.
Какви са решенията за мащабиране извън веригата?
Извънверижното мащабиране се отнася до подходи, които позволяват да се изпълняват трансакции без раздуване на блокчейна. Протоколите, които се включват във веригата, позволяват на потребителите да изпращат и получават средства, без трансакциите да се появяват в основната верига. Ще се потопим в две от най-забележителните постижения на този фронт: страничните вериги и каналите за плащане.
Въведение в страничните вериги
Какво е странична верига?
Страничната верига е отделен блокчейн. Това обаче не е самостоятелна платформа, тъй като е свързана по някакъв начин с основната верига. Основната верига и страничната верига са оперативно съвместими, което означава, че активите могат да преминават свободно от едната към другата.
Как работи страничната верига?
Да предположим, че нашата приятелка Алис има пет биткойна. Тя иска да ги обмени за пет еквивалентни единици в странична верига на биткойн – нека ги наречем странични монети. Въпросната странична верига използва двупосочна връзка, което означава, че потребителите могат да прехвърлят своите активи от основната верига към страничната верига и обратно.
Алис вече е превърнала своите монети в странични монети, но винаги може да обърне процеса, за да си върне биткойните. Сега, след като е влязла в страничната верига, тя е свободна да извършва трансакции в тази отделен блокчейн. Тя може да изпраща странични монети или да ги получава от други, точно както би направила в основната верига.
Тя може, например, да плати на Боб една странична монета за фланелка с качулка на Binance. Когато иска да се върне към биткойн, тя може да изпрати останалите си четири странични монети на специален адрес. След като трансакцията бъде потвърдена, четири биткойна ще бъдат отключени и доставени на адрес, който тя контролира в основната верига.
Защо се използват страничните вериги?
Може да се чудите какъв е смисълът на това. Защо Алис просто не използва биткойн блокчейн?
Разбира се, вероятно няма нужда от това ниво на сигурност за малки ежедневни плащания. Ако Алис плаща за кафе, тя няма да стои да чака трансакцията да бъде потвърдена. Би стояла в опашката и питието ѝ ще стане студено, докато си го вземе.
Интересното е, че страничните вериги могат дори да имат критични грешки, без да засягат основната верига. Това им позволява да се използват като платформи за експериментиране и за разгръщане на функции, които иначе биха изисквали консенсус от по-голямата част от мрежата.
При условие че потребителите са доволни от компромисите, страничните вериги могат да бъдат неразделна стъпка към ефективно мащабиране. Няма изискване възлите на главната верига да съхраняват всяка трансакция от страничната верига. Алис може да влезе в страничната верига с една трансакция с биткойн, да извърши стотици трансакции от странична верига и след това да излезе от страничната верига. Що се отнася до блокчейна на биткойн, тя е изпълнила само две – едно за влизане и едно за излизане.
Въведение в каналите за плащане
Какво е канал за плащане?
Каналите за плащане имат същата цел като страничните вериги на фронта за мащабируемост, но са фундаментално много различни. Подобно на страничните вериги, те изтласкват трансакциите извън основната верига, за да предотвратят раздуването на блокчейна. За разлика от страничните вериги обаче, те не изискват отделен блокчейн, за да функционират.
Как работи каналът за плащане?
Да кажем, че всеки депозира по 10 BTC на адрес, който сега съдържа 20 BTC. Би било лесно за тях да поддържат баланс, който започва да казва, че Алис и Боб имат по 10 BTC всеки. Ако Алис искаше да даде на Боб монета, те биха могли да го актуализират да показва, че Алис има 9 BTC, Боб има 11 BTC. Не би трябвало да публикуват в блокчейна, тъй като продължават да актуализират тези баланси.
Когато му дойде времето обаче, да кажем, че Алис има 5 BTC, а Боб има 15 BTC. След това те биха могли да създадат трансакция, която изпраща тези салда до адреси, собственост на страните, да я подпишат и да я излъчват.
Алис и Боб можеха да запишат десет, сто или хиляда трансакции в баланса си. Но що се отнася до блокчейна, те са извършили само две операции във веригата: една за първоначалната трансакция за финансиране и една за преразпределяне на баланса, когато са готови. Освен тези две, всички други трансакции са безплатни и почти мигновени, тъй като се извършват извън веригата. Няма такса за копаене за плащане и няма потвърждения за блокиране, които да чакате.
Насочване на плащане
Очевидно каналите за плащане са удобни за две страни, които очакват голям обем трансакции. Но нещата се подобряват. Мрежа от тези канали може да бъде разработена, което означава, че Алис може да плати на страна, с която не е пряко свързана. Ако Боб има отворен канал с Керъл, Алис може да ѝ плати, при условие че има достатъчно капацитет. Тя ще прехвърли средства към канала на Боб, който от своя страна ще ги насочи към Керъл. Ако Керъл е свързана с друг участник, Дан, може да се направи същото.
Такава мрежа се развива в разпределена топология, където всеки се свързва с множество партньори. Често ще има множество маршрути до дестинация и потребителите ще могат да изберат най-ефективния.
Заключителни мисли
Обсъдихме два подхода за мащабируемост, които позволяват извършването на трансакции, без да се натоварва основния блокчейн. Както страничните вериги, така и технологията на платежните канали все още не са узрели, но те се използват все повече от потребители, които искат да заобиколят недостатъците на трансакциите на основния слой.
С течение на времето и все повече потребители се присъединяват към мрежата, важно е децентрализацията да се поддържа. Това е постижимо само чрез налагане на ограничения върху растежа на блокчейна, така че новите възли да могат лесно да се присъединят. Привържениците на решенията за мащабируемост извън веригата вярват, че с времето основната верига ще се използва само за сетълмент на трансакции с висока стойност или за свързване/излизане на странични вериги и отваряне/затваряне на канали.