Tezos Blockchain: diepgaande analyse vanuit het auditperspectief PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Tezos Blockchain: diepgaande analyse vanuit het auditperspectief 

Leestijd: 5 minuten

Het Tezos blockchain-project had een geweldige start door $ 232 miljoen op te halen met de Initial Coin Offering, waarmee het de tweede plaats behaalde bij het ontvangen van de grootste fondsen van de 20 grootste ICO's.

Hoe kon Tezos, tussen de meest populaire blockchain-netwerken, zoals Ethereum of Bitcoin, alle hype winnen? Laten we, om het antwoord te vinden, eens nader kijken naar de onderscheidende kenmerken van Tezos die hordes supporters hebben aangetrokken. 

Terwijl de blockchain die in zijn tijd opkwam, werkte aan Proof-of-Work (PoW) consensus, was Tezos blockchain innovatief in het gebruik van Proof-of-Stake(PoS) gebaseerde consensus met een zelfaanpassend mechanisme en on-chain governance. 

Hierdoor kwam Tezos in de schijnwerpers als het perfecte alternatief voor het bouwen van milieuvriendelijke DeFi-toepassingen die aanzienlijk minder energie en lage kosten vereisen. Dus, hoe komt de infrastructuur van Tezos overeen met de flexibiliteit om upgrades veel gemakkelijker te implementeren?

Daardoor leren we meer over de architectonische opzet, die waarde toevoegt aan de Tezos.

Slimme contracten op Tezos

Slimme contracten zijn uitvoerbare contracten die zijn geprogrammeerd om de uitwisseling van tokens tussen twee partijen te verwerken zonder dat een van de partijen de ander hoeft te vertrouwen. 

Als het op Tezos aankomt, is het uniek geschreven met behulp van de programmeertaal Michelson. Bovendien past Tezos formele verificatie toe om de juistheid van de code te waarborgen, waardoor deze veiliger en betrouwbaarder wordt. 

De bijzonderheden van de Tezos Blockchain opsommen

De hoogtepunten van de Tezos worden hier gegeven voor een beter begrip van de configuratie en uniciteit. 

Zelf-aanpassend

Tezos, dat blokken valideert die op het consensusalgoritme werken, is ingebouwd met een zelfaanpasbaar mechanisme. Eventuele wijzigingen aan het protocol, zoals het overschakelen naar een andere consensus, het aanpassen van het beloningssysteem, het toevoegen van transacties, enz., worden geïmplementeerd op basis van het on-chain stemsysteem. 

Elke kleine tot grote wijziging in het economische protocol van Tezos wordt geactiveerd door de on-chain stemprocedure. Dit zichzelf wijzigende protocol heeft de overhand bij het vermijden van de splitsingen of splitsingen in de gemeenschap.

Bestuur in de keten

Tezos staat in strijd met Bitcoin en Ethereum, die de niet-geformaliseerde bestuurssystemen volgden die leidden tot de splitsingen van de blockchain (Bitcoin Cash en Ethereum-klassieker). 

Het on-chain bestuur in Tezos faciliteert de "Bakers", ook bekend als Miners, om voorstellen te doen en stemmen uit te brengen over protocolupgrades. De on-chain-methodologie in Tezos is ontworpen om automatisch de upgrades in de code van het onderliggende protocol te implementeren zonder tussenkomst van een gecentraliseerde regisseur. 

Proof-of-stake consensus: de PoS 

Dankzij de PoS-consensus in Tezos kan iedereen deelnemen. Om een ​​Tezos-bakker te zijn die het blok valideert en consensusvorming mogelijk maakt, moet de bakker minimaal in het bezit zijn van XTZ (native) tokens. 

Het hanteert ook een methode waarbij als de gebruiker niet genoeg over heeft om te bakken, ze XTZ-tokens kunnen delegeren aan een bakker met een grote Tez-bankroll. Op hun beurt worden de door de bakker verdiende beloningen opnieuw verdeeld onder de afgevaardigden. 

Exploitgronden gevonden in slimme contracten van Tezos

Een van de auditrapporten bracht fouten aan het licht in de architectuur voor het doorgeven van berichten van slimme contracten van Tezos. We zullen ze nu hier ontcijferen. 

Architectuur voor het doorgeven van berichten

Een extern contract dat tijdens de uitvoering van de functie moet worden aangeroepen, wordt in plaats daarvan in de wachtrij geplaatst in een lijst met uit te voeren oproepen in het Tezos-contract. 

De volgorde in het Tezos-contract is, 

  • Voer a() uit # Volgende oproepen: [b, d]
  • Voer b() uit # Volgende oproepen: [d, c]
  • Voer d() uit # Volgende oproepen: [c]
  • Voer c() uit # Volgende oproepen: []

