Panimula
Proof of Work ang isa sa unang lumabas na algorithm ng consensus, at hanggang ngayon, nananatili itong pinakadominante. Ipinakilala ito ni Satoshi Nakamoto sa 2008 Bitcoin white paper, pero matagal nang naisip ang mismong teknolohiya.
Ang HashCash ng Adam Back ay isang naunang halimbawa ng isang Proof of Work na algorithm noong mga araw bago ang cryptocurrency. Sa pamamagitan ng paghiling sa mga nagpapadala na magsagawa ng kaunting computing bago magpadala ng isang email, puwedeng mabawasan ng mga tatanggap ang spam. Ang pagkalkulang ito ay halos walang gastos sa isang lehitimong nagpapadala, pero mabilis na magpapatong-patong para sa isang taong nagpapadala ng mga email nang maramihan.
Ano ang double-spend?
Nangyayari ang double spend kapag ginastos ang parehong mga pondo nang higit sa isang beses. Ang termino ay halos eksklusibong ginagamit sa konteksto ng digital na pera – dahil kung tutuusin, mahihirapan kang gastusin ang parehong aktwal na pera nang dalawang beses. Kapag nagbayad ka para sa isang kape ngayong araw, iaabot mo ang pera sa isang kahera at malamang ay ila-lock niya ito sa register. Hindi ka na puwedeng pumunta sa kabilang coffee shop at magbayad para sa isa pang kape gamit ang parehong pera.
Sa mga digital cash scheme, mayroong posibilidad na magawa mo ito. Tiyak na nakagawa ka na noon ng duplicate na file sa computer – kokopyahin mo na lang ito at ipe-paste. Puwede mong i-email ang parehong file sa sampu, dalawampu, limampung tao.
Dahil ang digital na pera ay data lang, kailangan mong pigilan ang mga tao sa pagkopya at paggastos sa parehong mga unit sa iba't ibang lugar. Kung hindi, hindi magtatagal at babagsak ang iyong currency.
Bakit kinakailangan ang Proof of Work?
Ngayon, mayroon kaming paraan para subaybayan ang mga unit. Kung susubukan ni Bob na gumawa ng isa pang transaksyon gamit ang parehong mga yunit na kapapadala lang niya kay Carol, malalaman agad ito ng lahat. Hindi papayagan ng grupo na idagdag ang transaksyon sa notepad.
Ngayon, posible itong gumana sa isang maliit na grupo. Kilala ng bawat isa ang isa't isa, kaya malamang na magkasundo sila kung sino sa mga magkakaibigan ang magdadagdag ng mga transaksyon sa notepad. Pero paano kung gusto natin ng isang grupong may 10,000 kalahok? Hindi mapapalawak nang maigi ang paggamit ng notepad, dahil walang magtitiwala sa isang estranghero na pamahalaan iyon.
Dito na papasok ang Proof of Work. Tinitiyak nito na hindi gumagastos ang mga user ng pera na wala silang karapatang gastusin. Sa pamamagitan ng kumbinasyon ng game theory at cryptography, nabibigyang-daan ng PoW na algorithm ang sinuman na i-update ang blockchain ayon sa mga panuntunan ng system.
Paano gumagana ang PoW?
Ang notepad natin kanina ay ang blockchain. Pero hindi tayo naglalagay ng mga transaksyon nang paisa-isa – sa halip, pinagsasama-sama natin ang mga ito sa mga block. Iaanunsyo natin ang mga transaksyon sa network, pagkatapos ay ilalagay ito ng mga user na gumawa ng block sa isang kandidatong block. Ikokonsidera lang na valid ang mga transaksyon kapag kumpirmadong block na ang kanilang kandidatong block, ibig sabihin, naidagdag na ito sa blockchain.
Halos imposibleng mag-reverse ng isang block hash para makuha ang input data. Gayunpaman, kung may alam na input, wala masyadong halaga para sa iyo na kumpirmahing tama ang hash. Kailangan mo lang isumite ang input sa pamamagitan ng function at suriin kung ang output ay pareho.
Sa Proof of Work, dapat kang magbigay ng data na ang hash ay tumutugma sa ilang kondisyon. Pero hindi mo alam kung paano makarating doon. Ang opsyon mo lang ay ipasa ang iyong data sa pamamagitan ng isang hash function at tingnan kung tumutugma ito sa mga kondisyon. Kung hindi, kakailanganin mong baguhin ang iyong data nang kaunti para makakuha ng ibang hash. Kapag binago mo ang kahit isang character lang sa iyong data, magkakaroon ng ibang-ibang resulta, kaya walang paraan para mahulaan kung ano ang magiging output.
Sa kabuuan, ang pagmimina ay ang proseso ng pangangalap ng data ng blockchain at pag-hash nito kasama ang isang nonce hanggang sa makahanap ka ng isang partikular na hash. Kung makahahanap ka ng isang hash na nakakatugon sa mga kondisyon na itinakda ng protocol, magkakaroon ka ng karapatang i-broadcast ang bagong block sa network. Sa puntong ito, ia-update ng ibang mga kalahok ng network ang kanilang mga blockchain para isama ang bagong block.
Para sa mga pangunahing cryptocurrency sa kasalukuyan, talagang napakahirap maabot ang mga kondisyon. Kung mas mataas ang hash rate sa network, mas mahirap humanap ng valid na hash. Ginagawa ito para hindi mahanap agad-agad ang mga block.
Gaya ng naiisip mo, posibleng makonsumo sa computer mo ang pagtatangkang manghula ng napakaraming hash. Gumagasta ka ng mga computational cycle at kuryente. Pero bibigyan ka ng protocol ng cryptocurrency bilang reward kung may mahahanap kang valid na hash.
Balikan natin kung ano na ang alam natin:
- Mahal para sa iyo ang mag-mina.
- Bibigyan ka ng reward kung makakagawa ka ng isang valid na block.
- Kapag may alam na input, madaling masuri ng isang user ang hash nito – mave-verify ng mga user na hindi nagmimina na valid ang isang block nang hindi gumagamit ng maraming computational power.
Sa ngayon, maayos ito. Pero paano kung susubukan mong mandaya? Sino ang makakapigil sa iyong maglagay ng ilang mapanlinlang na transaksyon sa block at gumawa ng isang valid na hash?
Anumang block na may kasamang invalid na transaksyon ay awtomatikong tatanggihan ng network. Magiging mahal para sa iyo na kahit magtangka lang na manloko. Sasayangin mo ang iyong sariling mga mapagkukunan nang walang anumang reward.
Gustong magsimula sa cryptocurrency? Bumili ng Bitcoin sa Binance!
Proof of Work vs. Proof of Stake
Bagama't nasabi ito, wala ito sa track record ng PoW. Bagama't puwedeng itong ituring na maaksaya, ang pagmimina lang ang algorithm ng consensus na napatunayan na nang malawakan. Sa loob lang ng higit sa isang dekada, nakakuha na ito ng trilyong dolyar na halaga ng mga transaksyon. Para masabi nang may kasiguraduhan kung puwedeng matapatan ng PoS ang seguridad nito, kailangang ma-test nang maayos ang pag-stake.
Mga pangwakas na pananaw
Ang Proof of Work ay ang orihinal na solusyon sa problema ng double-spend at napatunayan nang maaasahan at secure ito. Pinatunayan ng Bitcoin na hindi natin kailangan ng mga sentralisadong entity para maiwasang magastos ang parehong mga pondo nang dalawang beses. Sa matalinong paggamit ng cryptography, mga hash function, at game theory, mapagkakasunduan ng mga kasali sa isang desentralisadong environment ang estado ng isang pinansyal na database.