Az Ethereum Gas és annak teljes leírása lépésről lépésre

az ethereum gas kriptopénz hírek mycryptoption

Az Ethereum Gas egy olyan egység, amely méri az egyes műveletek végrehajtásához szükséges számítási erőfeszítéseket. Minden Ethereumban elvégzett művelethez, legyen szó tranzakcióról vagy okos szerződés végrehajtásáról, bizonyos mennyiségű gas szükséges. A bányászok Etherben olyan összeget fizetnek, amely megegyezik azzal a teljes gas mennyiséggel, amelyre a teljes művelet végrehajtásához szükségük volt.

Az Ethereum Gas tehát az Ethereum ökoszisztéma éltetője, nincs más módja ennek a jobb kifejezésére. Minden, az Ethereumban elvégzett művelet, legyen az egyszerű tranzakció, okos szerződés, vagy akár egy ICO, bizonyos mennyiségű gast igényel. Az Ethereum gas az az összeg, amely kiszámítja a díjak összegét, amelyet a hálózatnak meg kell fizetnie egy művelet végrehajtása érdekében. Ebből az útmutatóból megtudhatod, hogyan működik az Ethereum gas.

Miért nincs szükség gasra a Bitcoinban?

A Bitcoin azért jött létre, mert mindenki ugyanazokat a kérdéseket tette fel. Létre lehet-e hozni egy olyan pénzformát, amelyet két ember között átvihetünk közvetítő nélkül? Lehet-e olyan decentralizált pénzt létrehozni, amely képes működni a blokklánc technológiával? Satoshi Nakamoto válaszolt ezekre a kérdésekre, amikor létrehozta a Bitcoint. Végre lett egy decentralizált monetáris rendszerünk, amely pénzt tud átutalni egyik személytől a másikhoz.

Ugyanakkor olyan probléma merült fel a Bitcoinnal, ami az első generációs blokkláncok problémája is. Kizárólag monetáris tranzakciókat engedélyeztek, nem lehetett feltételeket hozzáadni ezekhez a tranzakciókhoz. Kinga küldhet Tamásnak 5 BTC-t, de nem tudott feltételeket előírni ezekre a tranzakciókra. Például nem tudta megmondani Tamásnak, hogy csak akkor kap pénzt, ha bizonyos feladatokat elvégzett. Ezeknek a feltételeknek rendkívül bonyolult szkriptekre lenne szükségük. Valami szükséges volt ahhoz, hogy a folyamat zökkenőmentesebbé váljon. Ez a „valami” az okos szerződés volt.

Mi az okos szerződés?

Az okos szerződések segítenek a pénz, ingatlan, részvények vagy bármilyen értékek cseréjében, váltásában, konfliktusmentes módon, elkerülve egy harmadik fél, a közvetítő szolgáltatásait. Vitalik Buterin Ethereumáról könnyen állíthatjuk, hogy ennek a generációnak rengeteget segíthet. Az Ethereum által megmutatták a világnak, hogyan fejlődik a blokklánc egy egyszerű fizetési mechanizmusról valami sokkal jelentősebb és erősebb elemre.

Az okos szerződések automatikus szerződések. Önállóan végrehajtják a kódba beírt speciális utasításokat, amelyek bizonyos feltételek teljesítésekor végrehajtódnak. Az okos szerződések segítségével működnek a dolgok zökkenőmentesen az Ethereum ökoszisztémában. Ha valaki egy adott feladatot elvégez az Ethereumban, okos szerződést kezdeményez egy vagy több emberrel.

Az okos szerződések egy utasítások sorozatait jelentik, a „solidity” programozási nyelv használatával, amely az IFTTT logika, más néven az IF-THIS-THEN-THAT logika alapján működik. Alapvetően, ha az első utasítás végrehajtódott, akkor végrehajtja a következőt, majd utána a következő funkciót, és mindaddig megismétli ezt, amíg el nem éri a szerződés végét.

Az automaták

