Qtum (izgovara se Quantum) okreće puno glava u kripto prostoru. Zaklada Qtum registrirana je u Singapuru i globalni je projekt s timom iz Azije, Amerike, Afrike i Europe. Razlog porastu popularnosti je USP – pružanje Ethereum EVM-a s Bitcoinovim sigurnim UTXO modelom. Povrh toga, osiguravaju konsenzus algoritmom Proof of Stake 3.0 (POS 3.0). U ovom ćemo vodiču dublje pogledati Qtum i vidjeti zašto bi programeri trebali početi eksperimentirati na svojoj platformi.

Kombinirajući najbolje iz oba svijeta

Trenutno najpopularniji blockchains na svijetu su Bitcoin i Ethereum. Bitcoin, koji je taj koji je sve započeo, i dalje ostaje najsigurniji blockchain u prostoru. Njegov model UTXO (Unspent Transaction Output) također pomaže u velikoj sljedivosti transakcija. To je razlog zašto je Qtum odlučio da Bitcoin blockchain bude njegov temelj. S druge strane jednadžbe imamo Ethereum blockchain. Ethereum je započeo eru pametnih ugovora. Odjednom blockchain više nije bio samo otmjeni način prijenosa novca. Ethereum je programerima iz cijelog svijeta omogućio da svoje decentralizirane aplikacije (dApps) grade na vrhu lanca. Kako bi uključili pametne ugovore, programeri Qtum stvorili su apstrakcijski sloj nazvan “Sloj apstrakcije računa (AAL)” kako bi Ethereum Virtual Machine (EVM) mogao postojati na vrhu Qtumovog bloka UTXO. Ovom jednostavnom inovacijom Qtum svojim korisnicima pruža siguran mehanizam pametnih ugovora koji je interoperabilan i s Bitcoinom i s Ethereumom. Ovo je izuzetno uzbudljiv prijedlog i za redovne korisnike i za programere, jer tehnike skalabilnosti na kojima se radi i na bitcoinima (mreža munje) i na Ethereumu (mreža Raiden, plazma, itd.) Mogu biti operativne na Qtumu, sve dok zajednica pristaje na to. Govoreći o interoperabilnosti, postoje još dva fascinantna aspekta koja čovjek mora imati na umu:

Kompatibilnost SegWit

Da biste stekli potpuno razumijevanje SegWita, ovdje pogledajte naš detaljni vodič. Da biste vam pružili vrlo kratko razumijevanje, SegWit je skraćenica od “Odvojeni svjedok”. Prije primjene SegWita, Bitcoin transakcije patile su od problema skalabilnosti jer su bile nepotrebno glomazne. Podaci o potpisu dodali su dodatnu količinu. Implementacijom SegWita podaci o potpisu izvađeni su iz blokova i zadržani u bočnom lancu, paralelno s glavnim Bitcoin blockchainom. Budući da je Qtum kompatibilan sa SegWitom, može iskoristiti njegove prednosti.

Kompatibilnost pametnog ugovora Ethereum

Qtum koristi Ethereum Virtual Machine (EVM) kako bi osigurao da se Ethereum pametni ugovori izvode na Qtumu i obrnuto. Ovo je nevjerojatno važna funkcionalnost. Ethereum ima najjaču zajednicu programera na svijetu. Putem ove funkcionalnosti Qtum može ugraditi programere na njihovu platformu. Ethereum dApps se također lako prenosi na Qtum. To također znači da programeri mogu koristiti Solidity, već uspostavljeni jezik, za stvaranje pametnih ugovora na Qtumu.

Qtum i UTXO

Da biste razumjeli UTXO, morate razumjeti kako transakcije rade u Bitcoinu (i isto rade za Qtum). Da biste stekli laičko razumijevanje načina rada UTXO-a, razmislite kako funkcioniraju osnovne gotovinske transakcije. Pretpostavimo da vam prijatelj duguje 6 dolara. Doseže do torbice, izvadi novčanicu od 5 i 1 dolar i vraća vam njome. 

Sada, ako nekome dugujete 8 dolara, izvadite 5 i 1 USD koje vam je ranije platio vaš prijatelj i 2 USD koje vam je netko drugi ranije platio.

Tako približno funkcioniraju transakcije u Bitcoinu. Izlazi prethodne transakcije postaju ulazi buduće transakcije. Dakle, imajte ovo na umu i pogledajmo kako funkcioniraju bitcoin transakcije.

Unos transakcije

