Ethereum

Izvor: SIS Wiki
Skoči na: orijentacija, traži

Temu rezervirao: Marko Marciuš


Sadržaj

Uvod

Ethereum je mrežni protokol u skopu kojeg se koristi valuta Ether. Mreža Ethereum bazirana je na Blockchain tehnologiji koju je osmislio anonimni autor Bitcoina. Mreža je jako posebna zato što od prvog dana ima podršku mnogih velikih kompanija od kojih je najpoznatija Microsoft. Protokol je osmislio kanadski progamer, interentski novinar ruskog podrijetla Vitalik Buterin s nepunih dvadest godina zajedno u suradnji s Gavion Woodom. Mreža Ethereum posebna je po tome što obećaje revolucionarne nove primjene Blockchain tehnologije koja bi mogla značajno promjeniti internet.

Ethereum1.png
Slika Ethereum
Izvor:1


Ethereum

Ether

Ether je danas druga kriptovaluta odmah poslije bitcoina na tržištu. To je postigao nakon 8 mjeseci pojavljanja na tržištu. Na tržište je pušten u ljeto 2015 godine, a oznaka mu je ETH. Cijena Ethera podložna je špekulacijama investitora pa divlja uz promjene od 80 posto na mjesečnoj razini. Vrijednost Ethera stalno se mijenja, a maksimalna vrijednost koju je postigao bila je 19,42 dolara.

Njegova svrha je dvojaka. On služi kao „gorivo“ na mreži Ehtereum jer se koristi prilikom postavljanju aplikacija u mreži, ali i kao sredstvo za motiviranje takozvanih „rudara“ koji održavaju mrežu na životu.


Pametni ugovori

Etheruma je decentralizirana platforma za izvršavanje aplikacija (pametnih ugovora). Pamatni ugovori napisani su u programskom jeziku Solidity. Primjer kojim se mogu objasnit pametni ugovori je da aplikacija od nekog servisa primjerice od google servisa koristi umjesto računalnog poslužitelja koristi Blockchain tehnologiju. Odnosno samoodrživu kriptografski zaštićenu mrežu tako da korisnici sami održavaju mrežu.

Namjena pametnih ugovora je reguliranje poslovnog odnosa gdje ne postoji uzajamno povjerenje između korisnika. Posredovanjem se danas bavi mnogo internetskih kompanija poput Ubera, Kickstartera, Airbnb ili mjenjačnica digitalnog novca. No sve bi te poslove umjesto posredničkih tvrtki koje kontroliraju proces razmjene i na tome dobro zarađuju mogli obavljati spomenuti pametni ugovori.


Blockchain

Blockchain tehlologija je najbolje definirana kao baza podataka koja je podijeljena između svih čvorišta koja sudjeluju u sustavu zasnovanom na Bitcoin protokolu. Potpunu kopiju datoteke sadrži svaka transakcija ikada izvršena i bilo tko može saznati koliko je bitcoinova bilo na nekoj adresi i u kojem periodu. Za Blockchain tehnologiju nije potreban posrednik prilikom transakcija.

Ideja Blockchain tehnologije bila da se uzme moć bankama u kontroli novčanih tokova, ali sada ispada da su one vodeći ulagači u Blockchain tehnologiju. Svjetski ekonomski forum objavio je opsežnu analizu o blockchain tehnologiji, u kojoj tvrdi da su ulaganja u fintech eksplodirala i premašila prošle godine 20 milijardi dolara. Također do danas u blockchain je uloženo oko 1,5 milijardi dolara.

Blockchain tehlonogija se pojavila na tržištu zbog bitcoinsa, te je danas preko bitcoinsa njegova primjena najraširenija. Analizi koju je objavila u prosincu prošle godine, Deutschebank je tvrdila da je Bitcoin mreža postala preopterećena za pojedine korisnike. Problem je da blockchain tehnologiju nije moguće umnožavati, scalirati, a da istodobno održi efikasnost prometa.

Ethereum je ponudio rješenje za taj problem. Njegovo rješenje je „virtualno rudarenje“ te potvrđivanje transakcije (transaction validation) samo u dijelu mreže. Generalno, radi se o prijelazu s algoritma potvrde transakcije koji se razvio u sklopu Bitcoina, a temelji se na rudarenju (proof-of-work) na novi algoritam (proof-of-stake), koji ne zahtijeva prijašnju hardversku snagu.

Najpoznatiji sustavi gdje se koristi blockchain:

Namecoin – planira promijeniti DNS na kojem se zasniva internet. Bio bi sigurniji i još manje podložan utjecaju pojedinih država.

SmartContract – omogućuje jeftino kreiranje povjerljivih ugovora između dvije strane.

Ethereum – predstavlja posebnu virtualnu kripto valutu i programski jezik za kreiranje ugovora bez potrebe verifikacije treće strane.


Virtualno rudarenje

Virtualnim rudarenjem rješava se problem da hardverska snaga omogući monopol. Mehanizam konkurencije također služi kontroli etha u optjecaju, jer motivira sudionike da ne napadaju mrežu (i ne izazivaju inflaciju). Osim nagrada u kompeticiji moguće je upropastiti ono što se izrudarilo, što se dobije ako se tipizira na krivi block. Tu je Buterin uveo zabavne pojmove kao što su „duncle“ (dead uncle).

Drugim riječima, blockchain tehnologija bi omogućila smart-contract, to jest da putem nje glazbenik može prodati svoju glazbu, te da se naplati od svakog tko je sluša, ali bi naplata ostala pod kontrolom banaka. Dakle, novac bi mogao direktno ići s mobitela na mobitel, ali bi ga inicijalno kreirali veliki igrači. Banke su svjesne da neke funkcije novca, na primjer kao transakcijskog sredstva, definitivno gube iz kontrole, no glavnu nastoje zadržati, moć kreacije novca.

