Share this article

Blockchain, Ano Ka? Pagtukoy sa isang Buzzword sa Industriya

Si Dave Hudson, may-akda ng Hashingit.com blog, LOOKS sa puting papel ni Satoshi upang matuklasan kung ano ang blockchain, at kung ano ito...

Habang papalapit tayo sa 2016 ay tila walang katapusang mga talakayan tungkol sa 'blockchain'. Ito ay isang termino na mas madalas na binabanggit kahit sa mainstream na pamamahayag, habang sa espasyo ng FinTech lamang, mayroong isang patay na mga magiging supplier at magiging mga user na nagsasabing ang 'blockchain' ay magbabago ng anumang bilang ng mga aplikasyon.

Itong pangkaraniwan na ngayong paggamit ay nagmumungkahi na dapat itong isang bagay na tiyak na tinukoy at naiintindihan nang mabuti, ngunit ito ay tila higit na isang bagay ng mantra kaysa sa pag-unawa.

Story continues
Don't miss another story.Subscribe to the Crypto Long & Short Newsletter today. See all newsletters

Ang mga echo chamber ng Internet ay umalingawngaw sa maraming mga opinyon, ngunit ang mga pagtatangka na makahanap ng isang tiyak na kahulugan ay tila nakakahanap ng isang nakababahalang kawalan ng kasunduan. Upang maging higit pa sa marketing hyperbole, kailangan talaga namin ang mga sagot sa ilang mga katanungan.

Ano ito? Ano T ? Ano kaya ito? Maaari ba itong maging isang bagay na magpapahintulot sa atin na bumuo ng mga bago at matibay na sistema? Sa madaling salita, ano ang kakanyahan ng blockchain?

Ang Satoshi puting papel

Halos bawat talakayan ng blockchain ay nagsisimula sa Satoshi puting papel, ngunit ang mismong pundasyong ito ang nag-uumpisa sa atin sa landas patungo sa kalituhan. Ni ang mga terminong 'blockchain' o 'block chain' ay hindi lumalabas doon; mayroong 67 na paggamit ng 'block' at 27 ng 'chain', ngunit zero ng 'block chain' o 'blockchain'. Sa kabila nito, tingnan natin kung saan tayo dinadala ng pinagmulang ito.

Ang puting papel ay maikli; siyam na pahina lang ang haba nito. Ang unang pagbanggit ng 'block' at 'chain' ay nagsisimula sa ibaba ng pahina 2, seksyon 3, kung saan mayroong talakayan ng isang pangunahing timestamp server. Bago ito ang puting papel ay naglalarawan ng isang serye ng mga layunin sa disenyo na nauugnay sa disenyo ng Bitcoin , tulad ng kakayahang payagan ang dalawang partido na makipagtransaksyon nang hindi kinakailangang magtiwala sa isang ikatlong partido.

Ang pahayag ng mga layunin sa disenyo ay pangunahing mahalaga. Nagtakda sila ng eksena para sa isang pagpapatupad upang matugunan ang mga layuning iyon kung saan ang mga katangian ay naka-layer sa isa't isa, ngunit ito ay nagbibigay-kaalaman upang tingnan kung ano ang ginagawa ng bawat bagong layer.

Sa ating paghahanap para sa likas na katangian ng isang blockchain kailangan nating maging maingat sa paghahanap ng mga bagay na mga katangian nito, sa halip na mga katangian ng unang pagpapatupad na ito.

Mga transaksyon

Ang Seksyon 1 ng puting papel ay isang panimula at kasama ng seksyon 2 na nakikita natin ang anumang bagay na talagang mahalaga. Ang Seksyon 2 ay nagtatakda ng eksena para sa isang digital na barya, ngunit inilarawan ito bilang isang hanay ng mga transaksyon kung saan ang 'coin' ay itinalaga sa mga bagong may-ari. Ang barya ay talagang isang metapora para sa kasaysayan ng transaksyon ng mga naka-link na transaksyon.

Kapansin-pansin, inilalarawan din ng seksyon 2 kung paano T talaga kailangang gawin ito ng isang sentralisadong sistema.

Mga bloke at tanikala

Sa seksyong 3 nakikita natin ang kakanyahan ng pattern ng disenyo na maaaring pinakamahusay na naglalarawan sa batayan ng isang blockchain. Ibinibigay ito bilang isang bagay na binuo mula sa isang serye ng mga incremental na bloke ng data, na ang bawat isa ay maaaring matukoy ng isang cryptographic hash sa mga nilalaman nito. Bilang karagdagan, isinasama ng bawat bloke ang cryptographic hash ng hinalinhan nitong bloke upang matiyak ang pagbuo ng isang chain.

