Alam mo ba na ang blockchain ay binubuo ng maraming layer, tulad ng isang cheeseburger? Ang isang cheeseburger ay may patty, sauce, buns, cheese, at lettuce. Gayundin, ang blockchain ay may hardware, data, network, consensus, at application layers. Ang limang iba't ibang layers na ito ay bumubuo sa blockchain - at ating tuklasin ang bawat isa!
Ang unang layer ng blockchain ay tinatawag na hardware layer. Ito ay tumutukoy sa network ng mga computer, o nodes, na tumutulong sa pag-validate ng data at transaksyon sa blockchain.
Tradisyonal na kapag tayo'y nagsu-surf sa internet o gumagamit ng anumang online na aplikasyon, ang ating mga computer ay humihiling ng data mula sa isang central server, tulad ng teksto, mga larawan, at mga bidyo. Ito ang tinatawag nating client-server architecture.
Iba naman ang kaso sa blockchain, kung saan ginagamit nito ang peer-to-peer network ng mga nodes na kumikilos bilang clients at servers, na bumubuo ng isang distributed database. Ang mga nodes na ito ang bumubuo sa hardware layer.
Ang isang node ay isang "central o connecting point at kung saan nagtatagpo ang mga daan." Ang isang analohiya sa tunay na buhay ay maaaring isang lugar kung saan nagkakasundo at nagpapalitan ng impormasyon ang maraming tao, tulad ng isang mall o opisina.
Sa blockchain, maaaring maging node ang anumang device na kasali sa blockchain network, mula sa iyong computer hanggang sa iyong mobile phone. Ang mga nodes na ito ay tumatanggap ng data, ipinapasa sa iba pang nodes, at nagtutulungan sa pag-verify ng mga transaksyon sa network. Ang mga nodes na ito ay nagiging hardware/infrastruktura na sumusuporta sa nakapaloob na blockchain.
Susunod, tingnan natin ang Data Layer - kung saan inaayos ang data.
Ang data layer ay maaaring isipin bilang isang mahabang listahan ng encrypted at magkakaugnay na mga block - parang tren. Ang mga block na ito ay naglalaman ng data na sinisiguro ng mga nodes sa hardware layer.
Sa tuwing may bagong data na idinadagdag sa blockchain, ito ay sa anyo ng mga blocks, na idinudugtong sa itaas ng naunang block. Ito ay paulit-ulit na nangyayari, na patuloy na pinalalaki ang blockchain. Ito rin ay nangangahulugang ang bawat block na umiiral ay may koneksyon sa anumang ibang block - astig, di ba?
Fun Fact: Ang tanging block na hindi konektado sa iba ay ang genesis block, ang pinaka-unang block sa network.
Isa pang mahalagang tungkulin ng Data Layer ay ang cryptography na sangkot sa mga blocks. Ang mga transaksyon ay digital na pinipirmahan gamit ang asymmetric cryptography upang siguraduhin ang seguridad at integridad ng data.
Ang asymmetric cryptography ay nakakamit gamit ang dalawang keys: ang public key at ang private key. Ang dalawang ito ay responsableng nagpoprotekta sa data na nakaimbak sa mga blocks. Sa simpleng salita, ang private key ay ginagamit upang pirmahan ang mga transaksyon, samantalang ang public key ay ginagamit upang beripikahin ang mga transaksyon.
Tingnan ang aming module tungkol sa digital signatures upang mas maunawaan ng detalyado ang asymmetric cryptography: https://www.bitskwela.com/en/digital-signature
Ang network layer ay ang layer na nagpapatunay na ang mga nodes sa hardware layer ay makakapag-communicate sa isa't isa. Ang layer na ito, na tinatawag din na P2P layer, ang nangangasiwa ng pagtukoy ng node, pagbuo ng block, pagdagdag ng block, at nagmamaneho ng pag-transmit ng peer-to-peer transactions.
Sa layer na ito, mananatiling buo ang integridad ng blockchain.
Ang consensus layer ay naglalaman ng mga patakaran sa protocol na sinusunod ng mga nodes upang i-validate ang mga transaksyon at lumikha ng mga block.
Sa isang laro ng basketball, tinitiyak ng isang referee na sinusunod ng mga manlalaro ang mga alituntunin ng laro sa buong panahon. Ang layer ng consensus ay maaaring ihambing sa isang referee, ngunit para sa blockchain. Sa buong araw, dapat sundin ng mga nodes ang mga alituntunin ng layer ng consensus upang makilahok sa network ng blockchain.
Dahil sa lahat ng ito, kadalasang itinuturing na pinakamahalagang layer ang layer ng consensus sa limang ito.
Ang layer ng application ay nagbibigay-daan sa mga tao na lumikha ng mga programa at aplikasyon batay sa blockchain tulad ng wallets, exchanges, marketplaces, at mga website. Ang layer ng application ay maaaring hatiin sa dalawa: application layer at execution layer.
Application layer
Binubuo ng application layer ang mga software tulad ng APIs, frameworks, at user interfaces. Pinapayagan nito ang mga developer na kumonekta ang kanilang mga aplikasyon sa blockchain.
Execution layer
Sa kabilang banda, binubuo ng execution layer ang smart contracts, chain code, at underlying protocols. Pinapahintulutan nito ang pagpapatupad ng mga tagubilin at utos na ibinibigay ng application layer.
Ang application layer ng blockchain ay nagbibigay-daan sa paglikha ng walang katapusang aplikasyon, tulad ng mga exchanges na walang limitasyon sa oras ang trading hours, wallets na maaaring magpadala ng crypto sa ano mang sulok ng buong mundo, o mga marketplaces na nag-aalok ng iba't ibang uri ng NFTs - lahat ay pinapatakbo ng blockchain sa ilalim.
Hardware layer - Binubuo ito ng mga nodes na nakikilahok sa pagpapadali ng mga transaksyon.
Data layer - Ito ang lugar kung saan inaayos ang data ay binubuo bilang mga blocks.
Network layer - Pinapayagan nito ang mga nodes na makipag-ugnayan sa isa't isa sa pamamagitan ng inter-node communication.
Consensus layer - Sa layer na ito ang mga nodes ay kailangang makarating sa isang kasunduan para sa bawat bisa ng transaksyon.
Application layer - Ang layer na ito ay nagho-host ng mga aplikasyon at program sa ibabaw ng blockchain at pinapayagan itong magkaroon ng iba't ibang uri ng utility.
Kung titignan, bawat layer ay may malaking bahagi sa kabuuang pag-andar ng blockchain. Kung wala ang isa sa kanila, ang blockchain ay hindi magiging kasing-ligtas, kasing-lawak, at kasing-decentralized.
Tingnan ang mga sumusunod na modules para mas maging malalim pa ang kaalaman sa bawat isa sa limang layers!