Kako se pripraviti na revizijo pametnih pogodb

Kako se pripraviti na revizijo pametnih pogodb 

Čas branja: 5 min

Pridobiti revizijo je dandanes enakovredno pridobitvi licence. Zaradi tega je vaš protokol bolj zaupanja vreden in varen ter pritegne več uporabnikov. Z varnostjo, ki je ena glavnih skrbi web3, je revizija uporabniškega prostora postala zelo pomemben del. To je razvidno iz analize, kako so tudi velike ribe, kot je poligon, začele prejemati zunanje revizije. 

Ta spletni dnevnik vam bo pomagal pri ključnih korakih in stvareh, za katere boste morali poskrbeti, da boste svojo kodo poslali v revizije. Tukaj se boste naučili, kako z upoštevanjem nekaterih praks zagotoviti, da vam bo revizija koristila.

Te prakse je mogoče zaporedno povzeti na naslednji način:

1. Dokumentacija

 1.1 Funkcionalna dokumentacija

 1.2 Tehnična dokumentacija

2. Razvojno okolje

3. Najboljše prakse kodiranja

4. Testiranje

 4.1 Ročno testiranje

 4.2 Samodejno testiranje

5. Obseg revizije

6. Zamrznitev kode

Raziščimo vsakega od njih podrobno.

1. Dokumentacija

Dokumentacija je ključni del začetka postopka. Ta del nam pomaga razumeti, kako nameravate stvari izvesti in kaj točno poskušamo zagotoviti.

How to Prepare for a Smart Contract Audit  PlatoBlockchain Data Intelligence. Vertical Search. Ai.

How to Prepare for a Smart Contract Audit  PlatoBlockchain Data Intelligence. Vertical Search. Ai.
Foto: sigmund on Unsplash

Ta del lahko razdelimo na dva dela: -

1.1 Funkcionalna dokumentacija:- 

Ta dokumentacija nam pove o osnovni viziji vašega protokola; ta dokumentacija vsebuje odgovore na vprašanja, kot so:-

  1. Na kateri misiji si?
  2. Kaj namerava storiti vaš protokol?
  3. S katerim sektorjem delate?
  4. Kaj je končni cilj?
  5. Kakšne so vaše omejitve?

Te stvari naju oba postavijo na isto stran glede temeljnih vrednot projekta.

1.2 Tehnična dokumentacija:- 

To je načrt delovanja vašega protokola; ta del nam pomaga razumeti arhitekturo vašega protokola. Bolje kot je to hitro, je ukrepanje pri vaših revizijah. Nekatere stvari, ki jih vključuje dobra tehnična dokumentacija, so:

  1. Uporabljene tehnologije
  2. Opis vsake pametne pogodbe
  3. Opis razvojnega okolja
  4. Zunanje interakcije
  5. Notranje interakcije
  6. Dober pregled medpogodbenih odvisnosti.

2. Razvojno okolje

Razvojno okolje je kot tovarna, v kateri nastaja izdelek; tovarna mora biti dobro vzdrževana, da lahko mehaniki popravijo nekatere pokvarjene stroje. To je pomembnost dobro vzdrževanega razvojnega okolja za uspeh projekta. Razvojna ekipa mora zgraditi dobro razvojno okolje, ki pomaga pri boljši in hitrejši reviziji. 

How to Prepare for a Smart Contract Audit  PlatoBlockchain Data Intelligence. Vertical Search. Ai.

How to Prepare for a Smart Contract Audit  PlatoBlockchain Data Intelligence. Vertical Search. Ai.
Foto: Fotis Fotopoulos on Unsplash

Nekaj ​​bistvenih točk, na katere morate poskrbeti, je: -

  1. Odvisnosti morajo biti javne ali morajo imeti dostop revizijske skupine.
  2. Deluje lahko na različnih operacijskih sistemih.
  3. Upoštevati je treba prakse čiste kode.
  4. Vsebuje navodila glede začetne nastavitve projekta.