Pretpostavimo da Alice mora poslati malo Bitcoin-a Bobu. Da bi izvršila ovu transakciju, Alicein novčanik učinit će izlaze svojih prethodnih transakcija ulaznim podacima nove transakcije.

Dakle, pretpostavimo da Alice treba povući bitcoin iz sljedećih transakcija koje ćemo nazvati TX (0), TX (1) i TX (2). Te će se tri transakcije zbrojiti i to će vam dati ulaznu transakciju koju ćemo nazvati TX (ulaz).

Dijagramski će izgledati ovako:

što je qtum

Dakle, to je to s ulazne strane, provjerimo kako će izgledati izlazna strana.

Izlaz transakcije

Izlaz će u osnovi imati broj bitcoina koje će Bob posjedovati nakon transakcije i sve preostale promjene koje su preostale, a koje se zatim vraćaju natrag Alice. Ta promjena tada postaje njezina ulazna vrijednost za buduću transakciju.

Slikovni prikaz izlazne strane izgleda ovako:

što je qtum

Ovo je izravna transakcija koja ima samo jedan izlaz (osim PROMJENE), neke su transakcije moguće s više izlaza.

Pa, zašto je Qtum usvojio UTXO model? Dva su glavna razloga:

  • Prvo, za korištenje zrelog, stabilnog i sigurnog transakcijskog modela koji je široko razumljiv iz Bitcoin blockchaina.
  • Drugo, UTXO model pomogao je u primjeni Jednostavne provjere plaćanja (SPV). SPV će omogućiti svjetlosnom čvoru interakciju s pametnim ugovorima i provjeru transakcija. Lagani čvorovi su čvorovi koji preuzimaju samo dio blockchaina umjesto cijelog blockchaina.

Qtum i EVM

Kao što je gore spomenuto, Ethereum je započeo eru pametnih ugovora. Pametni ugovori su samoizvršavajući se i automatizirani ugovori između dvije ili više strana, što ne zahtijeva pravnog posrednika. To zvuči prilično nevjerojatno, zar ne?

Međutim, gdje točno izvršavate ove ugovore? Pametni ugovori mogu se izvršiti u jednom od dva sljedeća sustava:

  • Virtualni strojevi: Ethereum to koristi.
  • Lučki radnik: Tkanina to koristi.

Usporedimo ovo dvoje i utvrdimo što čini bolji ekosustav. Radi jednostavnosti, usporedit ćemo Ethereum (virtualni stroj) s Fabric (Docker).

što je qtum

Dakle, virtualni strojevi pružaju bolje determinističko, održivo i izolirano okruženje za pametne ugovore. EVM integrira plinski mehanizam za sprječavanje beskonačnih petlji i neželjene pošte (izvršenje se završava kad ugovorni ugovor ostane bez goriva). Želite znati više o plinu? Kliknite ovdje.

Spajanje UTXO i EVM

Budući da su UTXO i EVM izuzetno različiti koncepti, kako ih je QTUM uspio povezati u svoju platformu? Dodavanjem sloja sažetaka računa (AAL). AAL djeluje kao sloj sučelja između UTXO i EVM. Ljepota AAL-a je u tome što nije ograničen samo na EVM. Bilo koji virtualni stroj koji je kompatibilan s AAL-om može se izvršiti povrh AAL-a. 

Dakle, prije nego što krenemo dalje u AAL, shvatimo što znači apstrakcija.

Apstrakcija znači da svatko može koristiti bilo koji sustav ili protokol, a da u potpunosti ne zna detalje i sve tehničke detalje. Npr. Kada upotrebljavate iPhone, ne morate biti programer ili inženjer da biste njime upravljali. Jednostavno pritisnete zaslon da biste aktivirali aplikaciju ili pritisnete tipku za poziv da biste nazvali nekoga. Ne trebate znati kako pritiskom na određene aplikacije aktivira se sklop unutar telefona ili kako su određene aplikacije programirane. Apstrakcija čini sofisticiranu tehnologiju dostupnom masama skrivajući složenost.

Za platforme pametnih ugovora i dApps apstrakcija je u velikoj mjeri sveti gral. Ako je masovno usvajanje zaista cilj, tada se dApps mora izvoditi slično uobičajenoj aplikaciji. Slično tome, Qtum bi trebao integrirati EVM i UTXO na način da korisnicima i programerima bude jednostavna interakcija s njima. 

