Ethereum decimale: zašto 1 ETH zapravo nije 1?

Imaš 1 ETH. Blockchain zapravo ne vidi broj 1

Kad u walletu vidiš stanje od 1 ETH, prirodno je pomisliti da Ethereum mreža negdje čuva broj 1. Ali u pozadini stvari rade drukčije. Ethereum decimale postoje zato što blockchain ne računa novac kao što ga mi prikazujemo na ekranu. Za mrežu 1 ETH nije "1", nego 1.000.000.000.000.000.000 najmanjih jedinica koje zovemo wei.

download.webp
Ethereum wallet prikazuje 1 ETH dok blockchain u pozadini isti iznos obrađuje kao 1.000.000.000.000.000.000 wei jedinica.

To na prvu izgleda kao potpuno nepotrebno kompliciranje.

Zašto bi netko 1 pretvarao u broj s 18 nula?

Zato što računala puno pouzdanije rade s cijelim brojevima nego s decimalama koje ljudi svakodnevno koriste.

I upravo se iza toga krije nešto što vrijedi razumjeti jer isti princip koristi ogroman dio kripto tokena.

Kad wallet pokaže 1 ETH, samo nam uljepšava stvarnost

Zamisli da otvoriš wallet i vidiš:

1 ETH

To je prikaz namijenjen čovjeku.

Ispod toga blockchain vodi broj:

1.000.000.000.000.000.000 wei.

Wallet samo pomakne decimalnu točku 18 mjesta ulijevo i pokaže nam nešto puno čitljivije.

Isto vrijedi ako imaš 0,5 ETH.

Mreža to može promatrati kao:

500.000.000.000.000.000 wei.

Za blockchain nema potrebe raditi s 0,5.

On vodi cijeli broj najmanjih jedinica.

To je puno sigurniji način za računovodstvo.

Zašto blockchain ne voli klasične decimale

Mi bez problema kažemo:

0,1 + 0,2 = 0,3.

Računalo to ne mora uvijek spremiti savršeno precizno ako koristi standardne decimalne prikaze kakve poznajemo iz programiranja.

Kod financija to može biti ozbiljan problem.

Zamisli da milijuni transakcija svaki dan imaju sitna zaokruživanja.

Jedno je izgubilo milijunti dio.

Drugo dodalo malo više.

Treće ponovno zaokružilo.

Kod sustava koji treba točno znati tko posjeduje koliko vrijednosti ne želimo takvu vrstu nejasnoće.

Puno je sigurnije reći:

Neću računati 1,23 ETH.

Računat ću točan broj wei jedinica.

Nema decimalnog zareza.

Nema nagađanja.

Samo cijeli brojevi.

Ethereum decimale nisu stvarne "decimale" na blockchainu

Ovo je dio koji je meni dugo bio zanimljiv.

Kada kažemo da ETH ima 18 decimala, lako je zamisliti da Ethereum ima neko posebno polje u kojem može zapisivati 18 znamenki iza zareza.

Zapravo nije tako.

Postoji samo najmanja jedinica.

Wei.

Jedan ETH definiramo kao 10^18 wei.

Drugim riječima:

1 ETH = 1.000.000.000.000.000.000 wei.

Decimalni prikaz dodaje wallet.

Blockchain vodi cijele jedinice.

To je skoro kao da odlučimo sve cijene u Hrvatskoj zapisivati isključivo u centima.

Umjesto 12,50 € zapisujemo 1.250 centi.

Nama je prikaz u eurima ugodniji.

Računovodstvenom sustavu cijeli broj može biti praktičniji.

Bitcoin radi isto, samo s manje decimala

Bitcoin ima osam decimalnih mjesta.

Najmanja jedinica je satoshi.

Jedan BTC ima 100.000.000 satoshija.

Ako imaš 0,25 BTC-a, blockchain zapravo može raditi s 25.000.000 satoshija.

Opet ista ideja.

Ljudi vide Bitcoin.

Mreža vidi najmanje jedinice.

Razlika je samo u tome koliko tih najmanjih jedinica čini jedan cijeli coin.

Bitcoin ima 8 decimala.

ETH ima 18.

I već tu možemo vidjeti da ne postoji jedno univerzalno pravilo za cijeli kripto.

Zašto ETH uopće treba čak 18 decimala

Osamnaest izgleda pretjerano.

Ali daje vrlo veliku preciznost.

Ethereum nije napravljen samo za slanje cijelog ETH-a između dvije osobe.

Na njemu rade smart contracti, DeFi aplikacije, protokoli, automatizirani izračuni i sustavi koji mogu dijeliti vrlo male količine vrijednosti.

Ako protokol treba izračunati mali dio kamate, naknade ili nagrade, velika preciznost pomaže.

Ne moraš koristiti svih 18 decimalnih mjesta u svakodnevnom životu.

Ali sustav ih ima na raspolaganju.