Ang mga block hashes ay na-publish bilang isang anyo ng malawakang nasaksihang ebidensya na nagpapakita ng pagkakaroon ng parehong block data at ang hinalinhan na hash. Ang pagbabago sa alinman sa hinalinhan o sa iba pang data sa loob ng block ay magreresulta sa ibang hash signature para sa block na hindi tumutugma sa malawakang nasaksihang view.

Ang mga katangiang ito ay lahat ay pangunahing, at kung wala ang mga ito ay hindi tayo makakagawa ng anumang bagay na kawili-wili. Ang parehong kawili-wili bagaman ay kung ano ang hindi nakasaad bilang kinakailangan sa puntong ito. Walang pagbanggit ng mga barya, walang pagbanggit ng mga peer-to-peer network, walang pagbanggit ng pagmimina, ETC. Sa halip, ang mungkahi ay sapat na ang pag-publish ng mga hash sa anumang malawak na ipinakalat na anyo, na ang dalawang halimbawa ay ibinigay bilang publikasyon sa isang pahayagan o publikasyon sa pamamagitan ng Usenet.

Habang nakikita natin ang ilang tahasang katangian, humahantong ito sa ilang tahasang katangian:

Ang paglalathala ng mga hash ay walang kabuluhan maliban kung ang parehong mga hash ay maaaring independiyenteng muling kalkulahin ng isang panlabas na tagamasid na binibigyan lamang ng data mula sa mga bloke sa chain. Ito ang katangiang ito na nagbibigay-daan sa mga nagmamasid na huwag magtiwala sa nagmula ng kadena ng mga bloke; sa halip ay nagagawa nilang ihambing ang mga makasaysayang hash para sa kanilang sarili.

Ang pag-recompute ng mga hash ay nangangailangan na ang algorithm kung saan ginawa ang mga bloke ay deterministic at mahusay na tinukoy. Kung wala ang mga ito, hindi mako-compute ng aming external observer ang mga hash.

Paganahin ang mga pagpapatakbo ng peer-to-peer

Ang susunod na seksyon, 4, ng puting papel ay nagsasalita tungkol sa patunay-ng-trabaho. Ang unang linya ay kawili-wili: "Upang ipatupad ang isang distributed timestamp server sa isang peer-to-peer (P2P) na batayan, kakailanganin naming gumamit ng proof-of-work system na katulad ng Adam Back's Hashcash". Ang proof-of-work ay hindi kinakailangan upang bumuo ng isang blockchain, para lamang paganahin ang peer-to-peer na pagpapatupad ng timestamp server.

Ang kasunod na mga disenyo ng Cryptocurrency ay nagpakita na may mga potensyal na iba pang mga diskarte na maaari ring gawin dito (hal: mga anyo ng proof-of-stake, o hybrids ng pareho), ngunit kung masaya tayo sa isang client-server approach, wala sa mga ito ang talagang kinakailangan.

Hindi ito nangangahulugan na ang proof-of-work ay maaaring walang ibang gamit na may disenyong blockchain, ngunit walang mukhang mahalaga sa aming paghahanap.

Network at higit pa

Inilalarawan ng Seksyon 5 ang mga katangian ng pagpapatupad ng network ng Bitcoin . Wala dito ang tahasang nagpapalawak ng konsepto ng kung ano ang isang blockchain, o maaaring kailanganin. Sa katunayan, alinman sa mga seksyon 6, 7, 8, 9, 10, 11 o 12 (ang huling seksyon) ay hindi nagpapatuloy na tahasang nag-aalok ng anumang mga bagong ideya tungkol sa kung ano ang maaaring maging isang blockchain.

Mga sagot sa aming mga katanungan

Kung ang Satoshi white paper ay ang pinagmulan ng disenyo ng blockchain, naiwan tayo sa isang medyo manipis na kahulugan, ngunit marahil iyon ang pinaka nakakapagpapaliwanag na aspeto. Ito ay napakalinaw tungkol sa mga partikular na pagpipilian sa disenyo at ang kanilang layunin, na may posibilidad na humantong sa isang pagsasakatuparan na marami sa mga claim tungkol sa 'blockchains' ay maaaring aktwal na isang bagay ng pagpapatupad sa halip na arkitektura.

Magtanong tayo ng ilang partikular na tanong!