Dakle, da bismo bolje razumjeli kako AAL funkcionira, pogledajmo kako jednostavna Bitcoin transakcija funkcionira na razini koda. Tijekom transakcije, novčanik će izvršiti sljedeće opcode na vašem računalu. Ovo u osnovi upućuje softver da provjeri podudara li se javni ključ transakcije s potpisom ili ne:

što je qtum

Stupac “Script” sadrži hrpu ključnih riječi koje se nazivaju opcode. Bitcoin transakcije skriptirane su kombinacijom ovih opkodova. AAL dodaje još tri opkodova na izvorni popis bitcoina kako bi omogućio podršku pametnih ugovora.

  • OP_CREATE: Koristi se za stvaranje novih pametnih ugovora. 
  • OP_CALL: Koristi se za izvršavanje koda unutar postojećeg pametnog ugovora.
  • OP_SPEND: Koristi se za trošenje vrijednosti u pametnom ugovoru.

Pa, kako se ovi opkodovi obrađuju? Pogledajmo.

  • Softver validatora raščlanjuje skriptu u Qtum transakcijama.
  • Kad naiđu na jedan od ova tri opkodova, oni ih odvoje na obradu od strane EVM-a.
  • EVM transakcije ugovora se zatim obrađuju u poseban „Očekivani popis transakcija ugovora“, koji izvršavaju čvorovi validatora.
  • Te se transakcije zatim pokreću protiv EVM-a, a rezultirajući izlaz pretvara se u potrošni Qtum tx. 
  • Ako tijekom izvršenja ugovora ugovor pozove drugi ugovor s vrijednošću, ta se transakcija također pretvara u eksplicitni Qtum tx i pridružuje trenutnom bloku.

Veličinom Qtum UTXO može se prilično dobro upravljati jer su transakcije OP_CREATE, OP_CALL i OP_SPEND potrošne. Kada se ugovor samouništi, potroši se transakcija OP_CREATE, koja je uklanja iz UTXO spremišta.

Ako ste solidni programer, tada će vam biti prilično jednostavno započeti s kodiranjem na Qtumu jer već koristi EVM. Ako ste zainteresirani, onda vam preporučujemo da započnete s njima sveobuhvatan vodič za programere.

Međutim, kao što je već spomenuto, EVM nije jedini virtualni stroj dostupan na Qtumu za pametno izvršavanje ugovora. Qtum tim razvija x86 virtualni stroj za pametne ugovore za Qtum. Ovaj x86 VM omogućit će programerima fleksibilnost kodiranja pametnih ugovora na popularnim programskim jezicima kao što su Rust i drugi. 

Qtum i dokaz o udjelu (POS)

Kao što je već više puta spomenuto, Qtum koristi POS konsenzus model. Mnogi od modernih blockchaina odlučili su se za POS model zbog prednosti koje ima u odnosu na klasični POW model. POW ili dokaz o radu bio je model konsenzusa koji je uveo Bitcoin, u kojem specijalizirani čvorovi zvani rudari rješavaju kriptografski teške zagonetke pomoću ASIC-a. 

Problemi s dokazima o radu.

  • Dokaz o radu izuzetno je neučinkovit proces zbog velike količine snage i energije koju pojede.
  • Ljudi i organizacije koji si mogu priuštiti brže i snažnije ASIC-ove obično imaju veće šanse za rudarenje od ostalih. To znači da rudarstvo Bitcoina nije toliko decentralizirano koliko mi želimo.
  • Budući da eksploatacija ratnih zarobljenika izjeda resurse iz stvarnog svijeta, to je vrlo štetno za okoliš.

Dokaz o udjelu, s druge strane, čini postupak rudarstva potpuno virtualnim. Dajmo vam kratki pregled rada POS-a:

  • Provjerivači / rudari zaključavaju neke svoje novčiće kao ulog.
  • Nakon toga započet će provjeru valjanosti blokova. Što znači, kad otkriju blok za koji misle da ga se može dodati u lanac, potvrdit će ga stavljanjem jednog ili više UTXO-a za 500 potvrda..
  • Ako se blok doda, tada će validatori dobiti nagradu za blok, pri čemu je učestalost blokovskih nagrada proporcionalna iznosu koji je taj validator uložio.

Različiti projekti koriste različite varijacije POS algoritma. Ethereum će koristiti Casper protokol, dok Algorand koristi čisti POS. Zatim postoje projekti poput EOS-a koji koriste delegirani POS

Qtum koristi POS verziju 3 ili POSv3 koja je izrađena za blockchains temeljene na UTXO. Pogledajmo prethodne verzije prije dolaska na POSv3.