A legjobb módszer ennek megértésére a termék automaták elképzelése. Az általad elvégzett minden lépés kiváltja a következő lépés végrehajtását. Olyan ez, mint a dominóhatás. Tehát vizsgáljuk meg azokat a lépéseket, amelyeket az automatával való interakció során fogsz megtenni:

1. lépés: Pénzt dobsz be az automatába.

2. lépés: Megnyomod a kívánt terméknek megfelelő gombot.

3. lépés: A termék kijön, és elveheted.

Most nézd meg ezeket a lépéseket, és gondolkodj bele. Működik valamelyik lépés, ha az előzőt nem hajtottad végre? Az egyes lépések közvetlenül kapcsolódnak az előző lépéshez. Még egy tényezőre gondolni kell, és ez az okos szerződések szerves része. Látja, hogy az automatával folytatott teljes interakció során te (a megbízó) kizárólag a géppel (a szolgáltatóval) kerültél kapcsolatba. Semmilyen harmadik fél nem volt érintett.

A tranzakció az Ethereumban

Hogyan nézne ki tehát ez a tranzakció, ha az Ethereum hálózatban történt volna? Tegyük fel, hogy nemrég vásároltál valamit az Ethereum hálózat automatájából, hogyan fognak tehát kinézni a lépések?

1. lépés: Pénzt dobsz be az automatába, és ezt az Ethereum hálózat összes csomópontja rögzíti, majd a tranzakció frissül a főkönyvben.

2. lépés: Megnyomod a kívánt terméknek megfelelő gombot, és a rendszer rögzíti azt, amely frissül az Ethereum hálózatban és a főkönyvben is egyaránt.

3. lépés: A termék kijön, és elveheted, ezt az összes csomópont és a főkönyv is rögzíti.

Az okos szerződéseken keresztül végrehajtott minden tranzakciót a hálózat rögzít és frissít. Ez azt jelenti, hogy a szerződésben résztvevők mindegyikét felelősségre vonja tetteiért. Így eltávolítja az emberi rosszindulatot azáltal, hogy minden tettét az egész hálózat számára láthatóvá teszi.

Mi az Ethereum virtuális gép?

Mielőtt megértjük, mi az Ethereum virtuális gép (EVM), meg kell értenünk, hogy miért van szükség „virtuális gépre”. Tehát térjünk vissza az okos szerződésekhez. Milyen előnyös tulajdonságokat kívánunk okos szerződésünkben? A blokkláncon futó dolgoknak megváltoztathatatlannak kell lenniük, és képesnek kell lenniük arra, hogy több csomóponton keresztül futhassanak anélkül, hogy veszélyeztetnék annak integritását. Ennek eredményeként az okos szerződéses funkcionalitásnak három félének kell lennie:

Meghatározhatónak

Befejezhetőnek

Izoláltnak

1. jellemző: Meghatározható

A program akkor meghatározható, ha ugyanazt a kimenetet adja egy adott bemenethez minden egyes alkalommal. Például. Ha 2 + 1 = 3, akkor a 2 + 1 MINDIG 3 lesz. Tehát, amikor egy program ugyanazt a kimenetet adja ugyanazon bemeneti készletnek különböző számítógépeken, a programot meghatározhatónak nevezik.

Számos olyan pillanat van viszont, amikor egy program működik meghatározható módon:  például ha nem meghatározható rendszerfunkciókat hívnak, vagyis  amikor egy programozó nem meghatározható funkciót hív fel a programjában. Nem meghatározható adatforrások: Ha egy program adatot szerez futási idő alatt, és az adatforrás nem meghatározható, akkor az egész program nem lesz meghatározható.

2. jellemző: Befejezhető

A matematikai logikában létezik egy hiba, amelyet „leállítási problémának” hívunk. Ilyenkor a gép nem tudja, hogy egy adott program végrehajthatja-e funkcióját egy bizonyos határidőn belül. 1936-ban Alan Turing a Cantor Diagonal Problem felhasználásával arra a következtetésre jutott, hogy nem létezik arra semmilyen mód, hogy megtudja, egy adott program időben korlátozódhat-e vagy sem.