Primjer programskog alata za virtualno rudarenje

Program Ethereum Grinder možemo preuzeti: https://github.com/Lusin333/Ethereum-GUI-Grinder

Dosta je jednostavan za korištnje samo je potrebno upisati svoju Ethereum adresu i kliknuti Start Mining

Ethereum11.PNG

Workflow dijagram za implementaciju Smart ugovora

Prikaz dijagrama:

Ethereum WorkFlow.png
Slika Ethereum
Izvor:6

Primjena Ethereum pametnih ugovora

U nastavku će biti prikazan postupak izrade i implementacija pametnih ugovora(Smart contract) pomoću Ethereum novčanika(Ethereum Wallet).

Ethereum Wallet aplikaciju možete preuzeti:[ https://github.com/ethereum/mist/releases]


Nakon preuzimanja, potrebno je raspakirati zip i instalirati Ethereum Wallet aplikaciju. Potrebno je odabrati kako ćemo koristiti aplikaciju, da li samo za testiranje ili za komercijalnu uporabu.

Potrebno je kreirati svoj Ethereum račun, te pričekati da se aplikacija preuzme. Aplikacija nudi mnogo mogućnosti od slanja ether, kreiranja pametnih ugovora...

Ethereum2.PNG

Izgled aplikacije:

Ethereum3.PNG

Kreiranje pametnog ugovora (smart contract) Prikazan je na sljedeći način.

1.Korak

Potrebno je kliknuti na DEPLOY NEW CONTRACT

Ethereum4.PNG

2.Korak

Nakon što smo otvorili DEPLOY NEW CONTRACT potrebno je kopirati ovaj programski kod u SOLIDITY CONTRACT SOURCE CODE.

  contract mortal {
     /* Define variable owner of the type address*/
        address owner;
     /* this function is executed at initialization and sets the owner of the contract */
        function mortal() { 
            owner = msg.sender; 
            }
     /* Function to recover the funds on the contract */
        function kill() { 
          if (msg.sender == owner) selfdestruct(owner); 
      } 
   }
  contract greeter is mortal {
     /* define variable greeting of the type string */
        string greeting;
     /* this runs when the contract is executed */
        function greeter(string _greeting) public {
        greeting = _greeting;
     } 
     /* main function */
        function greet() constant returns (string) {
        return greeting; 
     }
  }
Ethereum5.PNG

3.Korak

Kad smo kopirali kod u SOLIDITY CONTRACT SOURCE CODE potrebno je još popuniti parametre. Kao što su ime tokena, simbol tokena, ... te je na kraju potreno kliknuti na DEPOLY

Ethereum6.PNG

4.Korak

Na kraju upisujemo svoju lozinku da potvrdimo ugovor i kliknemo DEPLOY.

Etehereum7.PNG

Alat je dosta jednostavan za upotrebu i svakako bi preporučio svakom koga zanima da ga preuzme i malo prouči.

Primjer koda pametnog ugovora Provider

Za korištenje potrebno je kopirati ovaj programski kod u SOLIDITY CONTRACT SOURCE CODE.

Te odabrati SELECT CONTRACT TO DEPOLY Provider.

Kod parametara potrebno je samo upisati ime ugovora te opis ugovora. Te na kraju dovršimo po koraku 4 kao što je prije opisano.

 contract Provider is mortal {
   string public providerName;
   string public description;
   function Provider(
   string _name, 
   string _description) 
   {
    providerName = _name;
    description  = _description; } 
  function setDebt(uint256 _debt, address _userAddress){
    User person = User(_userAddress);
    person.setDebt(_debt); 
   }
 }

Zaključak

Danas mnogi investitori govore da je Bitcoin budućnost štednje i zarade novca, tako bi i Ethereum mogao postati budućnost interneta preko pametnih ugovora. Razlog je što će prekinuti potrebu za raznim oblicima online posredništva te će povećati transparentnost rada. Ethereum je danas još tehnološki daleko od toga da istisne velike igrače. Danas još na njemu nisu zaživjele uspješne poslovne aplikacije. No zato postoji velika mogućnost da istisne Bitcoin kao glavnu digitalnu valutu. Primjerice, cijene digitalnih valuta izravno su povezane s cijenom Bitcoina. Ether se pak u tom pogledu pokazao potpuno neovisan te je u razdoblju pada bitcoina neometano i strelovito rastao.


Literatura

1. Ethereum Homestead Documentation http://ethdocs.org/en/latest/introduction/what-is-ethereum.html

2. Building a smart contract https://www.ethereum.org/greeter

3. Ethereum Smart Contract https://www.youtube.com/watch?v=lQ4USRtzWko

4. Ethereum in 25 Minutes https://www.youtube.com/watch?v=66SaEDzlmP4

5. What is ethereum http://blockgeeks.com/guides/what-is-ethereum/

6. UNDERSTANDING ETHEREUM http://www.coindesk.com/research/understanding-ethereum-report/

7. Smart contracts https://medium.com/@ConsenSys/a-101-noob-intro-to-programming-smart-contracts-on-ethereum-695d15c1dab4#.76sexs7h2

Korisno

Kreiranje Ethereum pametnih ugovora u Solidity programskom jeziku.

1. https://www.youtube.com/watch?v=8jI1TuEaTro

2. https://www.youtube.com/watch?v=3-XPBtAfcqo

Osobni alati
Imenski prostori
Inačice
Radnje
Orijentacija
Traka s alatima