Lemtingų trūkumų šalinimo būdai

„MasterChef“ turi tam tikrų trūkumų, kuriuos galima ištaisyti naudojimo metu, tačiau tik tuo atveju, jei vartotojai apie juos žino ir ką jie gali padaryti. Čia yra sprendimas, pasak Glebas Zykovas ir Vladas Korovnikovas iš „HashEx“.

Decentralizuoti mainai (DEXEs) buvo gana reta tik prieš dvejus metus, tačiau šiandien atrodo, kad jų yra visur. Daugybė projektų, turinčių savo asmeninius DEX. Taip atsitiko todėl, kad kai „blockchain“ projektas nusprendžia paleisti DEX, jie to nepadaro visiškai nuo nulio. Vietoj to, DEX kodo pagrindas dažnai yra vieno iš dviejų pagrindinių DEX šakutė - „SushiSwap“ or Blynų mainai.

Masterchef išmanioji sutartis

Šie du mainai iš esmės pakeitė DEX erdvę dėl specialios išmaniosios sutarties, vadinamos MasterChef. „MasterChef“ rodomas abiejuose, taigi jis taip pat rodomas bet kuriame DEX, kuris buvo pagamintas kaip vieno iš šių dviejų šakutė. Kiekvienas naujas DEX turi tas pačias funkcijas. Tačiau tai taip pat reiškia, kad jis turi „MasterChef“ trūkumų ir pažeidžiamumų. 

Taigi pažiūrėkime, su kokiomis problemomis gali susidurti vartotojai ir kūrėjai dirbdami su MasterChef. Į ką jie turėtų atkreipti dėmesį? Ir kaip prie jų reikėtų kreiptis?

Kaip veikia DEX?

Pirmas dalykas, į kurį reikia atkreipti dėmesį, yra tai, kad „MasterChef“ sutartis yra išmanioji sutartis, parašyta „Solidity“, kuri kontroliuoja, ką ir kaip gali daryti ūkis. Daugumoje projektų sudaromos kelios išmaniosios sutartys, kurios dalijasi atsakomybe ir darbu. Tačiau kalbant apie „MasterChef“ pagrįstus protokolus, tai viena sutartis, kuri pasirūpina viskuo, kas susiję su ūkininkavimu.

Decentralizuotos keityklos leidžia keistis kriptovaliutomis neįnešant pinigų į keityklą piniginė. Vietoj to, jūs įnešate lėšas į išmaniąsias sutartis iš savo piniginės. Jūs esate vienintelis asmuo, kuris ją kontroliuoja ir galite naudotis savo lėšomis, jei sutartyse nėra užpakalinių durų ar pažeidžiamumų.

Kitas skirtumas yra tas, kad CEX naudoja užsakymų knygas pirkimui ir pardavimui. Tai reiškia, kad jie suderina pirkėjus su pardavėjais, o DEXEs naudoja AMM (Automated Market Gamintojas) prekybos protokolai, kuriuose apskaičiuojama turto kaina priklausomai nuo to, kiek investuota likvidumo.

Likvidumas gaunamas iš likvidumo fondų, į kuriuos vartotojai gali įnešti lėšų tam tikroms poroms ir sudaryti lėšas protokolui. Tada, kai kas nors bando pirkti turtą naudodamas tą porą, jo užsakymas iš karto įvykdomas naudojant fondo lėšas. Tuo tarpu žmonės, įnešę lėšų į likvidumo fondą, gauna LP žetonus tam konkrečiam fondui. Tai suteikia jiems teisę dalytis atlygiais.

Ir jei jie kada nors norės atgauti savo lėšas, jiems tereikia grąžinti gautus LP žetonus.

Kaip tikriausiai žinote, yra keli generavimo būdai derlius iš kriptovaliutų atsargų. Už likvidumo užtikrinimą ūkiai suteikia papildomų atlygių. Vartotojai papildo DEX likvidumą, gauna LP žetonus ir investuoja juos į ūkius.

MasterChef: pažeidžiamumas ir trūkumai

Apžvelgėme, kaip veikia DEX ir kaip veikia likvidumo fondai. Taigi, pažvelkime atidžiau, kur atsiranda „MasterChef“ pažeidžiamumų, kaip jie veikia procesą, taip pat kokio požiūrio reikia imtis, kad viskas vyktų sklandžiai.

„MasterChef“ yra viena išmanioji sutartis, naudojama ūkininkavimo derliui gauti, suteikiant likvidumą DEX. Deja, jis turi tam tikrų trūkumų, kuriuos galima ištaisyti naudojimo metu, tačiau tik tuo atveju, jei vartotojai apie juos žino ir ką jie gali padaryti.

Pažeistos paskyros

Viena didžiausių problemų, kurių reikia saugotis, yra susijusi su savininkų paskyrų pažeidimu. Iš esmės „SushiSwap“ išrado metodą, leidžiantį įgyti pranašumą prieš „Uniswap“. Šis metodas sukasi apie turto perkėlimą iš vienos biržos į kitą. Tai atliekama pagal sutartį naudojant atskirą funkciją, kurią gali pasiekti tik sutarties savininkas.

Tačiau šis perkėlimas gali būti suderintas su iš esmės bet kokia sutartimi be jokių apribojimų, o tai galiausiai buvo didelė klaida. Taigi, jei pažeidžiama savininko paskyra, gali būti sudaryta nauja perkėlimo sutartis, pagal kurią visi baziniai LP prieigos raktai visuose ūkininkavimo telkiniuose būtų išsiųsti savavališku adresu. Tai sukeltų didžiulį investuoto turto praradimą.