Dapat bang may mga barya ang isang blockchain?

Mayroong isang kawili-wiling talakayan sa puting papel tungkol sa pangangailangang magbigay ng mga insentibo sa mga nagbibigay ng seguridad sa P2P network upang manatiling tapat at bilang isang paraan upang maipasok ang 'mga barya' sa system, ngunit ang talakayan ay malinaw na nasa konteksto ng P2P network. Ang konsepto ng mga barya mismo ay nabanggit bilang hindi kailangan sa isang pinagkakatiwalaang 'mint'.

Ang isang pinagkakatiwalaang mint ay hindi isang bagay na kanais-nais sa isang Cryptocurrency, ngunit tila walang pangangailangan para sa mga barya kung gusto naming bumuo ng isang chain ng cryptographically-linked blocks. Mayroong isang kawili-wiling tanong na itatanong tungkol sa pagtitiwala, ngunit babalikan natin iyon mamaya.

Dapat bang magpatupad ng mga smart contract ang isang blockchain?

Mula sa pananaw ng puting papel na ito ay tila hindi malamang. Ang salitang 'kontrata' ay hindi lumilitaw kahit saan.

Maaari bang paganahin ng isang blockchain ang mga matalinong kontrata? Oo, siyempre maaari, ngunit maaari rin itong paganahin ang maraming iba pang mga bagay.

Dapat bang programmable ang isang blockchain?

Muli ang sagot ay tila hindi. Ang mga salitang 'program' o 'script' ay hindi lumalabas sa puting papel.

Ang isang blockchain ay may pangangailangan na maipaliwanag ng ONE o higit pang independiyenteng mga tagamasid, kaya malinaw na binuo ito mula sa ONE o higit pang mahusay na tinukoy na mga istruktura ng data. Ang istraktura ng data ng bloke ay dapat maglaman ng isang nakaraang block hash, at ang cryptographic na hash ng bloke ay dapat na gumanap sa isang napaka-espesipikong paraan, ngunit wala sa mga ito ang nangangailangan na ang istraktura ng data ay magdala ng anumang ideya ng executable code.

Maaari bang maglaman ang isang blockchain ng ilang anyo ng program code? Ito ay isang tanong sa pagpapatupad at ang sagot ay oo. Kasama sa Bitcoin ang limitadong scripting language, at iba pang mga system, gaya ng Ethereum, ay pagkatapos ay sinubukang suportahan ang mas detalyadong mga modelo ng programming.

Ang pagpili upang suportahan ang gayong mga konsepto ay tila higit na maging katuparan, o, mas mapaghangad na mga layunin sa disenyo, ngunit tila ang isang blockchain ay hindi na kailangang maging 'programmable' kaysa sa anumang iba pang naka-link na istraktura ng data ng listahan.

Ang isang blockchain ba ay isang database?

Minsan pa ang sagot ay tila hindi. Tulad ng dati, ang salitang 'database' ay hindi lumalabas sa puting papel.

Sa CORE nito, ang blockchain ay isang espesyal na uri ng istruktura ng data. Ang mga bloke sa loob ng chain ay naglalaman ng data, ngunit hindi ito ginagawang isang database; sa pinakamahusay na ang mga bloke ay kumakatawan sa log ng transaksyon ng isang tiyak na pagpapatupad ng database.

Katulad nito, walang mga semantika para sa pag-query ng isang blockchain, higit pa kaysa sa pag-query ng isang naka-link na listahan. Maaaring payagan ng isang partikular na pagpapatupad ang mga query ng alinman, ngunit hindi tinukoy ng pagpapatupad ang mismong bagay.

Bilang isang punto ng paghahambing, ang mga IP packet para sa mga TCP packet na nagdadala ng artikulong ito ay tinukoy bilang mga istruktura ng data sa isang serye ng mga dokumento ng IETF (Internet Engineering Task Force) RFC (Request For Comments). Inilalarawan ng mga dokumento ang anyo ng mga packet at ang kanilang pag-uugali kapag sila ay dinadala. Ang mga tatanggap ng mga packet na iyon ay makakagawa ng kanilang sariling mga pagpapasiya ng kanilang bisa nang walang pagsasaalang-alang sa anumang bahagi ng pagpapatupad ng network sa pagitan nila at ng nagmula.