To je posebno korisno kada se iznosi dijele na mnogo manjih dijelova.

Token može imati 18 decimala, ali ne mora

E tu stvari postaju još zanimljivije.

Kod ERC-20 tokena često vidimo 18 decimala jer je to postalo vrlo uobičajeno u Ethereum ekosustavu.

Ali token može imati i drugačiji broj.

USDC, primjerice, tradicionalno koristi 6 decimala na Ethereumu.

To znači da 1 USDC nije 10^18 najmanjih jedinica, nego 1.000.000.

Ako imaš 25,50 USDC, smart contract u pozadini može voditi:

25.500.000 osnovnih jedinica.

Wallet zna da token koristi 6 decimala i zato prikazuje:

25,50 USDC.

Da wallet pogriješi i taj isti broj pročita kao da token ima 18 decimala, prikaz bi bio potpuno besmislen.

Decimals ne određuje koliko tokena postoji

Ovdje postoji česta zabuna.

Ako token ima 18 decimala, to ne znači da ima veću ponudu.

Broj decimala govori samo koliko sitno možemo podijeliti jednu jedinicu.

Zamisli euro.

Možemo ga podijeliti na 100 centi.

To ne određuje koliko ukupno eura postoji u ekonomiji.

Isto vrijedi za token.

Možemo napraviti token s maksimalnom ponudom od 1.000 jedinica i 18 decimala.

Možemo napraviti drugi s milijardu jedinica i samo 6 decimala.

Decimals govori o preciznosti.

Supply govori o količini.

To su dvije potpuno različite stvari.

Može li token imati nula decimala

Može.

Zamisli token koji je napravljen tako da postoji samo u cijelim komadima.

Nema 0,5 tokena.

Imaš 1 ili nemaš.

Takav token može postaviti decimals na 0.

To bi imalo smisla za neku vrstu digitalne ulaznice ili bodova gdje dijeljenje nema svrhu.

Naravno, većina kriptovaluta želi biti djeljiva jer to olakšava trgovanje i korištenje.

Ali tehnički nije obavezno da svaki token ima 18 decimala.

Zašto wallet ponekad pokaže potpuno krivu količinu

Ovo je dobra praktična lekcija.

Ako wallet ne prepozna token ispravno ili koristi pogrešne podatke o decimals vrijednosti, može prikazati čudan saldo.

Recimo da smart contract kaže da adresa ima:

1.000.000.

Ako token ima 6 decimala, to znači:

1 token.

Ako ima 18 decimala, onda je to:

0,000000000001 tokena.

Isti broj u smart contractu.

Potpuno drugačiji prikaz.

Zato contract adresa i token metadata nisu samo kozmetika.

Wallet mora znati što čita.

Smart contract ne šalje 1,5 tokena

Zamisli ERC-20 token s 18 decimala.

Želiš poslati 1,5 tokena.

U smart contract pozivu neće nužno pisati:

1.5

Umjesto toga šalješ:

1.500.000.000.000.000.000

osnovnih jedinica.

Frontend aplikacije to sakriju od nas.

I dobro da skrivaju.

Nitko normalan ne želi svaki put brojati 18 nula prije slanja tokena.

Ali kada razumiješ što se događa iza ekrana, puno lakše shvatiš zašto greške u decimalama mogu biti ozbiljne.

Jedna pogrešna nula može napraviti kaos

Kod developera decimalna preciznost nije estetski detalj.

Zamisli DeFi protokol koji računa cijenu jednog tokena s 18 decimala, a drugog sa 6.

Ako kod ne pretvori vrijednosti u isti format prije računanja, rezultat može biti pogrešan za faktor od milijun, milijardu ili više.

To ne znači da će se to automatski dogoditi.

Moderni protokoli imaju standardne načine rada s tim vrijednostima.

Ali upravo zato sigurnosni auditi toliko pažnje posvećuju matematici, rounding greškama i različitim decimalnim formatima.

Na ekranu vidimo:

1 USDC = 1 dolar.

Kod ispod toga može raditi s milijunima najmanjih jedinica.

Zaokruživanje i dalje postoji

Cijeli brojevi uklanjaju puno problema, ali ne mogu ukloniti svaku situaciju s dijeljenjem.

Zamisli da tri osobe trebaju podijeliti 1 token.

Matematički svatko treba dobiti:

0,333333…

Ali broj decimala je konačan.

Na nekom mjestu moramo stati.

Ako token ima 18 decimala, možemo biti vrlo precizni.

Ali ne beskonačno precizni.

Zato smart contract mora imati pravila za zaokruživanje.

I vrlo mala razlika može s vremenom postati važna ako protokol radi milijune takvih izračuna.

Zato se u DeFi-ju pojavljuje "dust"

Možda si vidio da ti nakon swapa ili slanja ostane sitna količina nekog tokena.

0,000001.

Ili još manje.

To se često naziva dust.