Waarin je kunt zien dat code d() wordt uitgevoerd vóór code c().

Dit type uitvoering heeft de mogelijkheid voor twee soorten kwetsbaarheden,

Terugbelautorisatie omzeilen 

De architectuur van Tezos is gebouwd om te voorkomen dat het contract de retourwaarde van een externe oproep leest met behulp van de callback-functie. Maar hier, aangezien er geen beperking is, kan het gebruik van terugbellen leiden tot problemen met toegangscontrole. 

Oproepinjectie

Het biedt de aanvaller de mogelijkheid om het contract te compromitteren door oproepen te injecteren tussen een functie en een gegenereerde externe oproep. 

Bij het uitvoeren van de functies worden de gegenereerde oproepen in de wachtrij geplaatst in de lijst met uit te voeren oproepen. Een aanvaller kan een voordeel behalen door zijn oproep in de wachtrij te plaatsen en de code uit te voeren tussen het einde van de uitgevoerde functie en de gegenereerde oproepen. 

Wanneer de oproep van de aanvaller wordt uitgevoerd, wordt het saldo van het contract of het geheugen van het contract ongeldig en bereikt de aanvaller de oproepinjectie. 

Voorzorgsmaatregelen die moeten worden nageleefd tijdens het coderen van Tezos Smart Contract met Michelson

Michelson-programmeertaal is een go-to-optie voor het schrijven van veilige contracten die bestand zijn tegen datalekken en diefstal van geld. Hoewel de programmeertaal zo sterk is, is er een lijst met fouten die in het contract kunnen voorkomen. 

Laten we de veelvoorkomende fouten begrijpen en de manieren om de fouten uit te sluiten.

Terugbetalen aan een lijst met contracten

Dit is een aandoening waarbij het geld van een groep mensen in één keer wordt terugbetaald. Het treedt op bij het accepteren van willekeurige contracten waarbij een kwaadwillende gebruiker een dergelijk probleem initieert. 

De mogelijke problemen van deze fout zijn dat een contract al het gas inslikt via een reeks callbacks, de 'FAIL'-instructie wordt aangeroepen die alle berekeningen stopt, fouten bij het opnieuw invoeren enzovoort. 

Wat is de oplossing?

Standaardaccounts voeren de code niet uit; daarom kan het bovenstaande probleem worden opgelost door een standaardaccount te maken met de sleutels van mensen. Het kan ook worden geprogrammeerd om gebruikers hun geld individueel te laten opnemen. 

Staat niet instellen vóór overdracht

Terugkeer is een veelvoorkomende hindernis in de blockchain. Wanneer het contract een ander extern contract oproept voor het doen van overschrijvingen, krijgt de willekeur de overhand bij het doen van verdere overschrijvingen als de staat niet na elke overschrijving wordt bijgewerkt.

Het veroorzaakt meerdere opnames van geld uit het contract. 

Wat is de oplossing?

Wees voorzichtig bij het bellen naar externe contracten en zorg ervoor dat hun gedrag niet kan worden gewijzigd. Om herinvoer te verbieden, markeert u de opslag zodat gebruikers niet opnieuw kunnen invoeren tenzij ze een goede reden hebben. 

Privégegevens opslaan of overdragen

De gegevens die worden gepubliceerd, kunnen expliciet worden bekeken. Dat betekent dat de privé-informatie voor iedereen zichtbaar wordt wanneer de transactie wordt uitgezonden. Dit geeft het kwaadwillende knooppunt in het systeem de kans om de niet-ondertekende transactie te manipuleren door ze te vertragen of te wijzigen. 

Wat is de oplossing?

Onderteken de transacties die gevoelige informatie bevatten. Het gebruik van tellers om transactieorders af te dwingen, kan het probleem oplossen. 

Zorg voor professionele bescherming van projecten via Tezos Smart Contract-audits 

Tezos gebouwd met een zelfaanpassende structuur biedt betere schaalbaarheid en betrouwbaarheid, maar hoewel veiligheid altijd een kwestie is van op blockchain gebaseerde applicaties. De kleinste problemen kunnen het grootste fondsverlies veroorzaken. 

En dat is waar QuillAudits zet een stap voorwaarts om de activa te beschermen tegen de greep van slechte actoren. We geven ze geen kans om het contract te exploiteren, omdat we deze problemen herkennen en oplossen door grondige procedures uit te voeren Tezos slimme contractaudits

Vraag gratis advies aan onze experts om meer te weten te komen over onze auditdiensten. 

2 keer bekeken

Tijdstempel:

Meer van Quillhash