U ovom ćemo članku naučiti što je to MetaMask i za što se i kako koristi. Za bolje razumijevanje daljnjeg teksta preporučljivo je prvo savladati sljedeće štivo:


Uvod

MetaMask je Google Chrome, Vivaldi, Opera, i Firefox ekstenzija za preglednik koja omogućava i olakšava komuniciranje s Ethereum blockchainom. Drugim riječima, MetaMask je wallet za vaš internet preglednik.

Metamask možete preuzeti za svoj preglednik s službene stranice, ili možete preuzeti Brave preglednik koji je fork Google Chrome-a ali dolazi s nekim mogućnostima koje su vrlo prijateljski nastrojene prema kriptovalutama (između ostalog, ugrađeni MetaMask).

MetaMask instalacijski ekran

Odmah u startu prilikom instalacije MetaMaska, ekstenzija će pitati za neke liberalne dozvole:

MetaMask permissions

Želi kompletnu kontrolu nad copy/paste (kopiraj/zalijepi), dozvolu da komunicira slobodno s vanjskim web stranicama, i mogućnost pregledavanja i modificiranja svih podataka na svim web stranicama koje posjećujete. Drugim riječima, želi sve. Dok god je reputabilna tvrtka iza MetaMask-a, to je u redu – no svejedno sve te dozvole vrijedi imati na umu. Ne bi bilo prvi put da popularna ekstenzija padne u krive ruke i uzrokuje velike štete.

Podešavanje

Nakon instalacije, ikona ekstenzije postaje dostupna u alatnoj traci preglednika. Klikom na ikonu otvara se sučelje MetaMask-a. Prvi ekran upozorava nas da se radi o beta softveru, i da je adresa koju generiramo u MetaMasku vidljiva svakoj stranici koju posjećujemo, osim ako se ne odjavimo iz MetaMask-a prije posjeta toj stranici.

MetaMask beta

Drugi ekran upozorava nas na pravila korištenja. Budući da to nitko ne čita, skraćena verzija je: “ako se dogodi nešto loše, nismo odgovorni za to.”

MetaMask pravila korištenja

Pomakom teksta do dna, gumb Accept postaje klikabilan i nakon toga nastavljamo na ekran odabira lozinke.

MetaMask password

Lozinka koju odabiremo u ovom slučaju će, kao i u slučaju s Mistom, enkriptirati JSON datoteku koja sadrži podatke o našem walletu. Lozinka će biti potrebna prilikom svake prijave u MetaMask.

Nakon unosa lozinke, MetaMask prikazuje seed – popis riječi iz kojih se generirane adrese može regenerirati ako izgubimo pristup pregledniku zbog hardverske ili softverske greške na računalu.

MetaMask seed

Taj popis je korisno isprintati i spremiti na sigurno. Smatrajte ga paprinatim novčanikom.

Računi

Nakon tog procesa otvara se ekran s prvim računom: Account 1.

Account 1

Stavite li kursor iznad imena računa (Account 1), pojaviti će se opcija “Edit” koja dozvoljava preimenovanje računa.

Account renamed

U gornjem lijevom kutu pritiskom na Main Network možete izabrati neku drugu mrežu na koju želite da se MetaMask spoji. Testnetovi i druge mreže objašnjeni su u ovom članku.

Tri točkice desno od imena računa nude opcije u vezi tog računa: pregled računa na Etherscanu (moguće samo kad je MetaMask spojen na Mainnet ili neku od javnih testnih mreža), prikaz QR koda za printanje papirnatih novčanika ili lako skeniranje putem mobitela, kopiranje adrese u clipboard da je zalijepite negdje (npr. u wallet s kojeg šaljete sredstva), i Export Private Key koji vam dozvoljava da od otvorenog walleta kreirate privatni ključ – kolekciju brojki i slova nalik dugoj lozinci koja se može koristiti umjesto enkriptirane JSON datoteke za unos tog istog walleta u neki drugi wallet softver.

MetaMask Private Key

Iznad te tri točkice nalaze se dvije ikone – tri horizontalne crte koje nas vode na izbornik s postavkama (to nas trenutno ne zanima), i ikona čovjeka u krugu strelica. Potonja služi za kreiranje dodatnih računa (adresa) ili unošenje nekih prijašnjih.

Izbornik kreiranja računa

“Create Account” u istom trenu kreira novi račun u istom MetaMasku, čineći ga dostupnim u istom tom izborniku.

New account available

“Import Account” opcija vodi nas na ekran koji nam dopušta unos računa putem JSON datoteke ili putem privatnog ključa. Potonja opcija je opcija unosa ključa koji se generira prije spomenutom metodom “Export Private Key”. JSON datoteke ćete često dobiti od programa poput MyEtherWallet ili Mist. Ukratko, to znači da bilo koji wallet bilo kojeg od tih alata možete otvoriti u bilo kojem drugom od tih alata. Svi walleti su međusobno kompatibilni.