Ang isang pagpapatupad ng isang router/firewall ay maaaring mag-alok ng isang tampok upang makuha ang mga packet na iyon upang masuri ang mga ito sa ibang pagkakataon, at maaaring mag-alok ng mga query sa database ng mga packet na iyon, ngunit walang anuman sa likas na katangian ng isang IP packet na ginagawa itong isang database, at wala ring anumang bagay sa RFC na magmumungkahi kung hindi man. Ang mga tampok ng pagpapatupad at detalye ay ibang-iba.

Ang isang blockchain ba ay walang tiwala?

Ang sagot dito ay hindi rin, ngunit iyon ay dahil ang tanong ay masyadong malawak. Ang isang blockchain ay nagpapahintulot sa amin na mangailangan ng mas kaunting tiwala kaysa sa maraming tradisyonal na sistema, ngunit ang anumang pagpapatupad ay nangangailangan pa rin ng ilang antas ng tiwala.

Ang isang tatanggap ng block data ay dapat magtiwala na ito ay naihatid nang hindi nakompromiso ng ilang tagapamagitan. Ang pamamahagi ng P2P ng mga bloke sa loob ng Bitcoin at mga katulad na network ay itinakda upang subukang bawasan ang tiwala sa mga kapantay, ngunit kahit na ang modelong ito ay may potensyal na mga punto ng pagkabigo. Narito ang ilan:

  • Nagtitiwala kami na ang blockchain software na aming pinapatakbo ay hindi nakompromiso upang maghatid ng huwad na data
  • Nagtitiwala kami na ang operating system kung saan tumatakbo ang aming blockchain software ay hindi nakompromiso upang maghatid ng huwad na data
  • Nagtitiwala kami na ang mga network processor na nagbibigay ng koneksyon sa aming system ay hindi nakompromiso upang maghatid ng mga huwad na data.

"Sa code na pinagkakatiwalaan namin" ay gumagawa ng isang kawili-wiling mantra, ngunit ang 30-plus na taon ng malware, spyware, ETC, ay nagpapaalam sa amin na ito ay isang lubos na mapagdebatehang diskarte.

Ang disenyo ng blockchain ay nagpapahirap sa mga falsification para sa isang kalaban, at ginagawang mas maliit ang posibilidad ng mga aksidenteng pagkakamali. Nagagawa naming "magtiwala ngunit mag-verify" (sa loob ng mga hangganan), ngunit ito ay isang makabuluhang pagpapabuti kaysa sa bulag na pagtitiwala. Pinakamahalaga, wala sa mga katangiang ito na nagpapaliit ng tiwala ay mga aspeto ng disenyo ng P2P network, ngunit sa halip ay likas sa block encoding.

Dapat bang hindi pinahintulutan ang isang blockchain o maaari ba itong walang pahintulot?

Ang isang blockchain ay isang istraktura lamang ng data, kaya talagang walang saysay ang tanong. Iba talaga ang tanong kung sino ang may kakayahang magbasa o magsulat ng istruktura ng data.

Gayunpaman, huwag pansinin ang banayad na pagkakaibang ito, at kumilos na parang may katuturan ang tanong. Isaalang-alang ang kaso ng Bitcoin; sino ang sumulat ng blockchain?

Ang sagot ay ang mga minero (o mas tiyak, ang mga gumagawa ng block tulad ng mga operator ng pagmimina ng pool, hindi ang mga nagha-hash block lang) ay makakasulat ng mga bagong bloke. Ang mga transactor sa network ay maaaring magbigay ng mga kandidatong transaksyon na isasama sa mga bloke, ngunit hindi nito ginagarantiyahan na ang mga bloke ay maglalaman ng mga transaksyong iyon. Sa Bitcoin pinag-uusapan natin ang pagiging 'hindi pinahintulutan' dahil walang nangangailangan ng tahasang pahintulot para maging block Maker.

Kung isasaalang-alang namin ang iba pang mga potensyal na paggamit ng isang disenyo ng blockchain, gayunpaman, mayroong isang madalas na napakahusay na tinukoy na hanay ng mga kalahok na nais naming makapagsulat ng block data. Sa maraming mga kaso ito ay maaaring maging ONE solong kalahok.

Ang isang kritika na ibinibigay sa mga potensyal na paggamit ng isang blockchain ay na ito ay ginagawang hindi mas mahusay kaysa sa isang database, ngunit ang isang maginoo na database ay isang bagay kung saan ang bulag na tiwala ay dapat ilagay. Ang panloob na estado nito ay karaniwang hindi alam. Kahit na sa pinakasimpleng paggamit nito, ang blockchain ay maaaring magbigay ng paraan upang ma-verify ang estado ng naturang sistema, at gawin ito sa paraang nagbibigay-daan sa mga kasaysayan na mapatunayan. Ito ay simula lamang ng mga posibilidad, gayunpaman!

