{"id":39478,"date":"2019-10-31T22:33:41","date_gmt":"2019-10-31T19:33:41","guid":{"rendered":"https:\/\/prohoster.info\/blog\/chto-takoe-igra-validatorov-ili-kak-zapustit-proof-of-stake-blokchejn\/"},"modified":"2019-10-31T22:33:41","modified_gmt":"2019-10-31T19:33:41","slug":"chto-takoe-igra-validatorov-ili-kak-zapustit-proof-of-stake-blokchejn","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/chto-takoe-igra-validatorov-ili-kak-zapustit-proof-of-stake-blokchejn","title":{"rendered":"Mis on valideerijate m\u00e4ng v\u00f5i \"kuidas k\u00e4ivitada proof-of-stake plokiahel\"","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Nii, teie meeskond on l\u00f5petanud oma blokiahela alpha-versiooni, ja n\u00fc\u00fcd on aeg k\u00e4ivitada testnet, seej\u00e4rel mainnet. Teil on t\u00f5eline blokiahel, iseseisvate osalistega, hea majandusmudel, k\u00fcberturvalisus, olete kavandanud juhtimise ja n\u00fc\u00fcd on aeg seda k\u00f5ike proovida. Ideaalsetes kr\u00fcptoanarhilistes tingimustes postitate geneesi ploki, l\u00f5pliku s\u00f5lme koodi ja valideerijad k\u00e4ivitavad k\u00f5ik ise, t\u00f5stavad \u00fcles k\u00f5ik abiteenused ja k\u00f5ik juhtub iseenesest. Kuid see on v\u00e4ljam\u00f5eldud maailmas, reaalses elus peab meeskond ette valmistama rohkesti abiseadet ja erinevaid manipuleerimisi, et aidata valideerijatel \u00fcles ehitada stabiilne v\u00f5rk. Sellest r\u00e4\u00e4gib see artikkel.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Konsensusmehhanismide, nagu \u201et\u00f5endus osalusest\u201d (proof-of-stake), p\u00f5hjal t\u00f6\u00f6tavate v\u00f5rkude k\u00e4ivitamine, kus valideerijad m\u00e4\u00e4ratakse s\u00fcsteemi tokeni hoidjate h\u00e4\u00e4ltega, on \u00fcsna spetsiifiline ettev\u00f5tmine, kuna isegi traditsiooniliste, tsentraliseeritult hallatavate s\u00fcsteemide k\u00e4ivitamine, millel on k\u00fcmneid ja sadu, <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/et\/server\/\"   title=\"serverid\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1275\">serverid<\/a> iseseisvate osaliste pingutustest vajalike \u00fclesannete t\u00e4itmine, ei ole lihtne \u00fclesanne, ja blokiahel tuleb k\u00e4ivitada ustavate, kuid iseseisvate osaliste panuse abil. Ja kui ettev\u00f5ttes saavad administraatorid k\u00e4ivitamisel t\u00e4ieliku ligip\u00e4\u00e4su k\u00f5ikidele masinatele, logidele ja \u00fcldistele j\u00e4lgimistulemustele, siis valideerijad ei lase kedagi oma serveritesse ning t\u00f5en\u00e4oliselt eelistavad nad ehitada oma infrastruktuuri iseseisvalt, kuna see kontrollib ligip\u00e4\u00e4su valideerija peamistele varadele \u2013 h\u00e4\u00e4letustokenitele. Just selline k\u00e4itumine v\u00f5imaldab luua jaotatud turvalisi v\u00f5rke \u2013 s\u00f5ltumatuse kasutatavatest pilveteenuse pakkujatest, virtuaalsetest ja \u201ebare-metal\u201d serveritest, erinevatest operatsioonis\u00fcsteemidest, k\u00f5ik need tegurid muudavad r\u00fcnnakud sellises v\u00f5rgus \u00e4\u00e4rmiselt ebaefektiivseks \u2013 liiga palju erinevaid tarkvarasid kasutatakse. N\u00e4iteks Ethereumis kasutatakse kahte peamist s\u00f5lme rakendust, \u00fchel Go-l ja teisel Rust-il, ja r\u00fcnnak, mis on t\u00f5hus \u00fche rakenduse jaoks, ei t\u00f6\u00f6ta teise puhul.<\/p>\n<p><\/p>\n<p>Seet\u00f5ttu peavad k\u00f5ik plokiahelate k\u00e4ivitamise ja t\u00f6\u00f6tamise protsessid olema korraldatud nii, et igal valideerijal v\u00f5i isegi v\u00e4iksel valideerijate r\u00fchmal oleks v\u00f5imalik igal hetkel oma arvutid aknast v\u00e4lja visata, ilma et midagi l\u00e4heks katki, ja \u00fclej\u00e4\u00e4nud valideerijad peaksid suutma j\u00e4tkata v\u00f5rgu t\u00f5husat toimimist ning uusi valideerijaid \u00fchendama. Verko k\u00e4ivitamisel, kui \u00fcks valideerija asub Euroopas, teine L\u00f5una-Ameerikas ja kolmas Aasias, on \u00fcsna keeruline saavutada mitme s\u00f5ltumatu r\u00fchma \u00fchtset t\u00f6\u00f6d ja motiveerida neid tulemusi saavutama. <\/p>\n<p><\/p>\n<h2 id=\"validatory\">Valideerijad<\/h2>\n<p><\/p>\n<p>Kujutage ette h\u00fcpoteetilise moodsa plokiahela k\u00e4ivitamist (enamik kirjeldatut sobib igasuguste kaasaegsete plokiahelate perede, nagu Ethereum, EOS, Polkadot, Cosmos ja teiste puhul, kus kasutatakse t\u00f5endusmehhanismi proof-of-stake. Selliste plokiahelate peamised tegijad on valideerijate meeskonnad, kes paigaldavad oma s\u00f5ltumatud serverid, valideerivad ja loovad uusi plokke ning saavad v\u00f5rgu poolt ette n\u00e4htud preemiaid nende konsensusvalikute eest. Uute v\u00f5rkude k\u00e4ivitamiseks on vajalik mitu tosinat valideerijat (nii palju suudavad praegu enam-v\u00e4hem t\u00f5husalt saavutada konsensust sekundite jooksul), seega kuulutab projekt v\u00e4lja registreerimise, kus valideerijad jagavad kasutajatele enda avalikku teavet, veendes neid, et nad kavatsevad kvaliteetselt hallata k\u00e4ivitatavat v\u00f5rku.<\/p>\n<p><\/p>\n<p>Valideerimine on \u00e4ri, mis v\u00f5imaldab v\u00e4ga t\u00e4pselt hinnata valideerija potentsiaalset tulu, kiiresti \u00fcle kanda ressursse projektide vahel ning juhul, kui valitud v\u00f5rk osutub edukaks, saab valideerija t\u00e4ie\u00f5iguslikuks DAO liikmeks ja vastutavaks isikuks projekti arendamise osas v\u00f5i pakkuda lihtsalt suurep\u00e4rast tehnilist teenust t\u00e4iesti l\u00e4bipaistvate ja \u00f5iglaste teenitud rahade eest. Valideerijatele tehtava preemia arvutamisel p\u00fc\u00fcavad projektid arvestada valideerijate kulusid ja teha plokkide preemia selliseks, et see \u00e4ri oleks kasumlik, kuid samas ei lasta valideerijatel majandust kokku kukutada, tarnides neile raha ja j\u00e4ttes v\u00f5rgu teiste kasutajatega ilma.<\/p>\n<p><\/p>\n<p>Validatorite \u00e4ri n\u00f5uab teenuste k\u00f5rget taluvust, mis t\u00e4hendab ka k\u00f5rget taset devops'ide ja arendajate ettevalmistuses ning mitte odavaid arvutusressursse. Isegi ilma vajaduseta kaevandada hash'e proof-of-work v\u00f5rkudes, on plokiahela node suur teenus, mis kasutab palju m\u00e4lu, tarbib palju arvutusi, valideerib, salvestab kettale ja edastab v\u00f5rgus suuri andmemahtusid. Tehingu logi ja ploki ahelate salvestamiseks plokiahelas, kus on mitu tuhat v\u00e4ikest tehingut ploki kohta, on n\u00fc\u00fcd vajalik salvestusruum alates 50 Gb v\u00f5i rohkem, ja plokkide jaoks peaks see olema SSD. Nutilepingutega plokiahede staatiline andmebaas v\u00f5ib juba \u00fcletada 64Gb RAM-i. N\u00f5utava omadustega serverid on \u00fcsna kallid, Ethereum'i v\u00f5i EOS'i node v\u00f5ib maksma minna 100 kuni 200 $\/kuu. Lisage sellele suurenenud t\u00f6\u00f6j\u00f5ud, et arendajad ja devops t\u00f6\u00f6taksid \u00f6\u00f6p\u00e4evaringselt, lahendades k\u00e4ivitamise ajal probleeme isegi \u00f6\u00f6sel, kuna osa valideerijatest v\u00f5ib olla kergesti teises hemisf\u00e4\u00e4ris. Sellegipoolest, soodsatel hetkedel v\u00f5ib validatsiooni node'i omamine tuua t\u00f5sist tulu (EOS'i puhul kuni 10 000$ p\u00e4evas).<\/p>\n<p><\/p>\n<p>Valideerimine on vaid \u00fcks uutest potentsiaalsetest IT-rollidest ettev\u00f5tjate ja ettev\u00f5tete jaoks. Mida enam programmeerijad leiutavad keerukamaid algoritme, mis v\u00f5imaldavad auhindade andmist aususele ja karistamist petmise ja varguse eest, s\u00fcnnivad teenused, mis t\u00e4idavad oluliste andmete avaldamise funktsioone (oraaklid), teenused, mis teostavad j\u00e4relevalvet (deposiitide slashing ja petjate karistamine, avaldades petmise t\u00f5endeid), vaidluste lahendamise teenused, kindlustus ja optsioonid. Ieven garbage collection on potentsiaalselt suur turuvaldkond nutilepingute s\u00fcsteemides, kus on vajalik andmete s\u00e4ilitamise eest tasumine. <\/p>\n<p><\/p>\n<h2 id=\"problemy-zapuska-blokcheyna\">Plokiahela k\u00e4ivitamise probleemid<\/h2>\n<p><\/p>\n<p>Plokia avatud olemus, mis v\u00f5imaldab igasuguste riikide arvutite v\u00f5rku vaba juurdep\u00e4\u00e4su ja lihtne \u00fchendamine igasuguste script kiddie'dega GitHub'i juhiste j\u00e4rgi, ei ole alati eelis. Uue tokeni taga ajamine sunnib valideerijaid \"kaevandama uut m\u00fcnti alguses\", lootes kursuse t\u00f5usule ja v\u00f5imalusele kiiresti teenitud m\u00fcntidest vabaneda. See t\u00e4hendab ka, et teie valideerija v\u00f5ib olla keegi, isegi anon\u00fc\u00fcmne, kelle poolt saab h\u00e4\u00e4letada nagu teiste valideerijate puhul (t\u00f5si, anon\u00fc\u00fcmsel on keeruline koguda h\u00e4\u00e4li osalejatelt, nii et j\u00e4\u00e4nud \u00f5uduslood anon\u00fc\u00fcmsest kr\u00fcptorahast j\u00e4tame poliitikutele). Mitte siiski<\/p>\n<p><\/p>\n<p>Projekti meeskonnal on eesm\u00e4rk \u2014 kuidagi kaasata oma v\u00f5rku neid, kes tulevikus suudavad tagada nodede stabiilse t\u00f6\u00f6, m\u00f5istavad turvalisust, oskavad kiiresti lahendada probleeme, koost\u00f6\u00f6d teha teiste valideerijatega ja tegutseda \u00fchiselt \u2014 nende omaduste j\u00e4rgi s\u00f5ltub t\u00e4ielikult kvaliteet sellest tokenist, millele osalejad plaanivad oma aega ja ressursse investeerida. Adekaatsed asutajad m\u00f5istavad riske ja teavad h\u00e4sti, et nii suure mahuga tarkvara k\u00e4ivitamisel tuleb paratamatult silmitsi seista koodivigade, nodede konfiguratsiooniprobleemidega, ja et v\u00f5rgu stabiilsus s\u00f5ltub sellest, kui h\u00e4sti suudavad arendajad ja valideerijad \u00fcheskoos selliseid probleeme lahendada.<\/p>\n<p><\/p>\n<p>Meeskond on valmis mainnet'is h\u00e4\u00e4letama mis tahes valideerijate poolt, aga kelle poolt? Millised on head? Suurim portfell? Praegu pole seda peaaegu kellelgi. Linkedin'i profiilide j\u00e4rgi? Kogenud devops'id v\u00f5i turvat\u00f6\u00f6tajad ei anna teile mingeid profiile Linkedin'is. Vestlustes tehtud avalduste, postituste ja teiste abistamise p\u00f5hjal ettevalmistamise etapis? Huvitav, kuid subjektiivne ja ebat\u00e4pne.<\/p>\n<p><\/p>\n<p>Sellistes tingimustes j\u00e4\u00e4b \u00fcks \u2014 see, mis lahendab k\u00f5igi probleeme \u2014 m\u00e4ng, kus saate valida parimad valideerijad, kuid peamine \u2014 testida plokiahelat tema tugevuse osas ning l\u00e4bi viia ulatuslik lahingu test plokiahela puhul aktiivse kasutamise, konsensuse muutuste ja vigade ilmnemise ja parandamise tingimustes. Esmakordselt esitas selle protseduuri m\u00e4nguna projekti Cosmos meeskond, ja see idee on kahtlemata suurep\u00e4rane viis v\u00f5rgu ettevalmistamiseks usaldusv\u00e4\u00e4rse ja h\u00e4irekindla mainnet'i k\u00e4ivitamiseks.<\/p>\n<p><\/p>\n<h2 id=\"game-of-validators\">Valideerijate m\u00e4ng<\/h2>\n<p><\/p>\n<p>Ma kirjeldan valideerijate m\u00e4ngu nii, nagu me selle blockchain DAO.Casino (DAOBet) jaoks projekteerisime, tuginedes EOS-i forkile, mida nimetatakse Haya ja millel on sarnane juhtimismehhanism \u2014 valideerijad valitakse h\u00e4\u00e4ltega igalt kontolt, kusjuures osa h\u00e4\u00e4ltega valitud valideerija saldo k\u00fclmutatakse. Iga konto, millel on p\u00f5his\u00fcmbol BET, v\u00f5ib h\u00e4\u00e4letada valitud valideerija poolt mis tahes osa oma saldos. H\u00e4\u00e4led summeeritakse ning tulemused moodustavad valideerijate tipud. Erinevates blockchain'ides on see protsess korraldatud erinevalt ja tavaliselt just selles osas erineb uus blockchain oma eelk\u00e4ijast, ning tuleb \u00f6elda, et meie puhul \u00f5igustab EOS t\u00e4ielikult \u201eOS\u201d-i oma nimetus, me t\u00f5epoolest kasutame EOS-i modifitseeritud blockchaini versiooni k\u00e4ivitamiseks DAOBet'i \u00fclesannete t\u00e4itmiseks.<\/p>\n<p><\/p>\n<p>K\u00e4sitlen eraldi probleeme ja seda, kuidas neid m\u00e4ngu raames lahendada. Kujutame ette v\u00f5rku, kus sinu serverit v\u00f5ivad avatud r\u00fcnnakute objektiks, kus valideerija positsiooni s\u00e4ilitamiseks on vaja pidevalt suhelda v\u00f5rguga, edendades oma valideerijat ja j\u00e4lgides, et ta genereeriks plokke ning need viivitamatult \u00fclej\u00e4\u00e4nud valideerijateni j\u00f5uaks, vastasel juhul paisatakse valideerija loendist v\u00e4lja.<\/p>\n<p><\/p>\n<h3 id=\"kak-vybrat-top-pobediteley\">Kuidas valida tipupreemia saajaid?<\/h3>\n<p><\/p>\n<p>Peamine tehniline n\u00f5ue m\u00e4ngule on see, et selle tulemusi tuleks avalikult kontrollida. See t\u00e4hendab, et m\u00e4ngu tulemused: TOP preemia saajad, peavad olema moodustatud rangelt andmete p\u00f5hjal, mida iga osaleja saab kontrollida. Centraliseeritud s\u00fcsteemis saaksime m\u00f5\u00f5ta iga valideerija \u201e\u00fclesoleku aega\u201d ja premeerida neid, kes on rohkem online v\u00f5i kes t\u00f6\u00f6tlesid l\u00e4bi maksimumv\u00f5rgu liiklust. Saame koguda andmeid protsessori ja m\u00e4lu koormuse kohta ning premeerida neid, kes v\u00e4\u00e4rikalt t\u00f6\u00f6tasid. Kuid igasugune selline metrikate kogumine t\u00e4hendab kogumispunkti olemasolu, ja nodid on k\u00f5ik iseseisvad ning v\u00f5ivad k\u00e4ituda nagu soovivad ning edastada mis tahes andmeid.<\/p>\n<p><\/p>\n<p>Seet\u00f5ttu on loomulik lahendus \u2014 v\u00f5itjad peaksid olema m\u00e4\u00e4ratud plokiahela andmete p\u00f5hjal, kuna selle abil on v\u00f5imalik n\u00e4ha, kes validatoritest millise bloki tootis ja millised tehingud sellesse lisati. Oleme nimetanud seda arvu Validator Points (VP), ja nende teenimine ongi validatorite p\u00f5hieesm\u00e4rk m\u00e4ngus. Meie puhul on k\u00f5ige lihtsam, avalikult kontrollitav ja t\u00f5hus \u2018kasutatavuse\u2019 m\u00f5\u00f5dik validatorite jaoks VP = validatorite loodud blokkide arv antud ajaperioodi jooksul.<\/p>\n<p><\/p>\n<p>Selline lihtne valik on tingitud sellest, et EOSis on juhised juba ette n\u00e4inud palju tekkivaid probleeme, kuna EOS on kolme p\u00f5lvkonna t\u00f5eliselt t\u00f6\u00f6tava plokiahela j\u00e4rglane, millel on suur kogemus keerulise v\u00f5rgu juhtimisega, ja praktiliselt k\u00f5ik validatorite probleemid v\u00f5rgu, protsessori, ketas on seotud vaid \u00fche probleemiga \u2014 nad allkirjastavad v\u00e4hem blokke, saavad v\u00e4hem tasu oma t\u00f6\u00f6 eest, mis viib meid j\u00e4lle lihtsalt allkirjastatud blokkide arvuni \u2014 EOS jaoks on see suurep\u00e4rane ja lihtne valik.<\/p>\n<p><\/p>\n<p>Teistel plokiaheladel v\u00f5ib Validator Points'i arvestamise meetod erineda, n\u00e4iteks pBFT-p\u00f5histe konsensuste (Tendermint\/Cosmos, Aura konsensus Parity Substratest), kus iga blokk peab olema allkirjastatud paljude validatorite poolt, on m\u00f5istlik lugeda eraldi validatorite allkirju, mitte blokke, v\u00f5ib-olla on m\u00f5istlik arvesse v\u00f5tta ka l\u00f5petamata konsensuse ringe, mis raiskavad teiste validatorite ressursse, tegelikult s\u00f5ltub see k\u00f5ik konsensuse t\u00fc\u00fcbist. <\/p>\n<p><\/p>\n<h3 id=\"kak-smodelirovat-realnye-usloviya-ekspluatacii\">Kuidas simuleerida reaalset kasutustingimust<\/h3>\n<p><\/p>\n<p>Esialgsed \u00fclesanded on kontrollida valideerijaid tingimustes, mis on v\u00f5imalikult sarnased reaalsusele, ilma igasuguse tsentraliseeritud kontrollita. Selle probleemi saab lahendada faucet-lepingu abil, mis jagab valdajatele ja soovijatele v\u00f5rdses koguses p\u00f5hiv\u00e4\u00e4rtpaberit. Tokenite saamiseks tuleb moodustada tehing ja saavutada, et v\u00f5rk lisab selle plokki. Seet\u00f5ttu peab valideerija edu saavutamiseks pidevalt oma saldo t\u00e4iendama uute tokenitega ja endale h\u00e4\u00e4letama, edendades end tipptasemele. See tegevus loob pideva koormuse v\u00f5rgule, ja parameetreid saab seadistada nii, et p\u00e4ringute voog oleks piisavalt intensiivne, et korralik v\u00f5rk testida. Seet\u00f5ttu planeeri faucet-leping eelnevalt, kui oluline t\u00f6\u00f6riist v\u00f5rgu k\u00e4ivitamiseks ja alusta tema parameetrite valimist varakult.<\/p>\n<p><\/p>\n<p>Tokenite taotlemine faucet'ist ja valideerijate h\u00e4\u00e4letamine ei suuda siiski t\u00e4ielikult ausalt emuleerida plokiahela toimimist, eriti \u00fclikoormatud re\u017eiimides. Seet\u00f5ttu peab plokiahela meeskond igal juhul kirjutama t\u00e4iendavad benchmark'id, mis v\u00f5imaldavad v\u00f5rgule koormust rakendada. Eriti olulist rolli m\u00e4ngivad spetsiaalselt eelnevalt loodud nutilepingud, mis v\u00f5imaldavad testida konkreetset alams\u00fcsteemi. Andmete salvestamiseks s\u00e4ilitab leping plokiahelas juhuslikke andmeid, ning v\u00f5rguressursside kontrollimiseks n\u00f5uab testileping suurte sisendandmete mahtu, sellega laiendades tehingute mahtu - k\u00e4ivitades selliste tehingute vooge juhuslikel hetkedel testib meeskond samaaegselt koodi stabiilsust ja valideerijate usaldusv\u00e4\u00e4rsust.<\/p>\n<p><\/p>\n<p>Eraldi k\u00fcsimus on s\u00f5lmpunktide koodi v\u00e4rskendamine ja k\u00f5va haru l\u00e4bi viimine. On vajalik, et juhul kui ilmneb viga, haavatavus v\u00f5i pahatahtlike valideerijate kokkulepe, oleksid valideerijatel tegevuskava, mis on juba valideerijate m\u00e4ngus v\u00e4lja t\u00f6\u00f6tatud. Siinkohal v\u00f5ib v\u00e4lja pakkuda skeeme VP-de m\u00e4\u00e4ramiseks kiire haru rakendamise eest, n\u00e4iteks karistades k\u00f5iki valideerijaid, kes pole veel rakendanud uut s\u00f5lmpunkti koodiversiooni, kuid see on keeruline ellu viia ja raskendab arvestust. Rootorite kiirusest tingitud olenematu haru kiire rakendamise simuleerimiseks saab kunstlikult \"purustada\" plokiahel kindlas plokis. Plokkide tootmine peatub ja l\u00f5puks saavad kasu need, kes esimesena aktiivseks saavad ja plokkide allkirjastamisega alustada, nii et VP, mis p\u00f5hineb allkirjastatud plokkide arvul, sobib h\u00e4sti.<\/p>\n<p><\/p>\n<h3 id=\"kak-informirovat-uchastnikov-o-sostoyanii-seti-i-chinit-oshibki\">Kuidas teavitada osalejaid v\u00f5rgu seisundist ja parandada vigu<\/h3>\n<p><\/p>\n<p>Malaside vahelise usalduse puudumisest hoolimata on \u00f5igeaegne juurdep\u00e4\u00e4s v\u00f5rgu seisundi kohta k\u00e4ivale asjakohasele teabele kasulik k\u00f5igile otsuste kiiremaks vastuv\u00f5tmiseks. Seet\u00f5ttu loob projektimeeskond teenuse valideerijate serveritest saadud d\u00fcnaamiliste m\u00f5\u00f5dikute kogumiseks ja visualiseerimiseks, mis v\u00f5imaldab n\u00e4ha olukorda samaaegselt kogu v\u00f5rgus, v\u00f5imaldades kiiresti kindlaks teha, mis toimub. Samuti on nii valideerijatele kui projektile kasulik, et projektimeeskond kiiresti tuvastatud vigu k\u00f5rvaldada, seega on lisaks m\u00f5\u00f5dikute kogumisele m\u00f5istlik kohe k\u00e4ivitada valideerija masinatelt logide ja veateabe kogumine masinale, mis on arendajatele plokiahela jaoks kergesti ligip\u00e4\u00e4setav. Keegi ei soovi informatsiooni v\u00e4\u00e4rata, seega t\u00f5stab need teenused projektimeeskond, kellele saab usaldada. On m\u00f5istlik koguda s\u00fcsteemim\u00f5\u00f5dikuid valideerijatelt ja kindlasti ka k\u00f5ige olulisemaid plokiahela m\u00f5\u00f5dikuid \u2013 DAOBet jaoks on need l\u00f5puleviimise aeg ja viimasena l\u00f5petatud ploki viivitus. T\u00e4nu sellele n\u00e4eb meeskond, kuidas m\u00e4lutarbimine s\u00f5lmpunktides suurenev katsetamisel, ning individuaalsete valideerijate probleeme. <\/p>\n<p><\/p>\n<h2 id=\"vazhnye-momenty-po-provedeniyu-igry-validatorov\">Olulised punktid valideerijate m\u00e4ngu l\u00e4biviimisel<\/h2>\n<p><\/p>\n<p>Selgus, et kui soovite ametlikult lubada valideerijatel \u00fcksteise masinate kallale tungida (mitte ametlikult saavad nad seda juba teha) - tuleb see eraldi \u00f5iguslikult s\u00f5nastada kui turvatestimine, kuna m\u00f5nede riikide seadused v\u00f5ivad DDoS v\u00f5i v\u00f5rgu r\u00fcnnakute eest karistada. Samuti on oluline k\u00fcsimus, kuidas tunnustada valideerijaid. Loomulikud auhinnad on projekti tokenid, mis kantakse mainnetisse, kuid tohutu tokenite jagamine iga\u00fchele, kes suudab s\u00f5lme k\u00e4ivitada, ei ole ka parim v\u00f5imalus. T\u00f5en\u00e4oliselt peate tasakaalustama kahe \u00e4\u00e4rmuse vahel:<\/p>\n<p><\/p>\n<p>Jagada kogu auhinnafond vastavalt teenitud VP-dele<br \/>\nsee on v\u00e4ga demokraatlik ja v\u00f5imaldab teenida k\u00f5igil, kes on panustanud aega ja ressursse valideerijate m\u00e4ngu<br \/>\nkuid meelitab m\u00e4ngu juhuslikke inimesi, kellel pole ettevalmistatud infrastruktuuri<\/p>\n<p><\/p>\n<p>Jagada auhinnafond parimatele N valideerijatele m\u00e4ngu tulemuste p\u00f5hjal<br \/>\nv\u00f5itjate seas on t\u00f5en\u00e4oliselt valideerijad, kes on k\u00f5ige stabiilsemalt p\u00fcsima j\u00e4\u00e4nud m\u00e4ngu jooksul, kes on v\u00e4ga p\u00f5hjalikud v\u00f5idu nimel<br \/>\nosa valideerijatest ei soovi osaleda, hinnates madalalt oma v\u00f5imalusi v\u00f5ita, eriti kui osalejate seas on tuntud valideerijaid<\/p>\n<p><\/p>\n<p>Millisele variandile eelistada \u2014 see on teie otsustada <\/p>\n<p><\/p>\n<p>On veel \u00fcks punkt \u2014 ei ole sugugi kindel, et k\u00fcmned valideerijad tormavad osalema m\u00e4ngus teie kutsel, ja neist, kes otsustavad proovida, ei pruugi k\u00f5ik isegi nodi installida ja k\u00e4ivitada \u2014 tavaliselt on sellel etapil projektidel \u00fcsna puudulik dokumentatsioon, esinevad vead ja tihedas graafikus t\u00f6\u00f6tavad arendajad ei vasta k\u00fcsimustele eriti kiiresti. Seet\u00f5ttu tuleb enne m\u00e4ngu k\u00e4ivitamist ette n\u00e4ha tegevused, kui vajalikke valideerijaid ei koguneda. Sel juhul m\u00e4ngu alguses k\u00e4ivitavad vajalikke valideerijaid projekti meeskond, osalevad konsensuses, kuid ei saa olla v\u00f5itjad.<\/p>\n<p><\/p>\n<h2 id=\"zaklyuchenie\">Kokkuv\u00f5te<\/h2>\n<p><\/p>\n<p>Kokkuv\u00f5tteks p\u00fc\u00fcdsin kokku koondada loendi sellest, mida on vaja v\u00e4lja m\u00f5elda, teha ja k\u00e4ivitada, et validaatorite m\u00e4ngu t\u00f5husalt l\u00e4bi viia<\/p>\n<p><\/p>\n<p>Mida on vaja teha, et k\u00e4ivitada \u00f5iget valideerijate m\u00e4ngu:<br \/>\narendada oma plokiahelat \ud83d\ude42<\/p>\n<p><\/p>\n<ul>\n<li>luua ja k\u00e4ivitada veebiliides ning pakkuda CLI-d valideerijate h\u00e4\u00e4letamiseks<\/li>\n<li>teha, et metrikad k\u00e4ivitatud valideerija s\u00f5lmedelt saaksid saata andmeid tsentraliseeritud teenusele (nt Prometheus)<\/li>\n<li>seada \u00fcles metrikate kogumise server (Prometheus + Grafana) valideerijate m\u00e4ngu jaoks<\/li>\n<li>m\u00f5elda v\u00e4lja, kuidas arvestatakse valideerija punkte (VP)<\/li>\n<li>arendada v\u00e4lja avalik skript, mis arvutab valideerija VP-d plokiahela andmete p\u00f5hjal<\/li>\n<li>arendada v\u00e4lja veebivahend, et kuvada tippe valideerijate ja nende m\u00e4ngu olekut (kui palju aega on j\u00e4\u00e4nud, kellel on mitu VP jne)<\/li>\n<li>arendada ja automatiseerida oma s\u00f5lmede k\u00e4ivitamine suvalises arvus, kavandada protsessi valideerijate \u00fchendamiseks m\u00e4nguga (millal ja kuidas l\u00f5petada oma s\u00f5lmed, anda ja eemaldada nende h\u00e4\u00e4li)<\/li>\n<li>arvutada, kui palju token'e tuleb v\u00e4lja anda ja arendada fauceti lepingut<\/li>\n<li>teha skript, mis t\u00f6\u00f6tab benchmark'ina (token'i \u00fclekanded, massiivne salvestuse kasutamine, massiivne v\u00f5rgu kasutamine) <\/li>\n<li>tuua k\u00f5ik osalised \u00fchte vestlusesse kiireks suhtlemiseks<\/li>\n<li>k\u00e4ivitada plokiahel veidi enne m\u00e4ngu algust<\/li>\n<li>oodata algusplokki, alustada m\u00e4ngu<\/li>\n<li>katsetada v\u00f5rku mitmete tehingute t\u00fc\u00fcpidega<\/li>\n<li>rakendada hard fork<\/li>\n<li>muuta valideerijate loendit<\/li>\n<li>korrata p.13, 14, 15 erinevas j\u00e4rjestuses, s\u00e4ilitades v\u00f5rgu stabiilsuse<\/li>\n<li>oodata l\u00f5ppplokki, l\u00f5petada m\u00e4ng, arvutada VP-d<\/li>\n<\/ul>\n<p><\/p>\n<p>Tuleb \u00f6elda, et valideerijate m\u00e4ng on uus lugu ja seda on korraldatud vaid paar korda, seega ei tasu seda teksti v\u00f5tta kui valmismaterjali. Kaasaegses IT-\u00e4ri maailmas ei ole sellele analooge - kujutage ette, et pangad konkurentide seas enne makses\u00fcsteemi k\u00e4ivitamist v\u00f5istlevad, kes suudab paremini kliendi tehinguid teostada. Traditsioonilised l\u00e4henemised ei aita teil luua suuri detsentraliseeritud v\u00f5rke, seega \u00f5ppige uusi \u00e4rimudeleid, korraldage oma m\u00e4nge, m\u00e4\u00e4rake v\u00e4\u00e4rilised, premeerige neid ja laske oma jaotatud s\u00fcsteemidel t\u00f6\u00f6tada kiiresti ja stabiilselt.<\/p>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/473174\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0418\u0442\u0430\u043a, \u0432\u0430\u0448\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0430 alpha-\u0432\u0435\u0440\u0441\u0438\u044e \u0432\u0430\u0448\u0435\u0433\u043e \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430, \u0438 \u043f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c testnet, \u0430 \u0437\u0430\u0442\u0435\u043c \u0438 mainnet. \u0423 \u0432\u0430\u0441 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d, \u0441 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u043c\u0438 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u0430\u043c\u0438, \u0445\u043e\u0440\u043e\u0448\u0435\u0439 \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u044c\u044e, \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c\u044e, \u0432\u044b \u0441\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043b\u0438 governance \u0438 \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0440\u0430 \u0431\u044b \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u044d\u0442\u043e \u0432 \u0434\u0435\u043b\u0435. \u0412 \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u043e\u043c \u043a\u0440\u0438\u043f\u0442\u043e\u0430\u043d\u0430\u0440\u0445\u0438\u0447\u0435\u0441\u043a\u043e\u043c \u043c\u0438\u0440\u0435, \u0432\u044b \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0435 \u0432 \u0441\u0435\u0442\u044c genesis block, \u043e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u0434 \u043d\u043e\u0434\u044b \u0438 \u0432\u0430\u043b\u0438\u0434\u0430\u0442\u043e\u0440\u044b \u0441\u0430\u043c\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-39478","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0418\u0442\u0430\u043a, \u0432\u0430\u0448\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0430 alpha-\u0432\u0435\u0440\u0441\u0438\u044e \u0432\u0430\u0448\u0435\u0433\u043e \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430, \u0438 \u043f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c testnet, \u0430 \u0437\u0430\u0442\u0435\u043c \u0438 mainnet.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/chto-takoe-igra-validatorov-ili-kak-zapustit-proof-of-stake-blokchejn\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0438\u0433\u0440\u0430 \u0432\u0430\u043b\u0438\u0434\u0430\u0442\u043e\u0440\u043e\u0432 \u0438\u043b\u0438 \u201c\u043a\u0430\u043a \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c proof-of-stake \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u201d | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0418\u0442\u0430\u043a, \u0432\u0430\u0448\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0430 alpha-\u0432\u0435\u0440\u0441\u0438\u044e \u0432\u0430\u0448\u0435\u0433\u043e \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430, \u0438 \u043f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c testnet, \u0430 \u0437\u0430\u0442\u0435\u043c \u0438 mainnet.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/chto-takoe-igra-validatorov-ili-kak-zapustit-proof-of-stake-blokchejn\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:33:41+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:33:41+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Mis on valideerijate m\u00e4ng v\u00f5i \"kuidas k\u00e4ivitada proof-of-stake plokiahel\" | ProHoster","description":"Nii et teie meeskond on l\u00f5petanud teie plokiahela alfa versiooni ja on aeg k\u00e4ivitada testnet ja seej\u00e4rel mainnet.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/chto-takoe-igra-validatorov-ili-kak-zapustit-proof-of-stake-blokchejn","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0438\u0433\u0440\u0430 \u0432\u0430\u043b\u0438\u0434\u0430\u0442\u043e\u0440\u043e\u0432 \u0438\u043b\u0438 \u201c\u043a\u0430\u043a \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c proof-of-stake \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u201d | ProHoster","og:description":"\u0418\u0442\u0430\u043a, \u0432\u0430\u0448\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0430 alpha-\u0432\u0435\u0440\u0441\u0438\u044e \u0432\u0430\u0448\u0435\u0433\u043e \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430, \u0438 \u043f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c testnet, \u0430 \u0437\u0430\u0442\u0435\u043c \u0438 mainnet.","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/chto-takoe-igra-validatorov-ili-kak-zapustit-proof-of-stake-blokchejn","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:33:41+00:00","article:modified_time":"2019-10-31T19:33:41+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"39478","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-02-09 18:02:23","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:49:31","updated":"2026-02-09 18:02:23","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/39478","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=39478"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/39478\/revisions"}],"predecessor-version":[{"id":158519,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/39478\/revisions\/158519"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=39478"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=39478"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=39478"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}