Slanje i primanje

Pokušajmo sada poslati i primiti nešto Ethera.

Prvo, prebacimo se na Ropsten testnu mrežu pomoću gornjeg lijevog izbornika. Primjetite da adresa ostaje ista iako smo na drugoj mreži. To je zato jer se algoritmi za generiranje ključa neke adrese ne razlikuju od mreže do mreže – one su funkcionalno identične. Jedino podaci na njima (i time stanja računa) nisu. Više o tome ovdje.

Zatim, odaberimo “Copy Address to Clipboard” iz izbornika (tri točkice) za taj račun.

Copy address to clipboard

Sljedeće, krenimo na jednu od dvije stranice koje dijele besplatni Ether za testnu mrežu Ropsten:

  • https://faucet.metamask.io automatski čita trenutno aktivni račun u MetaMasku i daje mu Ether
  • http://faucet.ropsten.be:3001 zahtjeva manualni unos adrese na koju da šalje Ether. Budući da smo prije napravili “Copy Address To Clipboard” potrebno je adresu samo zalijepiti u odgovarajuće polje.

Bilo koja od te dvije opcije može vam dati Ether. Odaberite jednu. Kako faucet koristi pravu (iako testnu) mrežu Ethereuma, slanje Ethera može potrajati do minutu dvije.

Sada kada imamo Ether na jednoj od naših adresa, pokušajmo ga poslati na drugu. Prvo, odaberemo drugi račun koji smo prije kreirali. Zatim ponovimo postupak “Copy Address to Clipboard” iz izbornika. Prebacimo račun nazad na onaj koji sada ima Ether, te odabiremo “Send” s MetaMask ekrana.

Send ekran

Na ovom ekranu u Recipient polje unosimo adresu primatelja (zalijepi – adresa našeg drugog računa koju smo maloprije kopirali), pod Amount unosimo količinu (npr. 0.1), transaction data ostavljamo kako jest, i pritišćemo opciju “Next”.

MetaMask će generirati transakciju i pripremiti je za potpisivanje i slanje u blockchain.

Send ekran

Gas Limit i Gas Price su promijenjivi i ovise o zakrčenosti mreže kao što smo to objasnili u ovom članku. Na Ropsten mreži, obje vrijednosti su u redu kako ih MetaMask predlaže. Pritiskom na Reject transakcija se poništava, dok se pritiskom na Reset vrijednosti vraćaju na originalno predložene ukoliko ste zamijenili Gas Limit ili Gas Price. Pritiskom na Submit, Ether se šalje.

Prijedlog transakcije

Nakon maksimalno nekoliko minuta, transakcija bi trebala biti potvrđena i Ether prebačen.

Poslana transakcija

Tokeni

Podrška za Tokene u MetaMask-u je veoma ograničena. Trenutno podržavaju samo standardne ERC20 tokene i to samo djelomično – nije ih jednostavno poslati iz MetaMaska, samo pregledavati. Srećom, dokle god je MetaMask otključan, posjećivanje bilo koje od sljedeće 3 stranice će omogućiti slanje tokena s te iste MetaMask adrese:

Web3

Bitno je imati na umu da MetaMask u svaku stranicu koju posjećujete ubacuje Web3.js datoteku. Ukratko, Web3.js je skup JavaScript softverskih funkcija koje omogućavaju komunikaciju između tradicionalnih web stranica i Ethereum blockchaina.

Dok injekcija Web3 softvera u stranice nije sama po sebi neki sigurnosni propust, ne isključuje da to može postati – ne samo da sve stranice vide vašu Eth adresu MetaMaska kada ih posjetite ukoliko ste trenutno ulogirali u MetaMask, već je i moguće da ukoliko netko jednom ubaci neki maliciozni softver u kod Web3 softvera, MetaMask softvera, ili čak stranice koju posjećujete, može dobiti više detalja nego biste možda htjeli.

Zbog toga je preporučljivo za sada još uvijek koristiti zasebni, čisti preglednik za kripto stvari, i držati trivijalne količine Ethera na MetaMask-u.

Web3 ćemo pokriti detaljno u nadolazećem članku.

Zaključak

MetaMask je izuzetno praktična solucija za korištenje Ethereum blockchaina i držanje Ethera u pregledniku. Koliko god sigurnosnih implikacija mogao imati, MetaMask dugoročno pridonosi uklapanju kripto tehnologije u širu javnost svojom jednostavnošću i praktičnošću – nešto u što ćete se posebno uvjeriti u našem članku o pokretanju privatnog blockchaina.


Ako vam je ovaj članak koristio, razmislite o tome da nas podržite u daljnjem radu donacijom.

LEAVE A REPLY

Please enter your comment!
Please enter your name here