Tezos Blockchain: Dybdegående analyse fra Audit Perspective PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Tezos Blockchain: Dybdegående analyse fra revisionsperspektivet 

Læsetid: 5 minutter

Tezos blockchain-projekt havde en glimrende start ved at rejse $232 millioner med det indledende mønttilbud, og opnåede andenpladsen i at modtage de største midler blandt de 20 største ICO'er.

Blandt de mest populære blockchain-netværk, såsom Ethereum eller Bitcoin, hvordan var Tezos i stand til at få al hypen? For at finde ud af svaret, lad os se nærmere på Tezos' karakteristiske egenskaber, der har tiltrukket horder af tilhængere. 

Mens blockchainen, der opstod i dens tid, arbejdede på Proof-of-Work (PoW) konsensus, var Tezos blockchain innovative i at bruge Proof-of-Stake(PoS) baseret konsensus med en selvændrende mekanisme og on-chain governance. 

Som et resultat af dette kom Tezos i rampelyset som det perfekte alternativ til at bygge miljøvenlige DeFi-applikationer, der kræver væsentligt mindre energi og lave omkostninger. Så hvordan svarer Tezos-infrastrukturen til fleksibiliteten til at implementere opgraderinger meget lettere?

Det får os til at lære om den arkitektoniske opsætning, som tilføjer værdi til Tezos.

Smarte kontrakter på Tezos

Smarte kontrakter er eksekverbare kontrakter programmeret til at behandle udvekslingen af ​​tokens mellem to parter uden at kræve, at nogen af ​​parterne stoler på den anden. 

Når det kommer til Tezos, er det unikt skrevet ved hjælp af Michelson-programmeringssproget. Desuden anvender Tezos formel verifikation for at sikre korrektheden af ​​koden, hvilket gør den mere sikker og pålidelig. 

Opremsning af detaljerne ved Tezos Blockchain

højdepunkterne i Tezos er givet her for en bedre forståelse af dens konfiguration og unikke karakter. 

Selvkorrigerende

Tezos, som validerer blokke, der fungerer på konsensusalgoritmen, er indbygget med en selvtilpasningsmekanisme. Eventuelle ændringer til protokollen, såsom skift til en anden konsensus, ændring af belønningssystemet, tilføjelse af transaktioner osv., implementeres baseret på on-chain-afstemningssystemet. 

Alle mindre til større ændringer i Tezos økonomiske protokol udløses af on-chain-afstemningsproceduren. Denne selvændende protokol har overtaget i at undgå gaflerne eller splittelse i samfundet.

On-chain governance

Tezos står i modsætning til Bitcoin og Ethereum, som fulgte de ikke-formaliserede styringssystemer, som førte til blockchain-opdelingerne (Bitcoin Cash og Ethereum classic). 

On-chain-styringen i Tezos letter "Bakers", alias minearbejdere, til at foreslå og afgive stemmer om protokolopgraderinger. On-chain-metoden i Tezos er designet til automatisk at implementere opgraderingerne i den underliggende protokols kode uden at gå gennem en centraliseret direktør. 

Konsensus om bevis på spil: PoS 

PoS-konsensus i Tezos giver alle mulighed for at deltage. For at være en Tezos-bager, der validerer blokken og muliggør konsensusopbygning, bør bageren have en minimumsbeholdning af XTZ(native) tokens. 

Den anvender også en metode, hvor brugeren, hvis brugeren ikke har nok til overs til bagningen, kan uddelegere XTZ-poletter til en bager med en stor Tez-bankroll. Til gengæld bliver de belønninger, som bageren har optjent, omfordelt til delegatorerne. 

Udnyttelsesgrunde fundet i Tezos smarte kontrakter

En af revisionsrapporterne afslørede fejl i meddelelsesoverførselsarkitekturen i Tezos smarte kontrakter. Vi skal afkode dem her nu. 

Besked, der passerer arkitektur

En ekstern kontrakt, som formodes at blive kaldt under udførelsen af ​​funktionen, sættes i stedet i kø i en liste over opkald, der skal udføres i Tezos-kontrakten. 

Ordren fundet i Tezos kontrakt er, 

  • Udfør a() # Næste opkald: [b, d]
  • Udfør b() # Næste opkald: [d, c]
  • Udfør d() # Næste opkald: [c]
  • Udfør c() # Næste opkald: []

