Заобиколните решенија за фаталните недостатоци

MasterChef има одредени недостатоци кои можат да се поправат при користење, но само доколку корисниците се свесни за нив и што можат да направат. Еве го решението, според Глеб Зиков и Влад Коровников од ХашЕкс.

Децентрализирана размена (DEX) беа доста ретки пред само две кратки години, а сепак денес се чини дека ги има насекаде. Бројни проекти кои имаат свои лични DEX. Ова се случи затоа што, кога блокчејн проект ќе одлучи да лансира DEX, тие не го прават целосно од нула. Наместо тоа, основата за кодот на DEX често е дел од еден од двата главни DEX-и - Суши замена or Палачинка.

Паметен договор со Masterchef

Овие две размени прилично го револуционизираа просторот DEX благодарение на специјалниот паметен договор наречен MasterChef. MasterChef се појавува и во двете, и така се појавува и во секој DEX што е направен како вилушка на еден од овие два. Секој нов DEX ги споделува истите карактеристики. Но, тоа исто така значи дека ги споделува недостатоците и ранливостите на MasterChef. 

Затоа, ајде да погледнеме со какви проблеми може да се сретнат корисниците и програмерите кога се занимаваат со MasterChef. На што треба да обрнат внимание? И како треба да им се пристапи?

Како функционираат DEX?

Првото нешто што треба да се забележи е дека договорот со MasterChef е паметен договор напишан во Solidity кој контролира што може да направи фармата и како може да го направи тоа. Во повеќето проекти, постојат повеќе паметни договори кои ја делат одговорноста и работата. Но, кога станува збор за протоколите базирани на MasterChef, токму овој единствен договор се грижи за сè во врска со земјоделството.

Децентрализираната размена ви овозможува да разменувате криптовалути без да мора да депонирате пари во берзата паричник. Наместо тоа, вие депонирате средства на паметни договори од вашиот сопствен паричник. Вие сте единственото лице кое го контролира и може да пристапите до вашите сопствени средства доколку договорите немаат задни врати или ранливости.

Друга разлика лежи во фактот што CEX користат книги за нарачки за купување и продавање. Ова значи дека тие ги поклопуваат купувачите со продавачите, додека DEX користат AMM (Автоматски пазар создателот) протоколи за тргување, со кои се пресметува цената на средствата во зависност од тоа колку ликвидност е инвестирана.

Ликвидноста доаѓа од базени за ликвидност, кои се базени во кои корисниците можат да депонираат средства за одредени парови и да ги направат достапни средства за протоколот. Потоа, кога некој ќе се обиде да купи средства користејќи го тој пар, неговата нарачка веднаш се исполнува со помош на средствата од базенот. Во меѓувреме, луѓето кои депонирале средства во базенот за ликвидност добиваат ЛП токени за тој специфичен базен. Ова им обезбедува право да споделуваат награди.

И, ако некогаш сакаат да си ги вратат средствата, сè што треба да направат е да ги вратат токените на LP што ги добиле.

Како што можеби знаете, постојат повеќе начини за генерирање приноси од крипто стопанства. Фармите даваат дополнителни награди за обезбедување ликвидност. Корисниците додаваат ликвидност на DEX, добиваат LP токени и ги уделуваат во фарми.

MasterChef: Ранливост и недостатоци

Опфативме како работат DEX и како функционираат базените за ликвидност. Значи, да разгледаме подетално каде се појавуваат ранливостите на MasterChef, како тие влијаат на процесот, како и каков пристап треба да преземете за да се осигурате дека работите продолжуваат непречено.

MasterChef е единствен паметен договор што се користи за земјоделски принос преку обезбедување ликвидност во DEX. За жал, има одредени недостатоци кои можат да се поправат при користење, но само доколку корисниците се свесни за нив и што можат да направат.

Компромитирани сметки

Еден од најголемите проблеми на кој треба да се внимава се врти околу компромитирањето на сметките на сопствениците. Во основа, SushiSwap измислил метод што му овозможил да добие предност во однос на Uniswap. Тој метод се врти околу мигрирањето на средствата од една размена во друга. Договорот го решава ова со посебна функција до која има пристап само сопственикот на договорот.

Сепак, оваа миграција може на крајот да биде прилагодена на кој било договор, без никакви ограничувања, што на крајот беше голем превид. Значи, ако сметката на сопственикот е компромитирана, ова може да резултира со нов договор за миграција што ќе ги испрати сите основни токени на LP во сите земјоделски базени на произволна адреса. Ова би довело до огромна загуба на вложените средства.

