A szilárdság hosszú utat tett meg, mióta először 2014-ben javasolták, majd később az Ethereum Solidity csapata fejlesztette ki. Olyan fejlesztők százezrei vannak, akik a programozási nyelvet használják blockchain-alapú szolgáltatások létrehozására egyre több felhasználási esetre.

Ez a cikk elmagyarázza, hogy mi a szilárdság és hogyan használják az Ethereum ökoszisztémában. Ez a cikk Önnek szól, ha többet szeretne megtudni ennek a blokklánc-alapú programozási nyelvnek a belső működéséről.

Mi a szilárdság?

A Solidity egy objektumorientált, magas szintű programozási nyelv, amelyet intelligens szerződések létrehozására használnak, amelyek automatizálják a tranzakciókat a blokkláncon. Miután 2014-ben javaslatot tettek rá, a nyelvet az Ethereum projekt munkatársai fejlesztették ki. A nyelvet elsősorban intelligens szerződések létrehozására használják az Ethereum blokklánc és intelligens szerződéseket hozhat létre más blokkláncokon.

A szilárdság hasonló az egyik leggyakoribb programozási nyelvhez, a JavaScript-hez. A JavaScript dialektusának tekinthető. Ez azt jelenti, hogy ha ért a JavaScripthez, akkor könnyen felveheti a Solidity-t. A szilárdság hasonló tulajdonságokkal rendelkezik, mint a C ++ és a Python programozási nyelvek.

instagram viewer

Magas szintű nyelvként a Solidity felszámolja annak szükségességét, hogy kódokat írjon eggyel és nullával. Sokkal könnyebbé teszi az emberek számára a programok megírását olyan módon, amelyet könnyebben megértenek, betűk és számok kombinációjával.

A szilárdság statikusan be van írva, támogatva az öröklést, a könyvtárakat és a felhasználó által definiált összetett típusokat. Mivel a szilárdság statikusan van beírva, a felhasználó minden egyes változót megad. Az adattípusok lehetővé teszik a fordító számára, hogy ellenőrizze a változók helyes használatát. A szilárdsági adattípusokat általában értéktípusokként vagy referencia típusokként kategorizálják.

Az értéktípusok és a referencia típusok közötti fő különbség abban található, hogyan rendelhetők hozzá egy változóhoz és hogyan tárolódnak az EVM-ben (Ethereum Virtual Machine). Míg az értéktípus egyik változójának megváltoztatása nem befolyásolja egy másik változó értékét, bárki, aki hivatkozik a referencia típusú változók megváltozott értékeire, frissített értékeket kaphat.

Hogyan működik a szilárdság?

Az Ethereum ökoszisztéma szépsége, hogy olyan sokféle kriptovaluta és decentralizált alkalmazás tudja használni. Az intelligens szerződések lehetővé teszik az Ethereum egyedülálló technológiáinak elkészítését mindenféle vállalkozás és szervezet számára.

Évente a világ dollármilliárdokat költ blokklánc-megoldásokra. Ezen megoldások közül sok a Solidity segítségével jön létre. A Solidity felhasználásával épített intelligens szerződések úgy tekinthetők, mint az üzleti és nem üzleti folyamatok automatizálása a különböző emberek között. Ez biztosítja, hogy a blokkláncon tranzakciókat végző embereknek ne kelljen aggódniuk olyan kockázatok miatt, mint a csalás, vagy ha nem tudják ugyanazt a valutát használni.

Az egyik kulcskomponens, amely lehetővé teszi a Solidity kód végrehajtását, az EVM. Az EVM-et a blokklánc virtuális számítógépeként írják le, amely az emberek ötleteit kódokká alakítja, amely alkalmazásokat futtat a blokkláncon.

A motorháztető alatt a Solidity létrehoz egy gépi kódot, amelyet az EVM futtat. A fordító segítségével lebontják a magas szintű, ember által olvasható kódokat, amelyek utasításokká alakulnak, amelyeket a processzor olvas. Különböző platformok biztosítják az ingyenes Solidity fordítást, beleértve a Remix online fordítót és a PC-n letöltött parancsszerű fordítót.