Ez sajnos az okos szerződések problémája, mivel a szerződéseknek meghatározásuk szerint meghatározott időn belül képesnek kell lenniük arra, hogy befejeződjenek. Van néhány intézkedés, amit meg lehet tenni annak biztosítása érdekében, hogy legyen lehetőség a szerződés „befejezésére”, és ne kövessünk el olyan hibát, amely miatt pénzt veszítünk. Ilyen például a Turing Hiányosság.

A Turing hiányos blokklánc korlátozott funkcionalitással rendelkezik, és nem lesz képes ugrásokra és ciklusokra, vagyis így elkerülhető, hogy végtelen ciklusok alakuljanak ki.  

Lépés- és díjszámláló: A program egyszerűen nyomon tudja követni a megtett „lépéseket”, azaz a végrehajtott utasítások számát, majd egy adott lépésszám végrehajtása után megszakíthatja azt. Egy másik módszer a díjszámláló. Itt a szerződéseket előre fizetett díjjal hajtják végre. Minden utasítás végrehajtása külön díjat igényel. Ha a kiadott díj meghaladja az előre fizetett díjat, akkor a szerződést egyszerűen felbontják.

3. funkció: Izoláltság

A blokkláncban bárki feltölthet egy okos szerződést. Ennek ellenére a szerződések tudatosan és tudattalanul tartalmazhatnak sajnos vírusokat és hibákat. Ha a szerződést nem különítik el, ez akadályozhatja az egész rendszert. Ezért elengedhetetlen, hogy a szerződéseket izoláltan tartsák, hogy megmentsék az egész ökoszisztémát a negatív hatásoktól. Most, hogy megismerted ezeket a funkciókat, fontos tudni, hogy miként hajtják végre azokat. Az okos szerződéseket általában a két rendszer valamelyikével hajtják végre:

Virtuális gépek: Ezt használja az Ethereum.

Docker: Ezt a Fabric használja.

A Virtuális Gépek 

A virtuális gépek meghatározhatóbb, befejezhetőbb és izoláltabb környezetet biztosítanak az okos szerződések megkötéséhez. A dockereknek azonban van egyértelmű előnye. Biztosítják a kódolási nyelv rugalmasságát, miközben egy olyan virtuális gépen, mint például az Ethereum, egy teljesen új nyelvet (solidity) kell tanulniuk az okos szerződések létrehozásához.

Az EVM a virtuális gép, amelyben az összes okos szerződés működik az Ethereumban. Ez egy egyszerű, de erőteljes Turing Complete 256 bites virtuális gép. A Turing Complete azt jelenti, hogy az erőforrások és a memória figyelembe vételével az EVM-ben végrehajtott bármely program bármilyen problémát megoldhat.

Mi az Ethereum Gas?

Képtalálat a következőre: „ethereum gas”

Ahogy a bevezetésben kifejtettük, a gas egy olyan egység, amely megméri az egyes műveletek végrehajtásához szükséges számítási erőfeszítéseket. Az EVM-ben futó okos szerződések többségét a Solidity kódolja (az Ethereum a jövőben a Soliditytól a Viper felé tervez hajlani). A Solidity minden egyes sorához bizonyos mennyiségű gast kell végrehajtani.

Használjunk egy analógiát, hogy jobban megértsük, hogyan működik a gas az Ethereumban. Tegyük fel, hogy útra készülsz. Mielőtt ezt megtennéd, végezd el a következő lépéseket:

Menj a benzinkúthoz, és határozd meg, mennyi üzemanyaggal töltenéd fel az autódat.  Töltsd meg az autódat üzemanyaggal. A benzinkútnál azt a pénzösszeget fogod kifizetni, amellyel tartozol nekik az üzemanyagért. Nézzünk most párhuzamokat az Ethereummal.

Az autó vezetése az a művelet, amelyet végrehajtani szeretne, például egy okos szerződés funkciójának végrehajtása. Az üzemanyag jelen esetben a gas, a benzinkút pedig a bányász. A pénz, amelyet fizetni fogsz, az lesz a bányász díja. Az összes olyan műveletnek, amelyet a felhasználók végre akarnak hajtani az Ethereum-ban, az alábbiakat kell biztosítani:

