TL;DR

Viedais līgumu drošības audits sniedz detalizētu projekta viedo līgumu analīzi. Tie ir svarīgi, lai aizsargātu caur tiem ieguldītos līdzekļus. Tā kā visi darījumi blokķēdē ir galīgi, līdzekļus nevar atgūt, ja tie tiek nozagti. Parasti auditori pārbauda viedo līgumu kodu, sagatavo ziņojumu un nodod to projektam, lai viņi varētu strādāt. Pēc tam tiek publicēts gala ziņojums, kurā sīki aprakstītas visas neatrisinātās kļūdas un jau paveiktais darbs, lai risinātu veiktspējas vai drošības problēmas.

Ievads

Viedi līgumu drošības auditi ir ļoti izplatīti decentralizētās finanšu (DeFi) ekosistēmā. Ja esat ieguldījis blokķēdes projektā, jūsu lēmums, iespējams, bija daļēji balstīts uz viedā līguma koda pārskatīšanas rezultātiem.

Lai gan lielākā daļa cilvēku saprot auditu nozīmi kiberdrošībā, daudzi neiedziļinās koda rindās. Apskatīsim metodes, rīkus un rezultātus, kas parasti tiek novēroti viedos līgumu drošības auditos, lai jūs varētu pieņemt pārdomātākus lēmumus.

Kas ir vieda līgumu audits?

Viedā līguma drošības audits pārbauda un komentē projekta viedā līguma kodu. Parasti šie līgumi tiek rakstīti Solidity programmēšanas valodā un tiek nodrošināti, izmantojot GitHub. Drošības auditi ir īpaši vērtīgi DeFi projektiem, kas paredz apstrādāt blokķēdes darījumus miljoniem dolāru vai lielu spēlētāju skaitu. Revīzijas parasti notiek četros posmos:

1. Viedie līgumi tiek nodrošināti revīzijas komandai sākotnējai analīzei.

2. Revīzijas grupa savus konstatējumus iepazīstina ar projektu, lai tā varētu rīkoties.

3. Projekta komanda veic izmaiņas, pamatojoties uz konstatētajām problēmām.

4. Revīzijas grupa publicē galīgo ziņojumu, apsverot visas jaunas izmaiņas vai neatrisinātās kļūdas.

Daudziem kriptovalūtu lietotājiem viedie līgumu auditi ir būtiski, ieguldot jaunos DeFi projektos. Tas ir kļuvis par standartu projektiem, kuri vēlas tikt uztverti nopietni. Daži revīzijas nodrošinātāji tiek uzskatīti arī par nozares līderiem, padarot viņu auditus vērtīgākus investoru acīs.

Kāpēc mums ir vajadzīgas viedas līgumu pārbaudes?

Izmantojot viedos līgumus vai bloķējot tos ar milzīgām vērtībām, tie kļūst par pievilcīgiem hakeru ļaunprātīgu uzbrukumu mērķiem. Nelielas kodēšanas kļūdas var novest pie milzīgas naudas summas nozagšanas. Piemēram, DAO uzlaušana Ethereum blokķēdē paņēma aptuveni 60 miljonus dolāru vērtu ETH un pat noveda pie Ethereum tīkla cietās dakšas.

Tā kā blokķēdes darījumi ir neatgriezeniski, ir svarīgi pārliecināties, vai projekta kods ir drošs. Blockchain tehnoloģijas ļoti drošais raksturs apgrūtina līdzekļu izgūšanu un problēmu risināšanu pēc fakta, tāpēc labāk ir novērst ievainojamības par katru cenu.

Kā pārbaudīt viedo līgumu?

Viedā līgumu audita process ir diezgan standarta audita pakalpojumu sniedzēju vidū. Lai gan katra revidenta pieeja var nedaudz atšķirties, tipiskais process ir šāds:

1. Noteikt audita apjomu. Viedo līgumu un projekta specifikācijas nosaka projekts (to paredzētais mērķis) un vispārējā arhitektūra. Specifikācija palīdz audita grupai izprast projekta mērķus, rakstot un izmantojot kodu.

2. Sniedziet sākotnējo cenu, pamatojoties uz nepieciešamā darba apjomu.

3. Palaidiet testus. To precīzais raksturs mainīsies atkarībā no audita grupas, to analīzes rīkiem un metodēm. Parasti tiek veiktas gan manuālas, gan automatizētas pārbaudes.