Az EVM intelligens szerződéseinek vannak korlátai, amelyeket meg kell oldani. Ezek közül az egyik legjelentősebb a JSON struktúrák vagy lebegőpontos aritmetika elemzéséhez szükséges hasznos könyvtárfunkciókhoz való korlátozott hozzáférés.

Köz- és magánfunkciók

A nyilvános funkciók hasonlóak az API-khoz, amelyekhez bárki hozzáférhet a világon. Bárki felhívhatja őket a kódjukban. A nyilvános funkciókat sok esetben megosztott folyamatokra tervezték egy olyan platformon, amelyet minden felhasználó használ.

Például egy nyilvános funkció létrehozható, amely lehetővé teszi a platform minden felhasználójának, hogy ellenőrizze a számlaegyenlegét. Az intelligens szerződések kihasználásának egyik leggyakoribb módja a közfunkciók.

Összefüggő: Mi az a blokklánc és hogyan működik?

Míg az intelligens szerződéseket könnyen meg lehet írni a Solidity-vel, gyakran nagyon nehéz őket biztonságosan megírni. Például, ha egy intelligens szerződés visszavonási funkciója nem biztonságos, a támadó manipulálhatja a sérülékeny funkciót, hogy elszámoljon egy pénzt.

A támadó felhívhat egy kifizetési funkciót, hogy pénzt küldjön egy másik számlára, egy hurok segítségével, amely ismételten megismétli a kifizetési funkciót.

A privát funkciók csak a szerződéseken belül hívhatók meg. Olyan utasításokat tartalmaznak, amelyeket csak akkor lehet végrehajtani, ha más funkciók hívják meg őket, egy láncban. Ez megnehezíti, hogy a kódot rosszindulatú szereplők manipulálják.

Szabványok és kódlogika

Különböző szabványok jelennek meg, amelyek meghatározzák, hogy a Solidity intelligens szerződéseket hogyan használják fel az Ethereum alkalmazásainak felépítésére. Ezeket a szabványokat ERC (Ethereum Request for Comments) szabványoknak nevezik. A szabványok egy olyan dokumentumon alapulnak, amely útmutatásokat tartalmaz a szükséges funkciókról és a kód viselkedésének korlátozásairól.

A szilárdság működését meghatározó ERC-szabványok a következők:

  • ERC20
  • ERC165
  • ERC721
  • ERC223
  • ERC621
  • ERC777
  • ERC827
  • ERC884
  • ERC865
  • ERC1155

A szilárdság különböző módon használható arra, hogy az intelligens szerződések kölcsönhatásba lépjenek egymással. A szilárdság felhasználható dedikált utasítások készítésére is az adatok intelligens szerződésben történő tárolásával kapcsolatban. Az intelligens szerződések logikája és adatai elválaszthatók a Solidity segítségével. Helyettesítő szerződések alkalmazásával a szerződés logikája megváltoztatható ennek lehetővé tétele érdekében.

Állandóság

Lehetetlen megváltoztatni az intelligens szerződés kódját, miután megírta és összeállította. Ez azt jelenti, hogy minden kódsornak rendeltetésszerűen kell működnie, különben a kód kihasználása komoly kockázatokat okozhat.

Összefüggő: Hogyan válhatunk Blockchain programozóvá és kezdhetünk el nagy pénzt keresni

Mivel az Ethereum blokklánc változhatatlan, lehetetlen megváltoztatni a rá írt adatokat és logikát. Ennek kiküszöbölése az, ha egy proxy segítségével rámutat egy másik szerződésre, amely tényleges üzleti logikát tartalmaz. Ez lehetővé teszi a hibák kijavítását, miközben a szerződés új verziója megvalósul.

Gázköltségek

Vannak külön költségek, amelyeket a Solidity használatáért fizetnek az Ethereum mainnet-en. A többletköltségek egy része az Ethereum gázrendszerén alapul, amely fizetést igényel a bányászok számára a blokklánc-hálózat biztonságáért, hogy a kód biztonságosan fusson rajta.