Az adatok lefedése, más néven belső gas.

A teljes számítás lefedése.

Miért is létezik ez a gas rendszer?

Mint minden, a munkát igazoló, peer-to-peer rendszer, az Ethereum is nagyban függ a bányászok hashrate-jétől. Minél több a bányász, annál több a hashrate, annál biztonságosabb és gyorsabb a rendszer. Annak érdekében, hogy minél több bányászt vonzzon a rendszer, a rendszert a bányászok számára a lehető legjövedelmezőbbé és vonzóbbá kell tenni. Az Ethereumban kétféle módon lehet pénzt keresni:

A blokkok bányászásával és a blokkok jutalmának megszerzésével. Azáltal, hogy átmeneti diktátorokká válsz a bányászott blokkjaidban. A bányászok felelősek a tranzakciók blokkokba helyezéséért. Ennek érdekében számítási teljesítményüket kell felhasználniuk az okos szerződések érvényesítésére. A gas rendszer lehetővé teszi számukra egy bizonyos díj felszámítását. Ezt a díjat bányászdíjnak nevezik, és ez eléggé ösztönzi őket, hogy aktívan részt vegyenek az ökoszisztémában. Szóval mennyi díjat számíthatnak fel? Mielőtt kiszámítanánk, értsük meg, hogyan is mérjük a gast.

Hogyan konvertáljuk a gast Etherré?

A gast egyszerűen gas egységekben mérik. Az Ethereum hálózathoz küldött tranzakció bizonyos diszkrét mennyiségű gast (például 100 gast) fizet, attól függően, hogy hány EVM utasítást kell végrehajtani. Szóval, hogyan konvertálhatjuk a gast Etherré?

Nem létezik rögzített átalakítási ár. A tranzakció feladója határozza meg az általuk kedvelt gas árát. A másik oldalon a bányász feladata, hogy ellenőrizzék az általuk kedvelt tranzakciókat. Az átlagos gas ár általában körülbelül 20 Gwei (vagy 0,00000002 ETH) nagyságrendbe esik, de a magas hálózati forgalom idején akár emelkedhet is, mivel több tranzakció is versenyzik egymással, hogy a következő blokkba kerüljenek.

Mi az Ethereum Gas korlát?

Annak érdekében, hogy egy műveletet elvégezzenek az Ethereumban, a tranzakció feladójának meg kell adnia egy gas korlátot, mielőtt azt a hálózatba benyújtja. A gás korlát az a maximális gas mennyiség, amelyet a feladó hajlandó fizetni a tranzakcióért.

A gas korlát meghatározásakor a következő pontokat kell figyelembe venni:

-A különböző műveleteknek különféle gas költségeik lesznek.

-A bányászok abbahagyják a végrehajtást, amikor a gas elfogy.

-Ha marad valami gas, akkor azt azonnal visszatérítik a működési generátorhoz.

Lássuk ezt hipotetikus forgatókönyv szerint. Tegyük fel, hogy két számot adunk hozzá, és ehhez a szerződésnek a következő műveleteket kell végrehajtania:

-10 változó tárolása. Tegyük fel, hogy ez a művelet 45 gasbe kerül.

-Két változó hozzáadása esetén mondjuk, hogy ez 10 gasba kerül.

-Az eredmény tárolása, amely ismét 45 gasba kerül.

Tegyük fel, hogy a feladó megadja a 120 gasre vonatkozó határértéket.A bányász által a számítás elvégzéséhez felhasznált összes gas mennyisége (45 + 10 + 45) = 100 gáz. A bányásznak esedékes díj, ha feltételezzük, hogy egy gas 20 Gwei-t ​​fizet, (100 * 20 Gwei) = 0,000002 ETH.

Most mennyi gas maradt fenn?

120 – 100 = 20 gas.