POSv1:

“Dob novca” izraz je koji opisuje koliko dugo UTXO nije proveden na blockchainu. POSv1 uvelike ovisi o starosti kovanica. Što je starost novčića veća, to se težina smanjuje. Međutim, problem ovog pristupa bio je taj što su ljudi jednostavno prestali trošiti svoje novčiće! Ljudi su novčanik otvarali samo kad im je bio potreban za ulaganje. Da je novčić dovoljno star, gotovo bi trenutno stvorio nove blokove za ulaganje. 

POSv2:

Ova se verzija poboljšava u odnosu na prethodnu verziju uklanjanjem koncepta starosti novčića iz konsenzusa. Još jedna značajna promjena koju su napravili među mnoštvom ažuriranja bila je upotreba potpuno drugačijeg mehanizma za modificiranje uloga od v1. Ovaj je modifikator uloga slučajno uključio vrijeme prethodnog bloka. Imajte to na umu kad razgovaramo o v3.

POSv3: 

Vrijeme bloka uključeno u POSv2 može ga učiniti ranjivim na napad “kratkog dometa” gdje je bilo moguće iskopati alternativni blockchain ponavljanjem kroz prethodna vremena bloka. Promjene poput ovih čine POSv3 puno boljom verzijom POSv2. 

POSv2 je također koristio vrijeme blokiranja i transakcija za određivanje starosti UTXO-a, koja se razlikuje od starosti novčića. POSv3 određuje starost UTXO-a procjenjujući njegovu dubinu u blockchainu (npr. Potvrde). 

BILJEŠKA: Qtum je nedavno dodao podršku za OP_RETURN opcode koja omogućuje da vout sadrži javni ključ za potpisivanje bloka bez potrebe za potpunom skriptom pay-to-pubkey. To znači da davatelj usluga dApp može platiti gorivo za nove korisnike dApp-a, što omogućuje lakše uključivanje.

Gledajući dublje u POSv3 

U POW sustavu slučajni se nonce dodaje u raspršivanje zaglavlja bloka i rezultirajuća se ponovno raspršuje. Ovaj bi hash, pak, trebao biti manji od ukupne mrežne poteškoće. Tek tada, blok se dodaje glavnom blockchainu.

S druge strane, POSv3 ima hash jezgre, koji se sastoji od nekoliko podataka koji se u trenutnom bloku ne mogu lako izmijeniti. Evo još nekih značajki koje na Qtumov POS sustav moraju imati na umu: 

  • Druga transakcija u svakom bloku naziva se “coinstake transakcija”, dok je prva transakcija prazna coinbase transakcija.
  • Svaki blok mora imati najmanje jednu transakciju ulaganja.
  • Oznaka vremena bloka mora imati donja četiri bita postavljena na 0, tako da vrijeme bloka može biti predstavljeno samo u intervalima od 16 sekundi.
  • Samo jednom na svakih 500 blokova (oko 18 sati) UTXO se može koristiti za izradu transakcije ulaganja.

Sada pogledajmo od čega je izgrađen POSv3 kernel zrnca:

  • Modifikator uloga prethodnog bloka koji je raspršivanje prethodne transakcije u PoS blokovima i modifikator uloga prethodnog bloka.
  • Vremenska oznaka iz prethodne transakcije. 
  • Hash prethodne transakcije.
  • Izlazni broj pretprodaje (ovo je izlaz transakcije koji troši transakcija ulaganja).
  • Trenutačno vrijeme bloka u kojem su donja četiri bita postavljena na 0. Ova se posebna značajka mijenja tijekom postupka klađenja.

NAPOMENA: Prethodna transakcija je UTXO koja se koristi za stvaranje transakcije ulaganja. Jedini način za promjenu trenutnog hasha kernela je promjena UTXO-a koji koristite za stvaranje bloka ili promjena trenutnog vremena blokade.

Sad kad znamo kako Qtumov POSv3 funkcionira, pogledajmo kako ublažava najveću POS-ovu manu – problem u kojem se ništa ne radi.

Što je problem “Ništa u akciji”?

Razmotrimo sljedeću situaciju:

što je qtum

U gornjem dijagramu imamo glavni lanac (plavi), koji je miniran do bloka # 53. Međutim, postoji paralelna grana koja potječe iz bloka # 50 (crvena). Što će se dogoditi ako se neki zlonamjerni rudari okupe i nastave s rudarstvom na crvenom lancu dok on ne pretekne plavi? Sve transakcije koje su se dogodile u plavim blokovima 51, 52 i 53 bit će trenutno ništavne i poništene.