4. Izveidojiet pirmo ziņojuma melnrakstu ar atrastajām kļūdām un nosūtiet to projekta komandai, lai saņemtu atsauksmes un veiktu turpmākus labojumus.

5. Publicējiet gala ziņojumu, apsverot visas komandas veiktās darbības, lai risinātu izvirzītās problēmas.

Viedās līgumu audita metodes

Gāzes efektivitāte

Viedie līgumu auditi nav vērsti tikai uz blokķēdes drošību. Viņi arī aplūko efektivitāti un optimizāciju. Daži līgumi veic sarežģītu darījumu sēriju, lai izpildītu paredzēto funkciju. Tā kā maksa par gāzi tādos tīklos kā Ethereum ir salīdzinoši dārga, efektīvi līgumi var ievērojami ietaupīt darījumu izmaksas.

To veiktspējas optimizēšana ir arī izstrādātāja prasmju rādītājs. Neefektīvi soļi nodrošina vairāk punktu par neveiksmi, un no tiem vajadzētu izvairīties. Ja gāzes izmaksas ir augstas, viedie līgumi var neizdoties izpildīt, vēl jo vairāk, ja tiek izmantots zems gāzes limits.

Līgumu ievainojamības

Lielākā daļa auditu darba ir saistīta ar līgumu pārbaudi attiecībā uz drošības ievainojamībām. Lai gan dažas problēmas var būt viegli pamanāmas, daudzi ekspluatācijas veidi ir saistīti ar progresīvām metodēm un stratēģijām līdzekļu iztukšošanai. Piemēram, tirgus manipulācijas var izmantot ar vājiem viedajiem līgumiem, lai veiktu ātro kredītu uzbrukumus. Lai atklātu šīs problēmas, auditori sāk pārtraukumu pārbaudes procesu un simulē ļaunprātīgus uzbrukumus viedajam līgumam. Bieži sastopamās ievainojamības ir:

1. Atkārtotas piekļuves problēmas. Kad viedais līgums veic ārēju zvanu citam ārējam līgumam, pirms tiek novērstas jebkādas sekas. Pēc tam ārējais līgums var rekursīvi izsaukt sākotnējo viedo līgumu un mijiedarboties ar to tā, kā tam nevajadzētu būt, jo sākotnējā līguma atlikums vēl nav atjaunināts.

2. Veselu skaitļu pārpildīšana un nepietiekamība: kad viedais līgums veic aritmētisku darbību, bet izvade pārsniedz krātuves ietilpību (parasti 18 zīmes aiz komata). Tas var novest pie nepareizu summu aprēķināšanas.

3. Priekšējās darbības iespējas: slikti strukturēts kods var nodrošināt iepriekšēju brīdinājumu par pirkumiem vai pārdošanu tirgū. Tas savukārt var ļaut citiem izmantot informāciju un tirgoties ar to savā labā.

Platformas drošības trūkumi

Lielākajā daļā revīziju tiek aplūkots tīkls, kas mitina līgumus, un pat API, ko izmanto, lai mijiedarbotos ar DApp. Projekts var būt neaizsargāts pret DDoS uzbrukumu vai var tikt apdraudēts tā vietnes lietotāja interfeiss, kas nozīmē, ka lietotāji faktiski savienos savus makus ar ļaunprātīgām blokķēdes lietojumprogrammām.

Kas ir revīzijas ziņojums?

Revīzijas ziņojums tiek sniegts revīzijas procesa beigās. Pārredzamības labad ir paredzēts, ka projekti savos atklājumos dalīsies ar sabiedrību. Lielākajā daļā ziņojumu problēmas tiek klasificētas pēc smaguma pakāpes, piemēram, kritiska, būtiska, neliela utt. Ziņojumā tiks norādīts arī problēmas statuss, jo projektiem ir dots laiks to atrisināšanai pirms galīgā ziņojuma izdošanas.

Kopā ar kopsavilkumu standarta pārskatā būs ieteikumi, liekā koda piemēri un pilns kodēšanas kļūdu sadalījums. Pirms galīgās versijas izlaišanas projektam ir dots laiks rīkoties saskaņā ar ziņojuma konstatējumiem.

Kur es varu iegūt viedo līguma auditu?

