Ang mga Solusyon para sa Malalang mga Kapintasan

Ang MasterChef ay may ilang mga bahid na maaaring ayusin habang ginagamit, ngunit kung alam lamang ng mga user ang mga ito at kung ano ang magagawa nila. Narito ang workaround, ayon sa Gleb Zykov at Vlad Korovnikov ng HashEx.

Mga desentralisadong palitan Ang (DEXes) ay bihira lamang noong nakalipas na dalawang taon, ngunit ngayon, tila nasa lahat ng dako. Maraming mga proyekto na may sariling mga personal na DEX. Nangyari ito dahil, kapag ang isang blockchain na proyekto ay nagpasya na maglunsad ng isang DEX, hindi nila ito ganap na ginagawa mula sa simula. Sa halip, ang batayan para sa code ng DEX ay kadalasang isang tinidor ng isa sa dalawang pangunahing DEX — Pagpalitin ng Sushi or palitan ng pancake.

Masterchef Smart Contract

Ang dalawang palitan na ito ay medyo nagbago ng espasyo sa DEX salamat sa isang espesyal na smart contract na tinatawag na MasterChef. Lumilitaw ang MasterChef sa kanilang dalawa, kaya lumilitaw din ito sa anumang DEX na ginawa bilang isang tinidor ng isa sa dalawang ito. Bawat bagong DEX ay makakapagbahagi ng parehong mga tampok. Ngunit nangangahulugan din ito na ibinabahagi nito ang mga pagkukulang at kahinaan ng MasterChef. 

Kaya't tingnan natin kung anong mga problema ang maaaring makaharap ng mga user at developer kapag nakikitungo sa MasterChef. Ano ang dapat nilang bigyang pansin? At paano sila dapat lapitan?

Paano gumagana ang mga DEX?

Ang unang dapat tandaan ay ang isang kontrata ng MasterChef ay isang matalinong kontrata na nakasulat sa Solidity na kumokontrol sa kung ano ang magagawa ng isang sakahan, at kung paano ito magagawa. Sa karamihan ng mga proyekto, mayroong maraming matalinong kontrata na nagbabahagi ng responsibilidad at trabaho. Ngunit pagdating sa mga protocol na nakabatay sa MasterChef, ang nag-iisang kontratang ito ang nag-aasikaso sa lahat tungkol sa pagsasaka.

Binibigyang-daan ka ng mga desentralisadong palitan na makipagpalitan ng mga cryptocurrencies nang hindi kinakailangang magdeposito ng pera sa palitan wallet. Sa halip, magdeposito ka ng mga pondo sa mga matalinong kontrata mula sa sarili mong pitaka. Ikaw lang ang taong kumokontrol nito at maa-access ang sarili mong mga pondo kung ang mga kontrata ay walang backdoors o mga kahinaan.

Ang isa pang pagkakaiba ay nakasalalay sa katotohanan na ang mga CEX ay gumagamit ng mga order book para sa pagbili at pagbebenta. Nangangahulugan ito na itinutugma nila ang mga mamimili sa mga nagbebenta, habang ang mga DEX ay gumagamit ng AMM (Automated Market Tagagawa) na mga protocol para sa pangangalakal, na kinakalkula ang presyo ng mga ari-arian depende sa kung magkano ang pagkatubig na ipinuhunan.

Ang liquidity ay nagmumula sa mga liquidity pool, na mga pool kung saan ang mga user ay maaaring magdeposito ng mga pondo para sa mga partikular na pares at gawing available ang mga pondo para sa protocol. Pagkatapos, kapag may sumubok na bumili ng mga asset gamit ang pares na iyon, agad na natutupad ang kanilang order gamit ang mga pondo mula sa pool. Samantala, ang mga taong nagdeposito ng mga pondo sa liquidity pool ay nakakakuha ng mga LP token para sa partikular na pool na iyon. Nagbibigay ito sa kanila ng karapatang magbahagi ng mga gantimpala.

At, kung nais nilang maibalik ang kanilang mga pondo, ang kailangan lang nilang gawin ay ibalik ang mga token ng LP na kanilang natanggap.

