...by Daniel Szego
quote
"On a long enough timeline we will all become Satoshi Nakamoto.."
Daniel Szego

Sunday, March 26, 2023

A tokenizáció

A decentralizált protokollok és alkalmazások egyik legfontosabb és legizgalmasabb építőköve a tokenizáció és a különféle token szabványok. A tokent lényegében úgy lehet elképzelni mint egy póker zsetont, amit ide-oda tudunk tologatni, vagy adni-venni különböző szereplők között. A legtöbb decentralizált alkalmazásban több különböző tipusú “póker zsetont” használunk, ebben az esetben tipikus, hogy az egyiket kicseréljük a másikért. Gyakorlatban a tokenek blockchain protokollok felett megvalósított programok. A tokenek transzferálását vagy cseréjét pedig pedig kriptográfia és okosszerződések valósítják meg. A tokenizáció lényegében a DEFI rétegek közül az első absztrakciós réteg a “tranzakciós” motor felett.

Gyakorlati szempontból a tokeneknek két nagy kategóriájuk létezik a helyettesíthető (fungible)  és a nem helyettesíthető (non-fungible) tokenek.


  1. Ábra. Token kategóriák

A helyettesíthető tokennél egy token teljes mértékben egyenértékű és felcserélhető egy másik tokennel. Példának okáért képzeljük el, hogy egy tó vizét tokenizáljuk literenként, vagyis egy litert egy tokennel reprezentálunk. Ebben az esetben az egyik liter az pontosan olyan mint egy másik liter, egy adott esetben mindegy, hogy az egyik vagy a másik liter vizet használjuk. Egy másik példa, hogy ha a helyettesíthető tokent mint pénzt képzeljük el, ebben az esetben az egyik 10 Ft-os pénzérme teljesen egyenértékű egy másik 10 Ft-os pénzérmével. 

Nem felcserélhető (non-fungible, NFT) tokeneknél viszont az egyik token fundamentálisan különbözik minden másik tokentől. Minden egyes token egyedi és ezek egymással nem felcserélhetőek. Az egyik klasszikus példa, hogy ha művészeti alkotásokat akarunk digitalizálni. Az egyik digitális alkotás jellemzően teljesen különbözik egy másik digitális alkotástól, ezek általában semmilyen szinten nem felcserélhetőek. Egy másik tipikus példa, hogy ha személyhez kötött tokeneket képzelünk el, ami például valamiféle digitális személyazonosságot reprezentál. Ebben az esetben is az egyik token, az egyik személyazonosság teljes mértékben különbözik egy másik tokentől, másik személyazonosságtól. 

A harmadik nagy token kategória az úgynevezett hibrid tokenek halmaza. A hibrid tokenek a helyettesíthető és nem helyettesíthető tokenek tulajdonnságait ötvözik egyetlen rendszerré.  A hibrid tokeneken belül különböző token halmazok találhatóak meg. Az egyes halmazokon belüli tokenek egymással felcserélhetőek, azonban a halmazok közötti tokenek egymással nem felcserélhetőek. Klasszikus példa ha egy online szerepjátékon belül szeretnénk a tárgyakat tokenizálni. Az egyik nagy halmaz lehet a kardok halmaza, a másik pedig pajzsok halmaza. A kardok alapvetően egyformák, tehát az egyik kard a másikkal felcserélhető, így a halmazon belüli elemek egymással felcserélhetőek. Egy kard azonban nem cserélhető fel egy pajzzsal, így az egyes halmazok közötti elemek egymással nem felcserélhetőek. 

A tokenek gyakorlati implementációja általában valamely konkrét DLT platform fölött történik. A legklasszikusabb az Ethereum és a különböző Ethereum variánsok. A tokenek implementációjára különféle token szabványok léteznek, melyek a tokenek főbb tulajdonságait és funkcióit rögzítik. Ilyen token szabvány például : 

- ERC20 - helyettesíthető tokenekre  

- ERC721 - nem helyettesíthető (NFT) tokenekre

- ERC1155  - hibrid tokenekre      

A token szabványok pusztán csak a token fő funkcióit írják le, számos tulajdonságot azonban az implementációra bíznak. Például az ERC20 token szabvány a következő funkciók implementálását írja elő :


Funkció

Funkció leírása

name

A token neve

symbol

A token szimbóluma

decimals

A tokenben használt decimális helyiértékek száma

totalSupply

A maximális rendszerben lévő token mennyiség

balanceOf

Egy account-on tárolt tokenek mennyisége

transfer

Token továbbítása az egyik számláról a másikra

transferFrom

Harmadik személy továbbít tokent egy másik számláról

approve

Egy harmadik személy jóváhagyása, hogy tokent tudjon továbbítani a számlánkról.

allowance

Lekérdezés, hogy milyen harmadik személynek van jóváhagyva, hogy tokent tudjon továbbítani a számlánkról (és, hoggy mennyi tokent)


1. Táblázat. Token kategóriák

Fontos rámutatni azonban, hogy a szabványok pusztán csak a főbb funkciók meglétét definiálják, ezek részletes implementációja a megvalósításra van bízva. Ez praktikusan azt jelenti, hogy felhasználóként nem szabad naiv módon azt feltételezni, hogy ha egy token valamely szabvány szerint van implementálva, akkor az minden szempontból “jó” is. Tipikus kripto scam, amikor kiskaput építenek az implementációba, melynek segítségével egy adminisztrátor végtelen számú tokent tud előállítani, ezzel kvázi elinflálva annak értékét. Ez például az alapja a DEFI-ban gyakran előforduló úgynevezett rug pull, szőnyegkihúzás nevű scamnek. 

Összességében elmondható, hogy a tokenizáció a decentralizált alkalmazások egyre fontosabbá váló építőköve. Koncepcionális szinten a tokenizáció egyre inkább egy absztrakt réteget alkot, kvázi külön tudományágat alkot, mely egyre inkább függetlenül tárgyalható a tokenek konkrét implementációitól. A következő cikkünkben a tokenek tipikus felhasználási területeiről és a token közgazdaságtanról lesz szó.