Vairāki viedo līgumu audita pakalpojumi ir kļuvuši plaši pazīstami ar saviem pakalpojumiem. Divi ir īpaši populāri, un, lai no tiem veiktu auditu, būs nepieciešams sākotnējais piedāvājums un informācijas nodošana.

CertiK

CertiK ir viens no nozares līderiem viedajā līgumu auditā. Simtiem projektu ir pārbaudījuši savus viedos līgumus ar viņiem. Viens piemērs ir PancakeSwap, BSC lielākais automatizētais tirgus veidotājs (AMM). Zemāk ir sadaļa par Certik PancakeSwap auditu.

Tāpat lielākā daļa Binance Labs atbalstīto projektu ir pārbaudījuši līgumus ar CertiK. CertiK izdod revidēto projektu līderu sarakstu, kas ļauj salīdzināt katru no tiem, kā arī drošības rādītāju. Ņemiet vērā, ka, izņemot Ethereum, CertiK aptver arī BSC un Polygon projektus.

ConsenSys rūpība

ConsenSys, ko vada Džozefs Lubins, Ethereum līdzdibinātājs, ir viens no kriptovalūtu nozares lielākajiem nosaukumiem blokķēdes izstrādē. Saskaņā ar ConsenSys Diligence uzņēmums piedāvā Ethereum viedo līgumu auditus. Tie nodrošina arī automatizētu pakalpojumu, kas pārbauda Ethereum virtuālās mašīnas (EVM) līgumus par bieži konstatētām kļūdām.

Cik maksā viedā līguma audits?

Precīzas audita izmaksas ir atkarīgas no pārbaudāmo viedo līgumu skaita. Parasti audits sasniegs tūkstošiem dolāru. Konkrēts liels projekts var viegli maksāt vairāk nekā 10 000 USD. Audita uzņēmums, kas veic jūsu revīziju, un tā reputācija ietekmēs arī to, cik daudz jūs maksājat.

Noslēguma domas

Par laimi investoriem un lietotājiem, viedie līgumu auditi ir kļuvuši par zelta standartu. Tomēr, ja katram projektam tāds ir, tas vairs nav viegls vērtības rādītājs. Tāpēc ir ļoti svarīgi pašam izlasīt auditu. Pat ja jums nav tehnisko zināšanu, ir noderīgi apskatīt komentārus un iespējamo problēmu nopietnību.

Kad jūs saskaraties ar auditu, jums vajadzētu vismaz vieglāk saprast tā saturu. Kā vienmēr, pārliecinieties, ka jebkurš lēmums par investīcijām skatās uz kopainu un ņem vērā visu informāciju.

Papildu lasīšana:

  • Kas ir viedo līgumu formāla pārbaude?

  • Četri veidi, kā iegūt DYOR DeFi ienesīguma fermās

  • Kas ir reālā DeFi ienesīgums?


Atruna un brīdinājums par risku: šis saturs jums tiek piedāvāts “tāds, kāds ir” tikai vispārīgas informācijas un izglītošanas nolūkos, bez jebkāda veida pārstāvniecības vai garantijas. To nevajadzētu interpretēt kā finansiālu, juridisku vai citu profesionālu padomu, kā arī tas nav paredzēts, lai ieteiktu iegādāties kādu konkrētu produktu vai pakalpojumu. Jums jālūdz savs padoms no atbilstošiem profesionāliem konsultantiem. Ja rakstu ir pievienojis trešās puses līdzautors, lūdzu, ņemiet vērā, ka šie paustie viedokļi pieder trešās puses līdzautoram un ne vienmēr atspoguļo Binance Academy uzskatus. Lūdzu, izlasiet mūsu pilno atrunu šeit, lai iegūtu sīkāku informāciju. Digitālo aktīvu cenas var būt nepastāvīgas. Jūsu ieguldījuma vērtība var samazināties vai pieaugt, un jūs, iespējams, neatgūsit ieguldīto summu. Jūs esat pilnībā atbildīgs par saviem ieguldījumu lēmumiem, un Binance Academy nav atbildīgs par jebkādiem zaudējumiem, kas jums var rasties. Šo materiālu nevajadzētu uzskatīt par finansiālu, juridisku vai citu profesionālu padomu. Lai iegūtu papildinformāciju, skatiet mūsu lietošanas noteikumus un brīdinājumu par risku.