3. Najboljše prakse kodiranja

Dobra kakovost kode koristi tako domačim razvijalcem projekta kot nam; olajša postopek spreminjanja, pomaga razvijalcem bolje razumeti osnovo kode in pomaga pospešiti delo. Nekaj ​​praks kode, ki jim lahko sledite, je: -

  1. Vaša koda naj bo preprosta
  2. Komentarji so v pomoč
  3. Poskusite DRY (ne ponavljajte se)
  4. Imejte dobro konvencijo o poimenovanju
  5. Odpravite morebitno opozorilo prevajalnikov

4. Testiranje

Se spomnite, ko je učitelj v razredu delal presenetljive teste? Ti testi so bili namenjeni pripravi na nepričakovana vprašanja, da se lahko prilagodiš in opraviš dobre zaključne izpite. Ta faza deluje na enak način za naše pametne pogodbe. Na ta način preverimo robustnost naših pametnih pogodb in kako se obnašajo v različnih primerih. Ali je v skladu z oznako ali potrebujemo nekaj sprememb? To je del, od koder se začne varnostna perspektiva pametnih pogodb. Od tu poskušamo vdreti v kodo z ustvarjanjem zapletenih testnih primerov.

How to Prepare for a Smart Contract Audit  PlatoBlockchain Data Intelligence. Vertical Search. Ai.

How to Prepare for a Smart Contract Audit  PlatoBlockchain Data Intelligence. Vertical Search. Ai.
Foto: To je inženirski RAEng on Unsplash

Testiranje je mogoče razvrstiti na dva široka načina: -

4.1 Priročnik:- 

To je čas, ko se praskate po glavi in ​​ustvarjate nove zapletene testne primere za vdor v vaše pametne pogodbe. V tem koraku analiziramo različne primere in ugotovimo, kako lahko zlomimo kodo. V ta namen večinoma uporabljamo truffle ali hardhat.

4.2 Samodejno:- 

Ta del obravnava samodejno generiranje testnih primerov, ki delujejo z osnovnimi. Obstajajo različne programske opreme, ki vam lahko pomagajo pri tem. Celo na novo predstavljen chatGPT lahko spada pod to okrilje. Lahko vam pomaga najti osnovne pomanjkljivosti v vaših pogodbah.

5. Obseg revizije: - 

Recimo, da želite, da je vaša hiša zavarovana. Bi postavili fotoaparat v svoj hladilnik? Ni prav? Podobno morate ugotoviti, kateri del vašega protokola želite revidirati. Naša ekipa vam lahko pomaga pri najboljši izbiri, saj strokovnjaki poznajo vrste vdorov, ki se lahko zgodijo, in kaj je treba zavarovati, da to preprečite. Na primer, lahko zavarujete celotno hišo, včasih pa so ljudje oropani izpod tal. Naši izkušeni strokovnjaki vam bodo pomagali zavarujte vsak vidik vašega projekta web3.

6. Zamrznitev kode:- 

Predstavljajte si delavca, zaposlenega z gradnjo Eifflovega stolpa, vendar je oblikovalec na sredini naredil spremembo. Posledica tega so lahko ure in ure dela v nič. Zato je priporočljivo, da dobite svojo zasnovo in zamrznete kodo, potem ko jo predložite v revizijo, da vam lahko zagotovijo boljše in hitrejše rezultate.

zaključek

S temi praksami v mislih ste 100 % pripravljeni na revizijo in MORATE iti na revizijo. Tako bomo iz web3 naredili varen in zavarovan ekosistem. Če želimo rasti kot skupnost, moramo našim uporabnikom zagotoviti najboljšo varnost in kdo bi to lahko storil bolje kot QuillAudits, obiščite naše spletno mesto in zaščitite svoj projekt Web3!

43 Ogledov

Časovni žig:

Več od Quillhash