POW blockchains ranjivi su na ovaj napad od 51% jer se hash snaga može unajmiti na kratkoročni način.

Pretpostavimo da zlonamjerna rudarica Alice želi rudariti na crvenom lancu. Čak i ako mu posveti svu svoju hash snagu, neće dobiti nijednog drugog rudara koji bi joj se pridružio na novom lancu. Svi ostali će i dalje nastaviti s eksploatacijom na plavom lancu, jer je isplativije i bez rizika vršiti rudarstvo na dužem lancu.

POW je lako izvesti napad od 51% unajmljenom hash snagom. Stoga su lančani dijelovi problematični za sve osim za najveći POW blockchain (bitcoin).

Međutim, stvari postaju malo drugačije kada unesete POS. Ako ste validator, novac jednostavno možete staviti i u crveni i u plavi lanac bez ikakvog straha od posljedica. Bez obzira što se dogodilo, uvijek ćete pobijediti i nećete imati što izgubiti, unatoč tome koliko su vaše akcije možda zlonamjerne. Međutim, crveni bi lanac morao uložiti veći broj kovanica (mrežna težina) da bi bio uspješan, a za razliku od POW-a gdje napadač može unajmiti hash power, POS zahtijeva stvarno vlasništvo kovanica.

To se naziva problem “Ništa u akciji”.

Ethereumov Casper protokol to ublažava upotrebom kaznenog mehanizma. U osnovi se zlonamjerni validatori kažnjavaju rezanjem uloga. Qtum planira pružiti drugačije rješenje na problem o kojem se ništa ne radi i nikada neće kazniti ulagače koji se loše ponašaju osim izbacivanja s mreže. Vjeruju da niti jedan softver ne može biti savršen, pa im je zato neprihvatljiv rizik od buga zbog kojeg bi se kladač mogao ponašati loše i izgubiti milijune dolara. Moraju se imati na umu sljedeće točke kako bi se razumjelo Qtumovo ublažavanje ničega što je na kocki:

  • Korištenje kontrolnih točaka i dospijeća 500 potvrda za transakcije ulaganja. 
  • Oni će na Bitcoin blockchain staviti neke podatke koji se kasnije mogu provjeriti putem SPV-a. To osigurava da napadač ne može lagati kada je stvoren određeni blok.

Također, moramo imati na umu da Qtum smatra da je problem o kojem se ništa ne radi malo prenapuhan, posebno u njihovom sustavu jer:

  • Izgradnja postave za napad može biti vrlo skupa.
  • Čak i kad je sve postavljeno, ostatak čvorova i dalje mora slijediti vaše vodstvo, što je duga prilika.
  • Svatko ga može lako otkriti provjerom centraliziranih izvanlančnih izvora kao što su istraživači blokova.
  • Kontrolne točke mogu se dodavati kodu češćim tempom radi bržih izdanja. To će osigurati da ovi zlonamjerni lanci koji nisu na kocki nikada neće imati značajniju količinu energije.

Protokol o decentraliziranoj upravi

Još jedna značajka Qtuma je DGP (protokol decentraliziranog upravljanja) uveden za brzu i neprimjetnu izmjenu parametara blockchaina bez potrebe za hard forkom. DGP je izgrađen pomoću tehnologije pametnih ugovora i sposoban je prilagoditi veličinu bloka (do 32 MB) i promijeniti količinu plina za razne operacije pametnih ugovora.

Dakle, veličina bloka i parametri plina mogu se promijeniti kroz upravljački proces na mreži bez potrebe za preuzimanjem novog softvera i ne moraju se poduzimati radnje od mrežnih dionika i operatora čvora. Tvrde vilice i dalje će biti potrebne za primjerice promjene u konsenzusu ili nove virtualne strojeve.

Zaključak

Qtum je jedan od najuzbudljivijih projekata u svemiru. Kombinacijom UTXO, EVM i POS – Qtum pruža jedinstvenu, sigurnu i prilagodljivu platformu koja se može prilagoditi. Zahvaljujući svojoj povezanosti s EVM-om, Qtum može lako privući ionako živahnu solidnu razvojnu zajednicu i pružiti im mogućnost prenosa svojih dApps-a na svoju platformu. Bit će vrlo zanimljivo vidjeti kako ovaj projekt raste u bliskoj budućnosti.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me