Taj iznos može biti toliko malen da ga nema ekonomskog smisla slati jer bi gas koštao više od same vrijednosti.

Ali blockchain ga i dalje uredno vodi.

Za njega nema kategorije:

"Ovo je premalo da me zanima."

Ako jedinica postoji i pravila dopuštaju njezin prijenos, mreža je može računati.

Tu ponovno vidiš zašto velika decimalna preciznost može proizvoditi stvari koje čovjek nikad ne bi ručno zapisivao.

Cijena tokena i broj decimala nemaju veze

Još jedan mit koji vrijedi razbiti.

Token od 0,00001 € nije jeftin zato što ima puno decimala.

Bitcoin nije skup zato što ima osam.

Cijena ovisi o tržišnoj vrijednosti.

Decimals samo određuje koliko ga možemo podijeliti.

Ako Bitcoin sutra vrijedi milijun eura, i dalje ga možeš kupiti u vrlo malom dijelu.

Ne moraš kupiti cijeli BTC.

I upravo je to jedna od korisnijih osobina digitalne imovine.

Visoka cijena jedne cijele jedinice ne znači da je mali investitor isključen.

Ethereum decimale su razlog zašto "1 token" nije osnovna jedinica

Mislim da je ovo najbolji način za razumjeti cijelu temu.

Mi gledamo kripto kroz ljudske jedinice.

1 ETH.

100 USDC.

0,25 BTC.

Blockchain ispod toga radi s puno manjim cijelim jedinicama.

Wallet je prevoditelj.

Uzme broj koji je dobar za računalo i pretvori ga u broj koji je dobar za čovjeka.

Dok sve radi ispravno, gotovo nikada ne razmišljamo o tom sloju.

Ali kada kreneš koristiti smart contracte, analizirati token ili čitati blockchain explorer, počinješ viđati ogromne brojeve.

I tada više ne izgledaju tako čudno.

Imaš 1 ETH, ali mreža vidi nešto sasvim drugo

Sljedeći put kada wallet pokaže 1 ETH, probaj ga na trenutak pogledati očima blockchaina.

Za tebe je to jedan Ether.

Za mrežu je to 1.000.000.000.000.000.000 wei.

Za tebe USDC može biti 1 dolar.

Za smart contract to može biti 1.000.000 osnovnih jedinica.

Nije stvar u tome da blockchain nepotrebno komplicira nešto što ljudi već znaju računati.

Upravo suprotno.

On uklanja jedan vrlo neugodan problem: neprecizno računanje financijske vrijednosti.

Zato ono što nama izgleda kao decimalni broj mreža pretvara u cijele jedinice i vodi ih bez nagađanja.

I možda je najbolji dokaz koliko je cijeli sustav dobro skriven činjenica da milijuni korisnika mogu svaki dan slati ETH, USDT i druge tokene bez da ikada vide jedan jedini wei.

Na ekranu vidimo 1.

I to nam je dovoljno.

Ali blockchain ispod toga broji svaku najmanju jedinicu.

– Mario Jaklenec | KriptoEntuzijasti –

Kripto nije igra sreće, nego disciplina i razumijevanje onoga u što ulažeš.
Znanje, rizik, analiza i dugoročno razmišljanje – to je put kojim hodamo.

Edukacija bez hypea. Zajednica bez slijepog praćenja. Cilj bez iluzija.

Hvala svima što čitate naše članke na kriptoentuzijasti.io!

🌐 Posjeti nas: https://kriptoentuzijasti.io

💬 Pridruži se zajednici: https://discord.gg/kriptoentuzijasti

🐦 Prati nas na X-u: https://twitter.com/k_entuzijasti

🧠💡 Analiziraj prije nego vjeruješ – misli samostalno, jer će inače tržište misliti umjesto tebe.

U svijetu kriptovaluta gdje je buka veća od znanja, edukacija je tvoj najvažniji alat.

Ne gradi mišljenje o tržištu na temelju memova, FOMO objava i lažnih obećanja o "pasivnoj zaradi" – nego na znanju, iskustvu i razumijevanju kako stvari zaista funkcioniraju.

Ako vam se sviđa ono što čitate, podijelite članak na društvenim mrežama i pomozite nam širiti kripto znanje.

Zajedno gradimo svijet kripta!

Utjecaj odobrenja Ethereum ETF-a na budućnost kripto tržišta. 

Kontrolna Lista – 25 Znakova da Imaš Posla s Kripto Prevarantom  

Odgovori

Vaša adresa e-pošte neće biti objavljena. Obavezna polja su označena sa * (obavezno)

BobiAI Chat

🗑️ ×

Košarica

🛒

Vaša košarica je trenutno prazna.

Krenite u kupovinu
💎

Odaberi pretplatu

Pristup svim člancima u kategoriji

Već imaš račun? Prijavi se | Registriraj se
🔒 Sigurno plaćanje