Tulad ng alam mo, maraming paraan upang makabuo magbubunga mula sa crypto holdings. Ang mga sakahan ay nagbibigay ng karagdagang mga gantimpala para sa pagbibigay ng pagkatubig. Ang mga user ay nagdaragdag ng pagkatubig sa mga DEX, kumuha ng mga token ng LP, at inilalagay ang mga ito sa mga sakahan.

MasterChef: Mga kahinaan at kapintasan

Sinaklaw namin kung paano gumagana ang mga DEX at kung paano gumagana ang mga liquidity pool. Kaya, tingnan natin nang mabuti kung saan pumapasok ang mga kahinaan ng MasterChef, kung paano nakakaapekto ang mga ito sa proseso, pati na rin kung anong diskarte ang kailangan mong gawin upang matiyak na ang mga bagay ay patuloy na maayos.

Ang MasterChef ay isang solong matalinong kontrata na ginagamit para sa ani ng pagsasaka sa pamamagitan ng pagbibigay ng pagkatubig sa mga DEX. Sa kasamaang palad, mayroon itong ilang mga bahid na maaaring ayusin habang ginagamit, ngunit kung alam lang ng mga user ang mga ito at kung ano ang magagawa nila.

Mga nakompromisong account

Ang isa sa mga pinakamalaking problemang dapat bantayan ay umiikot sa mga account ng may-ari na nakompromiso. Karaniwan, ang SushiSwap ay nag-imbento ng isang paraan na nagbigay-daan dito na magkaroon ng bentahe laban sa Uniswap. Ang pamamaraang iyon ay umiikot sa paglilipat ng mga asset mula sa isang exchange patungo sa isa pa. Ito ay pinangangasiwaan ng kontrata gamit ang isang hiwalay na function na naa-access lamang ng may-ari ng kontrata.

Gayunpaman, ang paglilipat na ito ay maaaring mauwi sa pagiging nakatutok sa karaniwang anumang kontrata, nang walang anumang mga limitasyon, na naging isang pangunahing pangangasiwa. Kaya, kung ang account ng may-ari ay nakompromiso, maaari itong magresulta sa isang bagong kontrata sa paglilipat na magpapadala ng lahat ng mga batayang LP token sa lahat ng mga pool ng pagsasaka sa isang arbitrary na address. Ito ay hahantong sa napakalaking pagkawala ng mga na-invest na asset.

Dapat tandaan na ang function na ito ay pamilyar na ngayon sa mga developer, at sa gayon ito ay maaalis kaagad mga tinidor. Gayunpaman, kung nananatili itong naroroon, dapat itong agad na kunin bilang isang pulang bandila.

Ang isa pang bagay na dapat tandaan ay, sa ilang MasterChef forks, maaaring baguhin ng may-ari ng kontrata ang rate ng emisyon nang walang anumang limitasyon. Kung ang account ay nakompromiso, gayunpaman, ang isang umaatake ay maaaring magtakda ng napakalaking rate ng paglabas, na hahantong sa pagpapababa ng halaga ng token.

Mayroong medyo madaling paraan upang malutas ito sa pamamagitan lamang ng pagtiyak na ang lahat ng feature na available sa may-ari ng kontrata ay nangangailangan ng multi-signature authorization. Sa ganoong paraan, kung ang isang address ay nakompromiso, ang mga masasamang aktor ay hindi makakagawa ng marami dito. Ang isa pang bagay na dapat gawin ay magdagdag ng pansamantalang block (Kontrata ng Timelock) sa pagtawag sa function ng paglipat. Sa ganitong paraan, mas maraming oras ang user para gumawa ng desisyon, at kailangang abisuhan ka ng exchange tungkol sa paglipat o anumang iba pang kahina-hinalang transaksyon.

Pagdaragdag ng magkatulad na pool ng pagsasaka

Ang isa pang medyo halata ngunit hindi napapansin na isyu ay lumalabas kapag ang orihinal na kontrata ay hindi isinasaalang-alang ang pagpoproseso ng magkaparehong mga pool ng pagsasaka, ibig sabihin, ang kontrata ay nagbabanta sa maling pagkalkula ng mga reward sa pagsasaka.

