TL;DR
Tumutukoy ang pagmimina ng cryptocurrency sa proseso ng pag-verify at pag-validate ng mga transaksyon sa blockchain. Ito rin ang prosesong gumagawa ng mga bagong unit ng mga cryptocurrency. Ang trabahong ginagawa ng mga minero ay nangangailangan ng mga intensive na resource sa pag-compute, pero ito ang nagpapanatiling secure sa isang network ng blockchain. Binibigyan ng reward ang mga matapat at matagumpay na minero para sa kanilang trabaho gamit ang mga bagong gawang cryptocurrency dagdag pa ang bayarin sa transaksyon.
Ang pagmimina ay ang proseso kung saan vine-verify ang mga transaksyon sa cryptocurrency sa pagitan ng mga user at idinaragdag ang mga ito sa pampublikong ledger ng blockchain. Responsable rin ang mga pagpapatakbo ng pagmimina sa paglalagay ng mga bagong coin sa kasalukuyang supply na nasa sirkulasyon.
Ang pagmimina ay isa sa mga pangunahing elemento na nagbibigay-daan sa blockchain ng Bitcoin na gumana bilang distributed ledger. Itinatala ang lahat ng transaksyon sa isang
peer-to-peer network nang hindi nangangailangan ng sentral na awtoridad. Sa artikulong ito, tatalakayin natin ang pagmimina kung paano ito nangyayari sa network ng Bitcoin, pero pareho ang proseso sa mga altcoin na gumagamit ng parehong mekanismo ng pagmimina.
Habang gumagawa ng mga bagong transaksyon sa
blockchain, ipinapadala ang mga ito sa isang pool na tinatawag na
memory pool. Ang trabaho ng minero ay i-verify kung valid itong mga nakabinbing transaksyon at ilagay ang mga iyon sa mga block. Puwede mong isipin ang block bilang isang page ng ledger ng blockchain, kung saan nakatala ang ilang transaksyon (kasama ng iba pang data).
Sa mas partikular, responsable ang isang
node ng pagmimina sa pagkolekta ng mga hindi nakumpirmang transaksyon sa memory pool at paglalagay ng mga ito sa isang
kandidatong block. Pagkatapos noon, susubukang i-convert ng minero ang kandidatong block na ito sa isang valid at nakumpirmang block. Pero para magawa iyon, kailangan niyang makahanap ng solusyon sa isang kumplikadong problemang matematikal. Nangangailangan ito ng maraming resource sa pag-compute, pero sa bawat block na matagumpay na mamimina, makakakuha ang minero ng reward ng block, na binubuo ng mga bagong gawang cryptocurrency dagdag pa ang bayarin sa transaksyon. Tingnan natin nang mas malapitan ang proseso ng pagmimina.
Hakbang 1 - Pag-hash ng mga transaksyon
Ang unang hakbang ng pagmimina ng isang block ay ang pagkuha ng mga nakabinbing transaksyon sa memory pool at pagsusumite ng mga ito, nang paisa-isa, sa pamamagitan ng isang function ng
pag-hash. Sa tuwing magsusumite kami ng isang piraso ng data sa pamamagitan ng isang function ng pag-hash, bubuo kami ng output na may nakatakdang laki na tinatawag na
hash. Sa konteksto ng pagmimina, ang hash ng bawat transaksyon ay binubuo ng isang string ng mga numero at titik na gumagana bilang identifier. Kinakatawan ng hash ng transaksyon ang lahat ng impormasyong nasa transaksyong iyon.
Maliban sa pag-hash at paglilista ng bawat transaksyon nang paisa-isa, nagdaragdag din ng custom na transaksyon ang minero, kung saan magpapadala siya sa sarili niya ng reward ng block. Tinutukoy ang transaksyong ito bilang transaksyon ng coinbase at ito ang gumagawa ng mga bagong coin. Kadalasan, ang transaksyon ng coinbase ang unang itinatala sa bagong block, pagkatapos ay ang lahat ng nakabinbing transaksyon na gusto niyang i-validate.
Hakbang 2 - Paggawa ng Merkle Tree
Pagkatapos ma-hash ang bawat transaksyon, inaayos ang mga hash sa isang bagay na tinatawag na
Merkle Tree. Binubuo ang Merkle Tree, na kilala rin bilang hash tree, sa pamamagitan ng pagpapares-pares ng mga transaksyon at pagkatapos ay pag-hash ng mga ito. Pagkatapos, ipagpapares-pares at iha-hash ulit ang mga bagong output ng pag-hash, at uulit-ulitin ang proseso hanggang sa makagawa ng isang hash. Tinatawag ding root hash (o Merkle root) ang huling hash na ito at sa pangkalahatan, ito ang hash na kumakatawan sa lahat ng dating hash na ginamit para buuin ito.
Hakbang 3 - Paghahanap ng valid na header ng block (block hash)
Gumagana ang
header ng block bilang identifier para sa bawat indibidwal na block, ibig sabihin, may natatanging hash ang bawat block. Kapag gumagawa ng bagong block, pinagsasama ng mga minero ang hash ng isang dating block at ang root hash ng kandidatong block nila para makabuo ng bagong block hash. Pero maliban sa dalawang elementong ito, kailangan din nilang magdagdag ng arbitrary na numero na tinatawag na
nonce.
Kaya naman, kapag sinusubukan niyang i-validate ang kanyang kandidatong block, kailangang pagsama-samahin ng isang minero ang root hash, ang hash ng dating block, at ang nonce at kailangan niyang isumite ang lahat ng ito sa pamamagitan ng isang function ng pag-hash. Ang layunin niya ay gumawa ng hash na itinuturing na valid.
Hindi mababago ang root hash at ang hash ng dating block, kaya kailangang baguhin ng mga minero ang value ng nonce nang ilang beses hanggang sa makahanap ng valid na hash.
Para maituring na valid, mas mababa dapat ang output (block hash) kaysa sa isang partikular na target na value, na tutukuyin ng protocol. Sa pagmimina ng Bitcoin, dapat magsimula ang block hash sa isang partikular na dami ng mga zero. Ito ang tinatawag natinghirap ng pagmimina.
Hakbang 4 - Pag-broadcast ng naminang block
Gaya ng kakakita lang natin, kailangang i-hash ng mga minero ang header ng block nang paulit-ulit, nang may magkakaibang value ng nonce. Uulit-ulitin nila ang trabahong ito hanggang sa makahanap sila ng valid na block hash. Pagkatapos, ibo-broadcast ng minero sa network ang nahanap niyang block. Titingnan ng lahat ng iba pang node kung valid ang block at ang hash nito, at kung oo, idaragdag ng mga ito ang bagong block sa kopya ng blockchain ng mga ito.
Sa puntong ito, magiging nakumpirmang block ang kandidatong block, at magpapatuloy ang lahat ng minero sa pagmina sa susunod. Idi-discard ng lahat ng minerong hindi nakahanap ng valid na hash sa tamang oras ang kanilang kandidatong block, at magsisimula ulit ang karera sa pagmimina.
Pag-adjust ng hirap ng pagmimina
Regular na ina-adjust ng protocol ang
hirap ng pagmimina, para matiyak na hindi magbabago ang rate ng paggawa ng mga bagong block. Ito ang dahilan kaya nagiging tuloy-tuloy at nahuhulaan ang pag-isyu ng mga bagong coin. Nag-a-adjust ang hirap ayon sa dami ng computational power (
rate ng pag-hash) na nakalaan sa network.
Dahil dito, sa tuwing may mga bagong minerong sumasali sa network at naragdagan ang kumpetisyon, hihirap ang pag-hash, kaya hindi mababawasan ang average na tagal ng block. Sa kabaliktaran, kung maraming minero ang magpapasyang umalis sa network, mababawasan ang hirap ng pag-hash, kaya hindi na masyadong mahirap magmina ng bagong block. Dahil sa mga pag-adjust na ito, hindi magbabago ang tagal ng block, anuman ang kabuuang power sa pag-hash ng network.
Paano kung sabay na mamina ang dalawang block?
Kung minsan, dalawang minero ang nagbo-broadcast ng valid na block nang sabay at nagkakaroon ang network ng dalawang magkakumpitensyang block. Pagkatapos, sisimulang minahin ng mga minero ang susunod na block batay sa block na una nilang natanggap. Dahil dito, (pansamantalang) mahahati ang network sa dalawang magkaibang bersyon ng blockchain.
Magpapatuloy ang kumpetisyon sa pagitan ng mga block na ito hanggang sa mamina ang susunod na block, bukod pa sa alinman sa dalawang magkakumpitensyang block. Kapag may bagong block na namina, alinmang block ang nauna rito, iyon ang ituturing na panalo. Ang maaabandonang block ay tinatawag na
orphan block o
stale block, kaya babalik ang lahat ng minero sa pagmimina ng chain ng nanalong block.
Ang Bitcoin ay ang pinakasikat at pinakakilalang halimbawa ng namiminang cryptocurrency, pero hindi lahat ng cryptocurrency ay namimina. Nakabatay ang pagmimina ng Bitcoin sa isang algorithm ng consensus na tinatawag na
Proof of Work (PoW).
Ang Proof of Work (PoW) ay ang orihinal na mekanismo ng consensus ng blockchain na ginawa ni
Satoshi Nakamoto. Ipinakilala ito sa whitepaper ng Bitcoin, noong 2008. Sa madaling salita, tinutukoy ng PoW kung paano nagkakaroon ng consensus ang isang network ng blockchain sa lahat ng distributed na kalahok nang walang third party na tagapamagitan. Ginagawa nito ito sa pamamagitan ng pangangailangan ng malaking computing power para mapigilan ang masasamang-loob.
Gaya ng nakita natin, vine-verify ng mga
minero ang mga transaksyon sa isang network ng PoW . Para manalo ng karapatang minahin ang susunod na block, nakikipagkumpitensya ang mga minero sa pamamagitan ng paglutas ng mga kumplikadong cryptographic puzzle gamit ang espesyal na hardware para sa pagmimina. Ang unang minerong makakahanap ng valid na solusyon ay makakapag-broadcast ng block niya ng mga transaksyon sa blockchain, at matatanggap niya ang
reward ng block.
Nag-iiba-iba ang dami ng crypto sa isang reward ng block sa iba't ibang blockchain. Halimbawa, sa blockchain ng Bitcoin, ang mga minero ay puwedeng makakuha ng 6.25 BTC na reward ng block mula Disyembre 2021. Nababawasan ng kalahati ang dami ng BTC sa isang reward ng block bawat 210,000 block (humigit-kumulang bawat apat na taon) dahil sa mekanismo ng halving nito.
Walang iisang paraan ng pagmimina ng mga cryptocurrency. Nagbabago ang equipment at proseso habang nagkakaroon ng mga bagong hardware at algorithm ng consensus. Kadalasan, gumagamit ang mga minero ng mga espesyal na computer unit para lutasin ang mga kumplikadong cryptographic equation. Tingnan natin kung paano gumagana ang ilan sa mga pinakakaraniwang paraan ng pagmimina.
Kasama sa pagmimina gamit ang
Central Processing Unit (CPU) ang paggamit sa CPU ng isang computer para isagawa ang mga function ng pag-hash na kinakailangan ng PoW. Noong bago pa lang ang Bitcoin, mababa ang gastos at ang hadlang para makapasok para sa pagmimina. Kaya ng regular na CPU ang hirap ng pagmimina, kaya kahit sino ay kayang sumubok na magmina ng BTC at iba pang cryptocurrency.
Gayunpaman, habang mas maraming tao ang nagsimulang magmina at tumaas ang hashrate ng network, humirap nang humirap ang mapagkakakitaang pagmimina. Bukod pa roon, dahil sa pagdami ng mga espesyal na hardware para sa pagmimina na may mas mataas na computational power, naging halos imposible na ang pagmimina gamit ang CPU. Sa kasalukuyan, hindi na magandang opsyon ang pagmimina gamit ang CPU, dahil espesyal na hardware na ang ginagamit ng lahat ng minero.
Idinisenyo ang mga Graphics Processing Unit (GPU) para sa pagproseso ng maraming iba't ibang application nang sabay. Bagama't karaniwang ginagamit ang mga ito para sa mga video game o pag-render ng graphics, magagamit din ang mga ito sa pagmimina.
Medyo mura ang mga GPU at mas flexible ang mga ito kaysa sa sikat na ASIC na hardware para sa pagmimina. Puwedeng minahin ang ilang altcoin gamit ang mga GPU, pero depende ang husay sa hirap ng pagmimina at algorithm.
Idinisenyo ang
Application-Specific Integrated Circuit (ASIC) para magkaroon ng isang partikular na silbi. Sa crypto, tumutukoy ito sa espesyal na hardware na binuo para sa pagmimina. Napakahusay ng pagmimina gamit ang ASIC pero mahal ito.
Kumpetisyon ang pagmimina. Para kumita sa pagmimina, kailangan mo ng hardware para sa pagmimina na makakasabay sa kumpetisyon. Dahil nasa pinakamakabagong bahagi ng teknolohiya sa pagmimina ang mga minerong gumagamit ng ASIC, mas mahal ang isang unit kaysa sa mga CPU o GPU. Gayundin, dahil sa tuloy-tuloy na pag-unlad ng teknolohiya ng ASIC, mabilis na nagiging hindi na mapagkakakitaan ang mga mas lumang modelo ng ASIC, ibig sabihin, madalas na kailangang palitan ang mga ito. Dahil dito, isa ang pagmimina gamit ang ASIC sa mga pinakamahal na paraan ng pagmimina, kahit hindi isama ang gastusin sa kuryente.
Dahil nagbibigay ng reward ng block sa unang matagumpay na minero, napakaliit ng probabilidad na mahanap ang tamang hash. Napakaliit ng tsansa ng mga minerong may maliit na porsyento ng power sa pagmimina na matuklasan ang susunod na block nang mag-isa. Nag-aalok ang mga
pool ng pagmimina ng solusyon sa problemang ito.
Ang mga pool ng pagmimina ay mga grupo ng mga minerong nagsasama-sama ng kanilang mga resource (hash power) para tumaas ang probabilidad na manalo ng mga reward ng block. Kapag matagumpay na nakahanap ng block ang pool, paghahati-hatian ng pool ang reward nang pantay-pantay sa lahat ng nasa pool, ayon sa dami ng trabahong iniambag.
Puwedeng makinabang ang mga indibidwal na minero sa mga pool ng pagmimina pagdating sa gastusin sa hardware at kuryente, pero dahil sa pamamayani ng mga ito sa pagmimina, nagkakaroon ng mga alalahaning may mangyaring
pag-atake ng 51% sa network.
Ang pagmimina ng cryptocurrency ay isang napakahalagang bahagi ng Bitcoin at iba pang blockchain ng PoW. Isa ito sa mga bagay na nagpapanatiling secure sa network at dahilan kaya tuloy-tuloy ang pag-isyu ng mga bagong coin. May mga partikular na benepisyo at problema sa pagmimina, kung saan ang pinakahalata ay ang mga potensyal na kikitain mo sa mga reward ng block. Gayunpaman, ang mga kita sa pagmimina ay puwedeng maapektuhan ng ilang salik, kasama na ang gastusin sa kuryente at mga market price. Walang garantiya na kikita ka, kaya bago ka sumuong sa pagmimina ng crypto, dapat kang mag-
DYOR at dapat mong suriin ang lahat ng potensyal na panganib.