Hvori du kan se, at koden d() udføres før koden c().

Denne type eksekvering har mulighed for to typer sårbarheder,

Callback Authorization Bypass 

Tezos arkitektur er bygget til at forhindre kontrakten i at læse returværdien af ​​et eksternt opkald ved hjælp af tilbagekaldsfunktionen. Men her, da der ikke er nogen begrænsning, kan brugen af ​​tilbagekald føre til problemer med adgangskontrol. 

Kald indsprøjtning

Det giver mulighed for angriberen at kompromittere kontrakten ved at indsætte opkald mellem en funktion og et eksternt opkald. 

Ved udførelsen af ​​funktionerne sættes de genererede opkald i kø på listen over opkald, der skal udføres. En angriber kan opnå en fordel ved at placere deres opkald i køen og udføre koden mellem slutningen af ​​den udførte funktion og de genererede opkald. 

Når angriberens opkald udføres, går kontraktens saldo eller hukommelsen af ​​kontrakten til en ugyldig tilstand, og angriberen opnår opkaldsinjektionen. 

Forholdsregler, der skal overholdes under kodning af Tezos Smart Contract ved hjælp af Michelson

Michelsons programmeringssprog er en god mulighed for at skrive sikre kontrakter, der er modstandsdygtige over for datalækager og fondstyverier. Selvom programmeringssproget er så stærkt, er der en liste over fejl, der kan optræde i kontrakten. 

Lad os forstå de almindelige fejl og måder at udelukke fejlene på.

Tilbagebetaling til en liste over kontrakter

Dette er en betingelse, hvor en gruppe menneskers midler tilbagebetales på én gang. Det sker ved accept af vilkårlige kontrakter, hvor en ondsindet bruger starter et sådant problem. 

De mulige problemer fra denne fejl er, at en kontrakt sluger al gassen gennem en række tilbagekald, "FAIL"-instruktionen kaldes, der stopper al beregning, genindførselsfejl og så videre. 

Hvad er løsningen?

Standardkonti udfører ikke koden; derfor kan ovenstående problem sorteres ved at oprette en standardkonto fra folks nøgler. Det kan også programmeres til at få brugere til at trække deres penge individuelt. 

Ikke indstillet tilstand før overførsel

Reentrancy er en almindelig forhindring i blockchain. Når kontrakten kalder på en anden ekstern kontrakt for at foretage overførsler, får den vilkårlige overhånd i at foretage yderligere overførsler, hvis staten ikke er opdateret efter hver overførsel.

Det forårsager flere tilbagetrækninger af midler fra kontrakten. 

Hvad er løsningen?

Vær forsigtig, mens du ringer til eksterne kontrakter, og sørg for, at deres adfærd ikke kan ændres. For at forbyde genindtræden skal du markere i lageret, så brugere ikke kan komme ind igen, medmindre de har en god grund. 

Lagring eller overførsel af private data

De data, der offentliggøres, kunne ses eksplicit. Det betyder, at de private oplysninger bliver synlige for alle, når transaktionen udsendes. Dette giver den ondsindede node i systemet en chance for at manipulere den usignerede transaktion ved at forsinke eller ændre dem. 

Hvad er løsningen?

Underskriv de transaktioner, der indeholder følsomme oplysninger. Brug af tællere til at håndhæve transaktionsordrer kan løse problemet. 

Sikre Pro beskyttelse til projekter gennem Tezos Smart Contract Audits 

Tezos bygget med en selvændrende struktur tilbyder bedre skalerbarhed og pålidelighed, men selvom sikkerhed altid er et spørgsmål om blockchain-baserede applikationer. De mindste problemer kan forårsage det største tab af fonden. 

Og det er der QuillAudits tager et skridt fremad for at beskytte aktiverne mod dårlige skuespilleres greb. Vi giver dem ingen chance for at udnytte kontrakten, da vi genkender og løser disse problemer ved at udføre grundigt Tezos smarte kontraktrevisioner

Få en gratis konsultation med vores eksperter for at lære om vores revisionstjenester. 

2 Views

Tidsstempel:

Mere fra Quillhash