Ito ay hindi isang malaking isyu kung ang MasterChef ay ginamit nang tama, dahil ang may-ari ay hindi nagdaragdag ng magkatulad na mga pool sa layunin. Sa katunayan, sa maayos na pagpapatakbo ng mga palitan, ang mga bagay na ito ay na-verify at ang paggawa ng duplicate na pool ay mahigpit na ipinagbabawal. Kaya, kung sisimulan mo ang paggawa ng pool at patungo ka sa landas ng paggawa ng duplicate ng umiiral na pool, dapat na makapag-ulat ang system ng isang error. O, imungkahi na idagdag mo ang iyong mga pondo sa kasalukuyang pool sa halip na gumawa ng bago.

Hindi kinakalkula ang dami ng nadeposito na mga token

Para sa ilang kadahilanan, madalas na nakakalimutan ng mga tao na isaalang-alang kung ano ang maaaring mangyari kung ang mga token na may mga komisyon sa mga paglilipat o mga token ng rebase ay idinagdag bilang mga pool sa kontrata ng MasterChef. Ang nangyayari ay isang breakdown sa paraan ng pagkalkula ng mga reward, dahil ang code ng kontrata ay nagdaragdag ng mga asset sa mga pool sa pamamagitan lamang ng pagtawag sa ilang partikular na function. Nangangahulugan ito na ang pagdaragdag ng mga token sa address ay pagsasamahin ang mga ito sa mga asset na nasa pool na. Ngunit ang mga kalkulasyon para sa mga reward para sa mga naturang token ay maaaring masira na humahantong sa mga kahinaan.

Ang wastong pagpapatakbo ng mga platform ay dapat na kalkulahin ang dami ng mga pondo na inilipat para sa pagsasaka nang hiwalay sa pamamagitan ng pagsuri sa aktwal na inilipat na halaga na isinasaalang-alang ang mga komisyon. Sa ganitong paraan, ang mga pagkalkula ng gantimpala ay ginagawa nang tama.

MasterChef: Konklusyon

Ang MasterChef ay isang solong matalinong kontrata na ginagamit para sa ani ng pagsasaka sa pamamagitan ng pagbibigay ng pagkatubig sa mga DEX. Sa kasamaang palad, mayroon itong ilang mga bahid na maaaring ayusin habang ginagamit, ngunit kung alam lang ng mga user ang mga ito at kung ano ang magagawa nila. 

Sa itaas ay tinakpan namin ang ilang bagay na maaaring mangyari at kung paano maiiwasan ang mga isyung ito. Ngunit dapat tandaan na mayroong higit pa sa mga ito, tulad ng pagbabanto ng mga gantimpala kung ang mga token ay direktang ipinadala sa address ng kontrata, mga isyu sa mga pagbabago sa start block, mga pag-optimize ng gas, at higit pa. 

Sa madaling salita, may mga kahinaan at isyu na dapat tandaan at bantayan. Ngunit sa pangkalahatan, ang MasterChef ay isang rebolusyonaryong kontrata na halos nagpagana ng mga desentralisadong palitan. Kaya, hangga't patuloy mong ginagamit ito nang maingat at nananatiling may kamalayan sa mga bahid nito at kung paano ayusin ang mga ito, dapat ay maayos ka.

Tungkol sa mga may-akda

Gleb Zykov

Gleb Zykov ay ang Co-Founder at CTO sa a DeFi katiwasayan at kumpanya ng analytics HashEx.

â € <â € <Vlad Korovnikov ay ang Junior Smart Contract auditor at developer.

Nakakuha ng ilantmay masasabi ba tungkol sa mga workaround ng Masterchef o anupaman? Isulat sa amin o sumali sa talakayan sa aming Channel ng Telegram. Maaabutan mo rin kami Tik Tok, Facebook, O kaba.

Pagtanggi sa pananagutan

Ang lahat ng impormasyon na nilalaman sa aming website ay nai-publish sa mabuting pananampalataya at para sa pangkalahatang mga layunin ng impormasyon lamang. Anumang pagkilos na gagawin ng mambabasa sa impormasyong matatagpuan sa aming website ay mahigpit na nasa kanilang sariling peligro.

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