Intelligens szerződések megírásakor fontos megjegyezni, hogy a gázköltségek meghatározhatják az intelligens szerződés teljesítőképességét. Mivel minden felhasznált tárolóhelyért gázdíjat fizetnek, a Solidity kóddal végrehajtott műveletek gázba kerülnek. Nem valószínű, hogy hosszú távon felhasználják az intelligens szerződést, amelynek végrehajtása költséges.

A gázoptimalizálás segít csökkenteni a gáz költségét a Solidity kód futtatásakor. A gázoptimalizálás legnépszerűbb módszerei közé tartozik a könyvtárak használata és a kevesebb funkció használata. A könyvtárakat gyakran használják a bájtkód mentésére.

Ahelyett, hogy felesleges bájtkódot adna az intelligens szerződéshez, a logika felrakható a könyvtárakba. Ez segít megtartani az intelligens szerződés méretét. Kevesebb funkció használatával kevesebb bájtkódra van szükség, és a kód auditálásának nehézségei is csökkennek.

Hogyan használható a szilárdság az Ethereumban?

A szilárdságot intelligens szerződések létrehozására használják felcserélhető tokenek és nem cserélhető tokenek számára. Különböző szabványokat használnak nem helyettesíthető tokenek és helyettesíthető tokenek létrehozására az Ethereum ökoszisztémában.

Ezek lehetővé teszik a felhasználási esetek különböző típusainak létrehozását a blokkláncot használó emberek számára. A szilárdság lehetővé teszi az emberek számára, hogy zsetonokat és nem cserélhető tokenek az Ethereumon. A nem cserélhető zsetonok verésétől a hozzáadásukig, hogy mezőgazdasági érdekeltségeket hozhassanak különös érdeklődésre, az Ethereum különböző típusú jelzők használatát teszi lehetővé.

Decentralizált autonóm szervezeteket (DAO) a Solidity is lehetővé tesz. A DAO, amely egy új típusú online szervezeti struktúra, elsősorban a Solidity-ben íródott. A DAO-k lehetővé teszik különböző emberek számára, hogy tagokként gyűljenek össze egy online platformon, ahol szavaznak a DAO legfontosabb döntéseiről.

A szilárdság lehetővé teszi a folyamatok automatizálását a DAO-n belül. A DAO-k folyamat-automatizálásának példái közé tartozik a szavazások leadása a kulcsfontosságú döntésekért és a hírnév kiosztása a DAO tagjai számára a csoporthoz való hozzájárulásukért.

A blokkláncok szabványainak meghatározása

A szilárdság sokkal több, mint egy programozási nyelv. Meghatározza a blokklánc-technológia jövőjének szabványait.

A Solidity biztonságának és teljesítményének javításán munkálkodó nyílt forráskódú fejlesztők számának köszönhetően az Ethereum ökoszisztémában lévő alkalmazások ezrei attól függenek, hogy milyen alkalmazásokat kívánnak használni működtet. Amint új szabványokat hoznak létre az intelligens szerződésekre az Ethereumban, a nyelv biztonságosabbá válik.

Email
Lehetséges egy valóban decentralizált internet? Hogyan működhet a Blockchain

Lehetséges valóban decentralizált internet? Mit jelent a decentralizáció, és hogyan tartaná biztonságban?

Olvassa el a következőt

Kapcsolódó témák
  • Technológia magyarázata
  • Programozás
  • Ethereum
  • Blockchain
A szerzőről
Calvin Ebun-Amu (15 cikk megjelent)

Calvin a MakeUseOf írója. Amikor nem figyeli Ricket és Mortyt vagy a kedvenc sportcsapatait, Calvin startupokról, blokkláncról, kiberbiztonságról és a technika egyéb területeiről ír.

Bővebben Calvin Ebun-Amutól

Iratkozzon fel hírlevelünkre

Csatlakozzon hírlevelünkhöz, amely műszaki tippeket, véleményeket, ingyenes e-könyveket és exkluzív ajánlatokat tartalmaz!

Még egy lépés…!

Kérjük, erősítse meg e-mail címét az imént elküldött e-mailben.

.