Paano Gumagana ang Blockchain?
Paano Gumagana ang Blockchain?
HomeMga Artikulo
Paano Gumagana ang Blockchain?

Paano Gumagana ang Blockchain?

Intermediya
Na-publish Dec 9, 2018Na-update Sep 23, 2022
5m

Ano ang blockchain?

Sa madaling salita, ang blockchain ay isang listahan ng mga record ng data na nagsisilbing desentralisadong digital na ledger. Nakaayos sa mga block ang data, na pinagsusunod-sunod at sine-secure sa pamamagitan ng cryptography
Ang pinakaunang modelo ng blockchain ay ginawa noong unang bahagi ng 1990s noong gumamit ang computer scientist na si Stuart Haber at physicist na si W. Scott Stornetta ng mga cryptographic na technique sa isang chain ng mga block bilang paraan para mag-secure ng mga digital na dokumento mula sa pag-tamper ng data. 
Talagang naging inspirasyon ang gawa nina Haber at Stornetta sa gawa ng marami pang ibang computer scientist at mahihilig sa cryptography - na sa paglaon ay humantong sa pagkakagawa sa Bitcoin bilang unang desentralisadong electronic cash system (o sa madaling salita, ang unang cryptocurrency).

Bagama't mas luma ang teknolohiya ng blockchain kaysa sa mga cryptocurrency, nagsimula lang na makilala ang potensyal nito pagkatapos magawa ang Bitcoin noong 2008. Simula noon, tuloy-tuloy nang lumalim ang interes sa teknolohiya ng blockchain at mas malawak nang nakikilala ang mga cryptocurrency.

Kadalasang ginagamit ang teknolohiya ng blockchain para mag-record ng mga transaksyon sa cryptocurrency, pero akma rin ito sa marami pang ibang uri ng digital na data at puwede itong mailapat sa iba't ibang layunun. Ang pinakaluma, pinakaligtas, at pinakamalawak na blockchain network ay ang sa Bitcoin, na idinisenyo nang may maingat at balanseng kumbinasyon ng cryptography at game theory.


Paano gumagana ang blockchain?

Sa konteksto ng mga cryptocurrency, binubuo ang blockchain ng stable na chain ng mga block, kung saan ang bawat isa ay nagso-store ng listahan ng mga dati nang nakumpirmang transaksyon.  Dahil mine-maintain ang blockchain network ng iba't ibang computer na nakakalat sa buong mundo, gumagana ito bilang isang desentralisadong database (o ledger). Ibig sabihin, ang bawat kalahok (node) ay may hawak na kopya ng data ng blockchain, at nag-uusap-usap ang mga ito para matiyak na nasa iisang page (o block) sila.
Ibig sabihin, nagaganap ang mga transaksyon sa blockchain sa loob ng isang peer-to-peer na pandaigdigang network, kaya naman ito ang dahilan kung bakit isang desentralisadong digital currency na walang border at malaya sa censorship ang Bitcoin. Bukod pa rito, ang karamihan sa mga blockchain system ay itinuturing na trustless (hindi nangangailangan ng tiwala) dahil hindi ito nangangailangan ng anumang uri ng tiwala. Walang iisang awtoridad na kumokontrol sa Bitcoin.
Ang isang pangunahing bahagi ng halos lahat ng blockchain ay ang proseso ng pagmimina, na nakadepende sa pag-hash ng mga algorithm. Gumagamit ang Bitcoin ng SHA-256 algorithm (Secure hash algorithm 256 bits). Kumukuha ito ng input na may anumang haba, at bumubuo ito ng output na palaging pareho ang haba. Ang mabubuong output ay tinatawag na "hash," at sa pagkakataong ito, palagi itong may 64 na character (256bits).

Ibig sabihin, ang parehong input ay magreresulta sa parehong output, ilang beses man ulitin ang proseso. Pero kung may gagawing maliit na pagbabago sa input, ganap na mababago ang output. Dahil dito, deterministic ang mga hash function, at sa mundo ng cryptocurrency, ang karamihan sa mga ito ay idinisenyo bilang isang one-way na hash function.