Reikėtų pažymėti, kad ši funkcija dabar kūrėjams pažįstama, todėl ji iš karto pašalinama šakės. Tačiau, jei ji išlieka, tai iškart turėtų būti laikoma raudona vėliava.

Kitas dalykas, į kurį reikia atkreipti dėmesį, yra tai, kad kai kuriose „MasterChef“ šakėse sutarties savininkas gali keisti išmetamųjų teršalų kiekį be jokių apribojimų. Tačiau jei paskyra yra pažeista, užpuolikas gali nustatyti labai didelį emisijos rodiklį, dėl kurio žetonas nuvertėtų.

Yra gana paprastas būdas tai išspręsti tiesiog užtikrinant, kad visoms sutarties savininkui prieinamoms funkcijoms reikia kelių parašų prieigos. Tokiu būdu, jei vienas adresas bus pažeistas, blogi aktoriai negalėtų daug su juo padaryti. Kitas dalykas, kurį reikia padaryti, yra pridėti laikiną bloką (Timelock sutartį) iškviečiant perkėlimo funkciją. Tokiu būdu vartotojas turi daugiau laiko apsispręsti, o birža turėtų jums pranešti apie migraciją ar bet kokią kitą įtartiną operaciją.

Pridedami identiški ūkininkavimo baseinai

Kita gana akivaizdi, bet nepastebėta problema iškyla, kai pirminėje sutartyje neatsižvelgiama į identiškų ūkininkavimo telkinių apdorojimą, o tai reiškia, kad sutartyje kyla grėsmė neteisingai apskaičiuoti ūkininkavimo atlygį.

Tai nėra didelė problema, jei MasterChef naudojamas teisingai, nes savininkas tyčia nepridės identiškų baseinų. Tiesą sakant, tinkamai veikiančiose biržose šie dalykai yra tikrinami ir kurti pasikartojančius fondus yra griežtai draudžiama. Taigi, jei pradedate kurti telkinį ir ketinate sukurti esamo telkinio dublikatą, sistema turėtų galėti pranešti apie klaidą. Arba pasiūlykite pridėti lėšų prie esamo fondo, o ne sukurti naują.

Neskaičiuojant įneštų žetonų kiekio

Dėl tam tikrų priežasčių žmonės linkę pamiršti pagalvoti, kas gali nutikti, jei žetonai su komisiniais už pervedimus arba perskaičiavimo žetonai bus įtraukti į MasterChef sutartį kaip telkiniai. Tai, kas atsitinka, yra atlygio apskaičiavimo būdo suskirstymas, nes sutarties kodas prideda turtą į telkinius tik iškviesdamas tam tikras funkcijas. Tai reiškia, kad pridėjus žetonus prie adreso jie bus sujungti su turtu, jau esančiu telkinyje. Tačiau atlygio už tokius žetonus skaičiavimai gali būti sugadinti, o tai lemia pažeidžiamumą.

Tinkamai veikiančios platformos ūkininkavimui pervedamų lėšų kiekį turėtų skaičiuoti atskirai, tikrindamos faktinę pervedamą sumą, atsižvelgiant į komisinius. Tokiu būdu atlygio skaičiavimai atliekami teisingai.

MasterChef: Išvada

„MasterChef“ yra viena išmanioji sutartis, naudojama ūkininkavimo derliui gauti, suteikiant likvidumą DEX. Deja, jis turi tam tikrų trūkumų, kuriuos galima ištaisyti naudojimo metu, tačiau tik tuo atveju, jei vartotojai apie juos žino ir ką jie gali padaryti. 

Aukščiau aptarėme keletą dalykų, kurie gali nutikti ir kaip šių problemų galima išvengti. Tačiau reikia pastebėti, kad jų yra ir daugiau, pavyzdžiui, atlygio praskiedimas, jei žetonai siunčiami tiesiai sutarties adresu, problemos dėl paleidimo bloko pakeitimų, dujų optimizavimas ir kt. 

Kitaip tariant, yra pažeidžiamumų ir problemų, kurias reikia nepamiršti ir stebėti. Tačiau apskritai „MasterChef“ yra revoliucinė sutartis, kuri beveik įgalino decentralizuotus mainus. Taigi, jei naudosite jį atsargiai ir žinosite apie jo trūkumus bei kaip juos ištaisyti, jums turėtų būti viskas gerai.

Apie autorius

Glebas Zykovas

Glebas Zykovas yra vienas iš įkūrėjų ir CTO a defi saugumas ir analizės įmonė „HashEx“.

​​Vladas Korovnikovas yra „Junior Smart Contract“ auditorius ir kūrėjas.

Turiu keletątką pasakyti apie „Masterchef“ sprendimus ar dar ką nors? Rašyk mums arba prisijunkite prie mūsų diskusijos Telegramos kanalas. Taip pat galite mus sugauti Tik Papua, Facebookarba Twitter.

Atsakomybės neigimas

Visa mūsų svetainėje esanti informacija skelbiama sąžiningai ir tik bendro pobūdžio informacijos tikslais. Bet kokie veiksmai, kuriuos skaitytojas imasi remdamasis mūsų svetainėje esančia informacija, yra griežtai jų pačių rizika.

Šaltinis: https://beincrypto.com/masterchef-smart-contracts-the-workarounds-for-the-fatal-flaws/