Треба да се напомене дека оваа функција сега им е позната на програмерите и затоа завршува веднаш отстранета вилушки. Меѓутоа, ако остане присутен, тоа веднаш треба да се земе како црвено знаме.

Друга работа што треба да се забележи е дека, во некои вилушки на MasterChef, сопственикот на договорот може да ја промени стапката на емисија без никакви ограничувања. Меѓутоа, ако сметката е компромитирана, напаѓачот може да постави многу голема стапка на емисија, што би довело до девалвација на токенот.

Постои прилично лесен начин да се реши ова едноставно со тоа што ќе се осигури дека сите функции достапни на сопственикот на договорот бараат овластување со повеќе потписи. На тој начин, ако една адреса е компромитирана, лошите актери нема да можат многу да направат со неа. Друга работа што треба да направите е да додадете привремен блок (договор за Timelock) за повикување на функцијата за миграција. На овој начин, корисникот има повеќе време да донесе одлука, а размената би морала да ве извести за миграцијата или која било друга сомнителна трансакција.

Додавање идентични земјоделски базени

Друг прилично очигледен, но занемарен проблем се појавува кога оригиналниот договор не ја опфаќа обработката на идентични земјоделски базени, што значи дека договорот се заканува со погрешно пресметување на наградите за земјоделство.

Ова не е голем проблем ако MasterChef се користи правилно, бидејќи сопственикот не би додал идентични базени намерно. Всушност, во берзите што функционираат правилно, овие работи се проверуваат и создавање дупликат базен е строго забрането. Значи, ако го започнете создавањето на базенот и се движите по патот на создавање дупликат од постоечкиот базен, системот треба да може да пријави грешка. Или, предложете да ги додадете вашите средства на постоечкиот базен наместо да правите нов.

Не пресметување на количината на депонирани токени

Поради некоја причина, луѓето имаат тенденција да заборават да размислат што може да се случи ако токените со провизии за трансфери или токени за промена на базата се додадат како базени на договорот со MasterChef. Она што се случува е дефект во начинот на пресметување на наградите, бидејќи кодот на договорот додава средства во базените само со повикување одредени функции. Ова значи дека додавањето токени на адресата ќе ги комбинира со средствата што се веќе во базенот. Но, пресметките за награди за таквите токени може да бидат скршени што доведува до ранливости.

Правилно оперативните платформи треба одделно да го пресметаат количеството на средства што се префрлени за земјоделство со проверка на реалниот пренесен износ кој ги зема предвид провизиите. На овој начин, пресметките на наградата се прават правилно.

MasterChef: Заклучок

MasterChef е единствен паметен договор што се користи за земјоделски принос преку обезбедување ликвидност во DEX. За жал, има одредени недостатоци кои можат да се поправат при користење, но само доколку корисниците се свесни за нив и што можат да направат. 

Погоре опфативме неколку работи што можат да се случат и како овие прашања може да се избегнат. Но, треба да се забележи дека има повеќе од нив, како што се разредување на наградите доколку токените се испраќаат директно на адресата на договорот, проблеми со промените на блокот за стартување, оптимизација на гас и многу повеќе. 

Со други зборови, постојат ранливости и прашања кои треба да се имаат на ум и да се внимава на нив. Но, генерално, MasterChef е револуционерен договор кој има доста овозможено децентрализирани размени. Значи, сè додека продолжувате да го користите внимателно и останувате свесни за неговите недостатоци и како да ги поправите, треба да бидете во ред.

За авторите

Глеб Зиков

Глеб Зиков е ко-основач и CTO на a на определен обем, безбедност и аналитичка компанија ХашЕкс.

​​Влад Коровников е ревизор и развивач на Junior Smart Contract.

Добив малкуtима да кажеш за решенијата за Masterchef или нешто друго? Пишете ни или придружете се на дискусијата во нашата Телеграмски канал. Можете исто така да нè фатите Tik ток, Facebookили Twitter.

Општи услови

Сите информации содржани на нашата веб-страница се објавени со добра волја и само за општи информации. Секоја акција што читателот ја презема врз информациите што се наоѓаат на нашата веб-страница е строго на нивна опасност.

Извор: https://beincrypto.com/masterchef-smart-contracts-the-workarounds-for-the-fatal-flaws/