Ano ang Kahulugan ng Katunayan ng Trabaho?
Ang patunay ng trabaho ay naglalarawan ng isang sistema na nangangailangan ng hindi hindi gaanong kahalagahan ngunit magagawa na pagsisikap upang masugpo ang walang kwentang o nakakahamak na paggamit ng kapangyarihan ng computing, tulad ng pagpapadala ng mga email sa spam o paglulunsad ng pagtanggi sa mga pag-atake sa serbisyo. Ang konsepto ay inangkop sa pera ni Hal Finney noong 2004 sa pamamagitan ng ideya ng "reusable proof of work." Kasunod ng pagpapakilala nito noong 2009, ang bitcoin ay naging unang malawak na aplikasyon ng ideya ni Finney (si Finney din ang tumatanggap ng unang transaksiyon sa bitcoin). Ang patunay ng trabaho ay bumubuo ng batayan ng maraming iba pang mga cryptocurrencies din.
Ipinapaliwanag ang Katunayan ng Trabaho
Ang paliwanag na ito ay tututok sa patunay ng trabaho dahil gumagana ito sa network ng bitcoin. Ang Bitcoin ay isang digital na pera na sinusuportahan ng isang uri ng namamahagi na ledger na kilala bilang isang "blockchain." Ang ledger na ito ay naglalaman ng isang talaan ng lahat ng mga transaksyon sa bitcoin, na nakaayos sa sunud-sunod na "mga bloke, " upang walang gumagamit na pinapayagan na gumastos ng alinman sa kanilang mga hawak. Upang maiwasan ang pag-ikot, ang ledger ay pampubliko, o "ipinamamahagi"; isang binagong bersyon ay mabilis na tatanggihan ng iba pang mga gumagamit.
Ang paraan na nakita ng mga gumagamit ang pag-uugali sa pagsasanay ay sa pamamagitan ng hashes, mahahabang mga string ng mga numero na nagsisilbing patunay ng trabaho. Maglagay ng isang naibigay na hanay ng data sa pamamagitan ng isang function na hash (gumagamit ang bitcoin ng SHA-256), at makakagawa lamang ito ng isang hash. Dahil sa "avalanche effect, " gayunpaman, kahit na isang maliit na pagbabago sa anumang bahagi ng orihinal na data ay magreresulta sa isang ganap na hindi nakikilalang hash. Anuman ang laki ng orihinal na hanay ng data, ang hash na nabuo ng isang naibigay na function ay magiging kaparehong haba. Ang hash ay isang one-way function: hindi ito magamit upang makuha ang orihinal na data, upang suriin lamang na ang data na nabuo ng hash ay tumutugma sa orihinal na data.
Ang pagbuo ng anumang hash para sa isang hanay ng mga transaksyon sa bitcoin ay magiging mahalaga para sa isang modernong computer, kaya upang gawing "trabaho, " ang network ng bitcoin ay nagtatakda ng isang tiyak na antas ng "kahirapan." Ang setting na ito ay nababagay upang ang isang bagong bloke ay "minahan" - idinagdag sa blockchain sa pamamagitan ng pagbuo ng isang wastong hash - humigit-kumulang sa bawat 10 minuto. Ang paghihirap sa pagtatakda ay nakamit sa pamamagitan ng pagtaguyod ng isang "target" para sa hash: mas mababa ang target, mas maliit ang hanay ng mga wastong hashes, at ang mahirap ay upang makabuo ng isa. Sa pagsasagawa, nangangahulugan ito ng isang hash na nagsisimula sa isang mahabang string ng mga zero: ang hash para sa block # 429818, halimbawa, ay 000000000000000004dd3426129639082239efd583b5273b1bd75e8d78ff2e8d. Ang block na iyon ay naglalaman ng 2, 012 na mga transaksyon na kinasasangkutan ng higit sa 1, 000 bitcoin, pati na rin ang header ng nakaraang block. Kung binago ng isang gumagamit ang isang halaga ng transaksyon sa pamamagitan ng 0.0001 bitcoin, ang resulta ng hash ay hindi nakikilala, at tatanggihan ng network ang pandaraya.
Dahil ang isang naibigay na hanay ng data ay maaari lamang makabuo ng isang hash, paano siguraduhin ng mga minero na lumikha sila ng isang hash sa ilalim ng target? Binago nila ang input sa pamamagitan ng pagdaragdag ng isang integer, na tinatawag na isang nonce ("numero na ginamit nang isang beses"). Kapag natagpuan ang isang wastong hash, na-broadcast ito sa network, at ang block ay idinagdag sa blockchain.
Ang pagmimina ay isang mapagkumpitensya na proseso, ngunit ito ay higit pa sa isang loterya kaysa sa isang lahi. Karaniwan, ang isang tao ay bubuo ng katanggap-tanggap na patunay ng trabaho tuwing sampung minuto, ngunit kung sino ito ay hulaan ng sinuman. Ang mga minero ay magkasama upang madagdagan ang kanilang mga pagkakataon sa mga bloke ng pagmimina, na bumubuo ng mga bayarin sa transaksyon at, para sa isang limitadong oras, isang gantimpala ng mga bagong nilikha na bitcoins.
Pinatunayan ng pagpapatunay ng trabaho na mahirap baguhin ang anumang aspeto ng blockchain, dahil ang nasabing pagbabago ay mangangailangan ng muling pagmimina sa lahat ng kasunod na mga bloke. Nahihirapan din ito para sa isang gumagamit o pool ng mga gumagamit na monopolize ang kapangyarihan ng computing ng network, dahil ang makinarya at lakas na kinakailangan upang makumpleto ang mga function na hash ay mahal.