Ang isang blockchain ba ay ang Internet ng pera (o ang Internet ng anupaman)?

Sa totoo lang, hindi, o hindi bababa sa hindi sa sarili.

Nang tumingin kami sa "hindi isang database" ay hinawakan din namin kung bakit T talaga makatwiran ang claim na ito. Sa mababaw na argumento ay tila mapang-akit. Ang pag-iisip ay maaari tayong bumuo ng maraming Technology sa ibabaw ng isang blockchain sa paraan na ang isang network stack ay layered.

Mayroong maraming mga problema sa panukalang ito, ngunit ang ONE ay ang isang blockchain ay isang istraktura lamang ng data. Gumagawa ito ng isang mahusay na kandidato para magamit upang maghatid ng impormasyon sa buong Internet ngunit T pinapagana ang anuman sa sarili nito.

Ang paghihiwalay sa blockchain mula sa anumang transportasyon ng isang blockchain, gayunpaman, ay nagbibigay ng ilang pag-asa na ang mga blockchain ay maaaring paganahin ang mas maaasahang mga pinansiyal na aplikasyon sa Internet. Ang isang malinaw na paghihiwalay ay nagpapahintulot din sa pag-eeksperimento sa bawat layer ng disenyo ng system at ito ay isang pangunahing katangian na nagbigay-daan sa Internet upang maging matagumpay.

Gamit ang Internet, ang mga kandidato para sa lahat ng mga layer ng network stack ay maaaring subukan, palitan o baguhin, na nagpapahintulot sa pinakamahusay na mga disenyo na WIN. Sa katulad na paraan, ang diskarte na nakabatay sa pamantayan ay nagbigay-daan sa magkakaibang pagpapatupad na magtulungan nang hindi pinipigilan ang mga komersyal na bentahe mula sa paghahanap at pagkakitaan.

Sa kaso ng mga blockchain, nakita na natin na mayroong kinakailangan upang suportahan ang mga panlabas na tagamasid at ito ay nag-uutos ng isang antas ng interoperability.

Huling Pag-iisip

Tiningnan namin kung ano ang maaaring mangyari o hindi ang isang blockchain, at marahil nakakita ng ilang pahiwatig kung ano ang maaaring paganahin nito. Ang Technology nagpapatibay sa Bitcoin ay maaaring gamitin upang makabuo ng maraming bagay, at ang pamana ng bitcoin ay hindi lamang dapat Bitcoin mismo – ito ay nagpakita ng posibilidad ng isang bagay na higit na mahalaga.

Ang debate sa kung ano ang bumubuo sa isang blockchain ay T magtatapos dito, ngunit kailangan nating isulong ang talakayan at kailangan nating pigilan ang pagnanasa na payagan itong maging isa pang marketing buzzword.

Upang magawa iyon, kailangan namin ng parehong malinaw na terminolohiya, at mahusay na pangangatwiran sa paggamit. Kailangan nating iwasan ang pagsasama-sama ng maraming iba't ibang mga ideya, at kailangan natin ang mga pag-angkin ng Technology upang maging makatotohanan at maaabot. Kung mabigo tayo, sa kalaunan, ang terminong 'blockchain' ay mawawalan ng saysay at kailangang palitan. Mukhang mali ang kinalabasan nito.

Kung magtagumpay tayo kung gayon ang ideya ng isang blockchain ay hindi ang katapusan ng kuwento. Sa halip ay papalitan nito ang lugar nito bilang isang layer kung saan maaaring itayo ang mas mahusay at mas kapaki-pakinabang na mga sistema.

Ang artikulong ito ay muling nai-publish nang may pahintulot mula sa Hashingit.com. Maaari mong Social Media si Dave sa Twitter sa @hashingitcom.

Imahe sa pamamagitan ng Shutterstock

Note: The views expressed in this column are those of the author and do not necessarily reflect those of CoinDesk, Inc. or its owners and affiliates.

Dave Hudson

Si Dave Hudson ay VP ng Software Architecture sa Peernova, at isang taga-disenyo ng mga OS, network Stacks, compiler at database. Para masaya, sinusuri niya ang Bitcoin at "cryptoledger systems" sa kanyang blog na hashingit.com. Naka-base siya sa Bangor, Wales, at San Jose sa US.

Picture of CoinDesk author Dave Hudson