Dahil isa itong one-way na function, halos imposibleng makalkula kung ano ang input mula sa output. Puwede lang hulaan kung ano ang naging input, pero napakababa ng tsansang mahulaan ito nang tama. Isa ito sa mga dahilan kung bakit secure ang blockchain ng Bitcoin.

Ngayong alam na natin kung ano ang ginagawa ng algorithm, makikita natin kung paano gumagana ang blockchain gamit ang isang simpleng halimbawa ng transaksyon.

Isipin natin sina Alice at Bob at ang balanse nila sa Bitcoin. Sabihin nating may utang si Alice kay Bob na 2 Bitcoin.

Para maipadala ni Alice kay Bob ang 2 Bitcoin na iyon, magbo-broadcast si Alice ng mensahe tungkol sa transaksyong gusto niyang gawin sa lahat ng minero sa network.
Sa naturang transaksyon, ibibigay ni Alice sa mga minero ang address ni Bob at ang halaga ng mga Bitcoin na gusto niyang ipadala, kasama ang isang digital na pirma at kanyang pampublikong key. Ang pirma ay gawa sa pribadong key ni Alice at mava-validate ng mga minero na si Alice nga talaga ang may-ari sa mga coin na iyon.

Kapag sigurado na ang mga minero na valid ang transaksyon, mailalagay na nila ito sa isang block kasama ang marami pang ibang transaksyon at susubukan nilang minahin ang block. Isasagawa ito sa pamamagitan ng pagsasailalim ng block sa SHA-256 algorithm. Ang output ay kailangang magsimula sa isang partikular na dami ng mga 0 para makonsiderang valid. Nakadepende ang dami ng mga 0 sa tinatawag na "hirap," na nagbabago depende sa lakas ng pag-compute na nasa network.

Para makagawa ng output na hash na naglalaman ng gustong dami ng 0 sa simula, nagdaragdag ang mga minero ng tinatawag na "nonce" sa block bago ito ipailalim sa algorithm. Dahil ang output ay ganap na nababago ng isang maliit na pagbabago, susubok ang mga minero ng mga random na nonce hanggang sa makahanap sila ng valid na hash.

Kapag namina na ang block, ibo-broadcast ng minero ang bagong minang block na iyon sa lahat ng iba pang minero. Pagkatapos, titingnan nila kung valid ang block para maidagdag nila ito sa kanilang kopya ng blockchain, at kumpleto na ang transaksyon. Pero sa block, kailangan ding isama ng mga minero ang output hash mula sa naunang block para maging magkakadugtong ang lahat ng block, kaya blockchain ang tawag dito. Mahalagang bahagi ito dahil sa paraan kung paano nagkakaroon ng pagtitiwala sa system.

Ang bawat minero ay may sariling kopya ng blockchain sa kanilang computer, at nagtitiwala ang lahat sa kung aling blockchain ang may pinakamaraming isinagawang pag-compute, o ang pinakamahabang blockchain. Kung babaguhin ng minero ang isang transaksyon sa naunang block, mababago ang output hash para sa block na iyon na magiging dahilan para mabago rin ang lahat ng hash pagkatapos nito dahil magkakaugnay ang mga hash. Kailangang ulitin ng minero ang lahat ng trabaho para matanggap ng iba na tama ang kanyang blockchain. Kaya kung gustong mandaya ng minero, mangangailangan siya ng mahigit 50% ng lakas ng pag-compute ng network, na talagang imposible. Ang mga ganitong pag-atake sa network ay tinatawag na 51% pag-atake.
Ang modelo para makagawa ang mga computer ng mga ganitong block ay tinatawag na Proof-of-Work (PoW). Mayroon ding iba pang modelo gaya ng Proof-of-Stake (PoS) na hindi nangangailangan ng ganoong kataas na lakas ng pag-compute at idinisenyo para kumonsumo ng mas kaunting kuryente habang nakakatugon pa rin sa mas maraming user.