A 20 fel nem használt gast visszajuttatjuk a feladóhoz (20 * 20 Gwei) = 0,0000004 ETH.

Két lehetséges forgatókönyv

A megadott gas korlát túl alacsony.

A megadott gas korlát túl magas.

Ha a gas korlát túl alacsony: ha egy műveletben kifogy a gas, akkor visszaáll az eredeti állapotába, mintha valójában semmi nem történt volna, azonban a művelet generátorának meg kell fizetnie a bányászoknak a számítási költségeik díját, és a művelet hozzáadódik a blokklánchoz (még akkor is, ha nem hajtották végre).

Visszatérve a közúti utazás analógiájához, ha nem töltött elegendő mennyiségű benzint az autójába, akkor nem fogja elérni a kívánt helyet, de akkor is fizetett a benzinkútnak az üzemanyagért.

Lássuk, hogyan működik ez az okos szerződésünkben. A lépések a következők voltak:

-10 változó tárolása. Tegyük fel, hogy ez a művelet 45 gasbe kerül.

-Két változó hozzáadása esetén mondjuk, hogy ez 10 gasbe kerül.

-Az eredmény tárolása, amely ismét 45 gasbe kerül. Ezúttal azonban a feladó 90 gasre korlátoz.Már tudjuk, hogy a tranzakció teljesítéséhez 100 gas szükséges, de csak 90 gas korlátot adtunk meg. Ebben a forgatókönyvben a bányász 90 gas értéket fog kiszámítani, majd felszámítja a feladó díját a 90 gasért, amely (90 * 20 Gwei) = 0,0000018 ETH. Ezenkívül a szerződés visszatér eredeti állapotába, és a tranzakció bekerül a blokkláncba.

2. forgatókönyv: A gas-határérték túl magas

Tehát mi lenne, ha túl magasra állítanánk a gas korlátot? Miután fennmaradt a pénz, visszatérítik a feladónak? Ez jól hangzik papíron, de a valóságban nem túl jól működik.

A bányászokat korlátozza a gas blokk korlátozása, amely feltételezzük, hogy 6 700 000 gas. Az alapügylet legalább 21 000 gast igényel. A bányászok csak olyan tranzakciókat vehetnek fel, amelyek összege nem haladja meg vagy egyenlő a gas blokk határértékével.

Tegyük fel, hogy van egy A tranzakció (amely egyszerűen átadja az ETH-t), és meghatározott gas korlátja 42.000, valamint két B és C tranzakció (szintén egyszerű ETH transzferek), amelyek meghatározott gas korlátja 21.000. Melyik blokk lesz előnyösebb a bányász számára hogy hozzáadja a blokklánchoz? Végrehajtják-e az A tranzakciót és visszatérítik-e egy hatalmas mennyiségű fel nem használt gast? Pontosan ezért nem ésszerű út a nagy gas korlát megadása. Az Ethereum gas korlátot tehát úgy érdemes beállítani, hogy csak kicsit legyen magasabb, mint a tranzakcióhoz szükséges gas mennyiség.

Érdekelnek a kriptopénzek? Ne maradj le a legérdekesebb infókról, csatlakozz hozzánk a lenti elérhetőségeken!

 KezdőknekKözösség Egyéb
 Bitcoin Útmutató Likeolj minket Facebookon! Legfrissebb Hírek
Ethereum Útmutató Csatlakozz Discord-on! Videók
 Kripto Szótár Kövess minket Youtuben is! Altcoinok

Tetszik a tartalom? Hívj meg minket egy kávéra! 

Útmutatóink, tanulmányaink és minden tartalmunk teljesen ingyenes! Affiliatekből és támogatásokból tartjuk fent az oldalt. Ha szeretnél te is hozzájárulni, hogy az oldal továbbra is fennmaradjon és minőségi tartalmat közvetítsen, akkor támogass minket egy kávé árával kriptóban.

BTC: bc1qp2ux3zjszpnlq8nhylek4nqkgk6ku4cm7er4tt

ETH: 0xbeCf9703c70e0A08096C41E4c86A1C75043d8135

Még több cikk