Leased Proof of Stake კონსენსუსის ალგორითმი და Waves-NG პროტოკოლი
ავტორი: გაი ბრენდონი, Waves-ის კონტრიბუტორი.
Waves ქსელი იყენებს leased proof-of-stake (LPoS) კონსენსუსის ალგორითმს Waves-NG პროტოკოლთან ერთად, რაც მასშტაბურობასა და ტრანზაქციების გამტარუნარიანობას ზრდის.
შესავალი
Waves ქსელი დაფუძნდა 2016 წელს, როცა ICO-მ მოიზიდა 30,000 BTC – მაშინდელი მონაცემებით დაახლოებით $16 მილიონი. პროექტი ქმნის ყოვლისმომცველ ბლოკჩეინ ეკოსისტემას ბიზნეს-პროცესებში გამოსაყენებლად; სხვადასხვა საჭიროებებზე მორგებულ ინსტრუმენტების პაკეტს - მათ შორის კონკრეტული მიზნით შექმნილ კრიპტოვალუტის ტოკენებს, პირდაპირ სმარტ კონტრაქტებს; peer-to-peer ვაჭრობას ჩაშენებულ დეცენტრალიზებულ ბირჟაზე (DEX) და dAPP-ებთან ინტერაქციის უსაფრთხო, მარტივ საშუალებებსა და ვებ-სერვისებს Waves Keeper ბრაუზერის plug-in-ის გამოყენებით.
მასშტაბირებადობა
Waves-მა თავიდანვე ამოიცნო თუ როგორი მასშტაბურობა იქნებოდა საჭირო ბლოკჩეინის მასობრივად მიღებისთვის, ამიტომ მათ პრიორიტეტად არსებული ბლოკჩეინების ლიმიტების აღმომფხვრელი ტექნოლოგიის შექმნა იქცა. მაგალითად, Bitcoin უსაფრთხო, მაგრამ შედარებით ნელი ბლოკჩეინია, რომლის სიჩქარეც მხოლოდ 7 ტრანზაქციაა წამში (TPS). ასე რომ Bitcoin მთელ მსოფლიოში ყოველდღიური გამოყენებისთვის საკმარისად ეფექტიანი არ არის. ამ მიზნის მისაღწევად Bitcoin-ს სჭირდება მეორე დონის გადაწყვეტები, როგორიცაა Lightning Network. Waves-ის მიდგომა სხვანაირია, მეორე დონის აპლიკაციების ნაცვლად მნიშვნელობა on-chain მასშტაბირებას ენიჭება.
ბალანსის იჯარა
Waves-ის თავდაპირველი კონსენსუსის მექანიზმი იყო Proof of Stake-ის მარტივი გამოყენება. მთლიანი მარაგი, 100 მილიონი WAVES ტოკენი ICO-ს შემდეგ გადანაწილდა, მარაგი კი ფიქსირებულია: არ არსებობს ინფლაცია როგორც PoW-თი შექმნილი მონეტების შემთხვევაში. შესაბამისად Waves-ის ბლოკის ვალიდატორები (Forger-ები, თუმცა Waves-ის ეკოსისტემაში მათ მარტივად „მაინერებს“ უწოდებენ) იღებენ ტრანზაქციის საკომისიოს მათ მიერ დამუშავებული ყოველი ბლოკიდან, თუმცა არ იღებენ ბლოკის ჯილდოს.
Leased Proof of Stake (LPoS) სისტემა სრულად 2017 წლის მაისში გაეშვა და Waves lite კლიენტის მომხმარებლებს – მათ ვინც მთლიან ნოდს არ იყენებს – Waves ტოკენების მაინინგ ნოდებისთვის იჯარით გაცემის საშუალება მისცა. იჯარით გაცემული WAVES-ები მომხმარებლის ანგარიშზე იბლოკება, ამიტომ მათი გადარიცხვა ან ვაჭრობა შეუძლებელია. ამის მიუხედავად ტოკენები ანგარიშის მფლობელის კონტროლის ქვეშ რჩება და იჯარის გაუქმება ნებისმიერ დროს არის შესაძლებელი. მაინინგ ნოდის მართვასთან და 24/7 ონლაინ ყოფნასთან დაკავშირებული ტექნიკური ხარჯების გამო Waves საზოგადოების წევრების მხოლოდ მცირე ნაწილია ჩართული ნოდების მართვაში (ბლოკების შემქმნელთა სია შეგიძლიათ ნახოთ აქ https://dev.pywaves.org/generators/).
მაინინგ ნოდებზე იჯარით გაცემული WAVES ტოკენები მაინერის ხმის ძალის გასაზრდელად გამოიყენება რაც მაინერის მიერ შემდეგი ბლოკის პოვნის შანსს ზრდის. Leased Proof of Stake სისტემა ქსელის უსაფრთხოებას სულ მცირე ორი მიმართულებით აუმჯობესებს. პირველ რიგში, რაც უფრო მეტი WAVES იქნება გამოყენებული ქსელის უსაფრთხოებისთვის მით უკეთესია, რადგან თავდამსხმელისთვის რთულდება 51%-ით თავდასხმის განხორციელებისთვის საკმარისი ტოკენების მოგროვება. ამას გარდა, WAVES-ების იჯარით გაცემა შესაძლებელია მომხმარებლის ცივი საცავის ანგარიშიდან, თუმცა თავად ნოდი – რომელიც ონლაინ რჩება – მხოლოდ მინიმალურ ბალანსს ფლობს. ეს მნიშვნელოვნად ამცირებს WAVES ტოკენების ონლაინ კომპიუტერიდან მოპარვის რისკს, რადგან იჯარით გაცემული თანხები მაინერთან გაგზავნილი არ არის.
ახალი მიდგომა კონსენსუსებისადმი: Waves-NG
ქსელის მომდევნო განახლება 2017 წლის დეკემბერში, Waves-NG-ის გაშვებით მოხდა. ეს პროტოკოლი დაფუძნებულია Bitcoin-NG შეთავაზებაზე, რომელიც შექმნა კორნელის უნივერსიტეტის ინფორმაციული ტექნოლოგიების პროფესორმა ემინ გიუნ სირერმა.
Bitcoin-ის თავდაპირველი პროტოკოლი თითოეულ მაინერს რეტროსპექტიულად ირჩევდა. ბლოკჩეინზე ბლოკის დამატების შემდეგ მანერები ეჯიბრებიან ერთმანეთს შემდეგი ბლოკისთვის ვალიდური ჰეშის საპოვნად ბლოკჩეინის მიმდინარე მდგომარეობის მიხედვით. ამასობაში ახლად გენერირებული ტრანზაქციები გადაინაცვლებენ მეხსიერების პულში (mempool), სადაც დარჩებიან მაინერის მიერ ვალიდაციამდე.
მართალია Bitcoin და Bitcoin-NG პროტოკოლები ბიზანტიური პრობლემის ამტანად (BFT) ითვლება, ეს უკანასკნელი 2015 წელს იქნა შეთავაზებული, როგორც განსხვავებულ სამუშაო მექანიზმზე დაფუძნებული მასშტაბირებადი ალტერნატივა. Bitcoin-NG სისტემაში მომდევნო მაინერის არჩევა წინასწარ ხდება, ის ქმნის ცარიელ „ბლოკ-გასაღებს“ - ეს არის ბლოკი, რომელიც საბოლოოდ ბლოკჩეინს დაემატება. მცირე ზომის ბლოკები, რომლებსაც „მიკრობლოკები“ ეწოდება (თითოეული მხოლოდ რამდენიმე ტრანზაქციისგან შედგება) ბლოკ-გასაღებს თითქმის რეალურ დროში ემატება. მაგალითი ყოველდღიურობიდან რომ მოვიტანოთ, ეს ჰგავს რამდენიმე სავაჭრო ჩანთის (მიკრობლოკის) ურიკაში (ბლოკ-გასაღებში) ჩამატებას სანამ სავსე ურიკა სალაროსთან გადაინაცვლებს (ბლოკჩეინს დაემატება). ეს ნიშნავს, რომ ტრანზაქციები ბლოკჩეინს რამდენიმე წამში ემატება, დროს მხოლოდ ქსელის დაყოვნება აჭიანურებს. Waves-მა ეს იდეა proof-of-stake ქსელისთვის განავითარა და შექმნა Waves-NG პროტოკოლი – Bitcoin-NG-ის ღია, საჯარო ბლოკჩეინში გამოყენების პირველი შემთხვევა.
ეკოსისტემა განვითარდა MassTransfers-ის დამატებით. ამგვარად შესაძლებელია 100-მდე გადარიცხვა ერთ ტრანზაქციად შეიკრას და შემცირებული საკომისიოთი განხორციელდეს. თითო MassTransfers-ზე 100 გადარიცხვის ლიმიტი შერჩეულ იქნა როგორც კომპრომისი ერთი მხრივ შესაძლებლობებისა და კომფორტულობის დამატებასა და მცირე საკომისიოთი დიდი მოცულობის ტრანზაქციების განხორციელებას შორის. მეტი გადარიცხვის საჭიროების შემთხვევაში შესაძლებელია რიგ-რიგობით რამდენიმე MassTransfers-ის მითითება.
სხვა სიტყვებით რომ ვთქვათ, მომხმარებლებს შეუძლიათ MassTransfer-ი გამოიყენონ როგორც „ტრანზაქციის გაგზავნა“, რაც მათ ერთ ტრანზაქციაში 100-მდე მიმღების ჩასმის საშუალებას აძლევს. მეტიც, შესაძლებელია მიმღების მისამართების JSON ფორმატში მიწოდება ან CSV ფაილად ატვირთვა, რაც ამარტივებს დიდი ზომის airdrop-ების განხორციელებასა და ყოველკვირეულ გადახდას მათთვის, ვისაც საკუთარი WAVES მაინინგ ნოდებზე აქვთ იჯარით გაცემული. Waves-NG-სთან ერთად MassTransfers ფუნქცია ქსელს ძალიან დიდ გამტარუნარიანობას ანიჭებს.
Waves ქსელში გამტარუნარიანობის ახალი პროტოკოლის გასაზომად არაერთი სტრეს ტესტი ჩატარდა. 2018 წლის ოქტომბერში MainNet-ზე დიდი სტრეს ტესტი ჩატარდა. ამან აჩვენა, რომ ღია, საჯარო ბლოკჩეინ პროტოკოლს (არა უბრალოდ შეზღუდულ და კონტროლირებად TestNet-ს) შეუძლია გაატაროს 6.1 მილიონ ტრანზაქციაზე მეტი 24 საათის განმავლობაში – წუთში 4,200 ტრანზაქცია, წამში კი 71; მაქსიმალური გამტარუნარიანობისას კი წამში რამდენიმე ასეული ტრანზაქცია ხორციელდება.
შეჯამება
მომხმარებლებს, ვისაც საკმარისი ტექნიკური ცოდნა არ აქვს Leased Proof-of-Stake სისტემა ეხმარება Waves ქსელის დაცვაში, WAVES-ის იჯარით გაცემა ტოკენზე კონტროლის დაკარგვის გარეშე. Waves-NG წამში 100 ტრანზაქციის გატარების საშუალებას იძლევა, რაც ბლოკჩეინების უმეტესობის მაჩვენებელს ძალიან აღემატება. საკომისიო დაბალია, რადგან არ არსებობს საჭიროება ელექტრობის ღირებულებისა და ძვირადღირებული აპარატურისთვის კომპენსაციის სახით მაინერებმა ბლოკის ჯილდო მიიღონ.
On-chain მასშტაბირება Waves-ის პრიორიტეტია, მაგრამ არსებობს ლიმიტები იმასთან დაკავშირებით, რომელი ბლოკჩეინები მოახერხებენ ასეთ მასშტაბირებას აუცილებელი მეხსიერებისა და გამტარუნარიანობის გამო. Waves-ის დეველოპერებს სჯერათ, რომ შესაძლებელია არსებული მიდგომის ოპტიმიზება 1,000-მდე TPS-ს მისაღწევად, სანამ შემდგომი მასშტაბირების გადაწყვეტა გახდება საჭირო. ამჟამად Waves იკვლევს მეორე დონის მასშტაბირების გადაწყვეტებს, მათ შორის საიდჩეინებს, რაც საშუალებას იძლევა ტრანზაქციების დიდი რაოდენობა პარალელურ ჩეინზე განხორციელდეს და ძირითად Waves ბლოკჩეინზე იქნას დაცული.