Ano ang Directed Acyclic Graph (DAG) sa Cryptocurrency?
Ano ang Directed Acyclic Graph (DAG) sa Cryptocurrency?
HomeMga Artikulo

Ano ang Directed Acyclic Graph (DAG) sa Cryptocurrency?

Intermediya
2w ago
7m

Panimula

Kapag naisip mo ang cryptocurrency, ang mga terminong "blockchain" o "distributed ledger technology" ay malamang na maiisip. Mula nang ilunsad ang Bitcoin, daan-daang iba pang mga cryptocurrency ang nilikha. Karamihan sa kanila ay umaasa sa katulad na arkitektura ng network. Pinapayagan ng kanilang mga istraktura ng data ang mga user na maglipat ng halaga o makihalubilo sa mga desentralisadong aplikasyon.
Sa blockchain, ang isang bagong block ay pana-panahong idinagdag sa isang lumalagong chain ng mga block. Ang bawat block ay konektado sa nakaraang isa na may isang uri ng link na cryptographic (partikular, isang hash). Sa bawat isa sa mga block na ito ay kamakailang mga transaksyon na nai-broadcast ng mga user.
Ngunit madalas na isang panahon ng paghihintay sa pagitan ng isang transaksyon na nai-broadcast at ang pagsasama nito sa isang block. Isipin ito tulad ng paghihintay para sa isang tren sa isang istasyon. Nakasalalay sa laki ng mga karwahe (laki ng block), at ang bilang ng ibang mga tao na naghihintay (nakabinbin ang mga transaksyon), puwedeng hindi mo makuha ang susunod na tren. O kahit na ang pagkatapos nito. Puwede kang maghintay kahit saan mula sa segundo hanggang oras para kumpirmahin ang transaksyon.
Para sa marami, ito ay isang disenteng trade-off. Pagkatapos ng lahat, nagbibigay ito ng napakataas na antas ng seguridad nang hindi umaasa sa isang sentralisadong coordinator. Sa iba, ang teknolohiya ng blockchain ay may petsa ng pag-expire. Naniniwala ang mga Detractor na, sa pangmatagalan, ang mga problema sa scalability na kinakaharap ng teknolohiyang blockchain ay maiiwasan ang adopsyon ng masa.

Ang ilan ay naniniwala na ang hinaharap ng mga network ng pagbabayad ng cryptocurrency ay nakasalalay sa isang kabuuan ng iba't ibang arkitektura  – ang mga directed acyclic graph (o DAG).


Ano ang DAG?

Ang DAG ay isang iba't ibang uri ng istraktura ng data–  isipin ito tulad ng isang database na magkokonekta sa iba't ibang mga piraso ng impormasyon. Ang "Directed acyclic graph" ay isang na-load na term, kaya't magsimula tayo sa pamamagitan ng pagbagsak nito.


Ang Directed Acyclic Graph.


Konseptwal, ang mga DAG ay may hitsura ng tulad sa itaas. Binubuo ang mga ito ng mga vertice (ang mga sphere) at ang mga edge (ang mga linya na kumukonekta sa kanila). Nakaturo ang mga ito sapagkat directed sila sa isang direksyon (makikita mo ang isinalarawan sa mga arrow). Ang mga ito ay acyclic (ibig sabihin, hindi cyclic) dahil ang mga vertice ay hindi muling bumalik sa kanilang sarili – kung nagsimula ka sa isang punto at sundin ang grap, hindi ka puwedeng bumalik sa parehong punto. Ito ay magiging mas malinaw sa ilang sandali.

Ang mga nasabing istruktura ng data ay karaniwang ginagamit upang mag-modelo ng data. Puwede kang umasa sa isang DAG sa pang-agham o medikal na larangan upang obserbahan ang ugnayan sa pagitan ng mga variable at upang matukoy kung paano ito nakakaapekto sa bawat isa. Halimbawa, puwede kang kumuha ng mga bagay tulad ng nutrisyon, siklo sa pagtulog, at mga pisikal na sintomas, upang puwede kang mag-draw ng mga link sa pagitan nila upang maitaguyod kung paano nakakaapekto ang mga ito sa isang pasyente.

Para sa aming mga layunin, mas interesado kami sa kung paano sila makakatulong upang makamit ang consensus sa isang distributed cryptocurrency network.


Paano gumagana ang DAG?

Sa isang cryptocurrency na nakabatay sa DAG, ang bawat tuktok sa istraktura ay kumakatawan sa isang transaksyon. Walang paniwala ng mga block dito, at hindi rin kinakailangan ng pagmimina upang mapalawak ang database. Kaya sa halip na magtipon ng mga transaksyon sa mga block, ang bawat transaksyon ay itinatayo sa itaas ng isa pa. Gayunpaman, mayroong isang maliit na pagpapatakbo ng Proof-of-Work na tapos na kapag ang isang node ay nagsumite ng isang transaksyon. Tinitiyak nito na ang network ay hindi nai-spam at pinatutunayan din ang mga nakaraang transaksyon.

Para sa isang bagong transaksyon na maidaragdag, dapat itong bumuo sa tuktok ng mga mas luma. Ipagpalagay na lumilikha si Alice ng isang bagong transaksyon. Upang makilala ito, ang transaksyong ito ay dapat na sumangguni sa mga nauna. Medyo tulad ng kung paano isinasangguni ng isang block sa Bitcoin ang nauna bago ito, ngunit maraming mga transaksyon ang isinangguni. 

Sa ilang mga system, pipiliin ng isang algorithm kung aling mga transaksyon (o "mga tip") ang isang bagong transaksyon ang dapat na bumuo. Ang mga tip na mas malamang na mapili ay ang mga may higit na naipon na timbang – isang sukat ng kung gaano karaming mga kumpirmasyon ang landas sa tip.

Ang mga transaksyon na itatayo ni Alice sa tuktok ay hindi nakumpirma. Ngunit sa sandaling sanggunian sila ni Alice, nakumpirma nila. Ang transaksyon ni Alice ay hindi na nakumpirma, kaya't may ibang tao na dapat na maitayo sa itaas nito bago ito tanggapin.

Ang mga user ay may posibilidad na kumpirmahin ang mga transaksyon sa isang "mas mabibigat" na timbang upang ang system ay patuloy na lumalaki. Kung hindi man, hindi mapipigilan ang mga user mula sa patuloy na pagbuo ng mas lumang mga transaksyon.

Sa mga blockchain, ang proteksyon ng double-spend ay sapat na madali. Ang parehong mga pondo ay hindi puwedeng gugulin ng dalawang beses sa isang block – madaling makita ng mga node ang anumang pagtatangka at tatanggihan ang anumang block na naglalaman ng mga hindi tugmang mga transaksyon. Dahil napakamahal para sa mga minero na gumawa ng mga block sa una, pinasigla silang maglaro ng patas.

Ang DAG ay mayroon ding mekanismo upang maiwasan ang double-spending. Ito ay uri ng katulad, ngunit walang mga minero. Kapag kinumpirma ng isang node ang mas lumang mga transaksyon, sinusuri nila ang isang buong landas pabalik sa pinakaunang transaksyon ng DAG upang matiyak na ang nagpadala ay may sapat na balanse. Puwedeng maraming mga landas, ngunit isa lang ang kailangang ma-verify.



Kung ang mga user ay bumuo sa isang hindi wastong landas, pinapamahalaan nila ang panganib ng kanilang sariling transaksyon na hindi pinansin. Ang kanila ay puwedeng maging lehitimo, ngunit dahil ang nauna ay hindi, walang nais na pahabain ang partikular na landas na iyon.

Mukhang hindi nag-uugnay sa una – hindi ka ba mapunta sa isang sitwasyon kung saan maraming mga sangay na hindi magkaroon ng kaalaman sa bawat isa? Kung gayon, hindi ba puwedeng gastusin ng mga tao ang parehong pondo sa iba't ibang mga sangay na ito?



Tunay na maging posibilidad iyon, ngunit nalutas ito sa isang pagpipilian ng algorithm na mas gusto ang mga tip na may mas mabibigat na naipon na timbang. Nangangahulugan iyon na, sa paglipas ng panahon, magtatapos ka sa isang sangay na mas malakas kaysa sa iba pa. Iwanan ang mga mahihina, at magpapatuloy ang network sa pagbuo ng pinakamabigat. 

Tulad ng sa mga blockchain, walang ganap na pangwakas – hindi ka puwedeng maging sigurado ng 100% na ang isang transaksyon ay hindi mababaligtad. Hindi kapani-paniwalang malamang, ngunit puwede mong teoretikal na "ma-undo" ang isang block ng Bitcoin o Ethereum, na binabaligtad ang lahat ng mga transaksyon sa loob. Ang mas maraming mga block na idinagdag pagkatapos ng isa na nasa iyong transaksyon, mas maraming tiwala ang puwede mong makuha dito. Ito ang dahilan kung bakit inirerekumenda na maghintay ka para sa anim na kumpirmasyon bago gumastos ng mga pondo.
Sa isang DAG tulad ng Tangle ng IOTA, mayroong isang ideya ng kumpiyansa sa kumpirmasyon. Ang algorithm ng pagpili ay pinapatakbo ng 100 beses, at binibilang mo kung gaano karaming beses ang iyong transaksyon ay direkta o hindi direktang naaprubahan sa mga napiling tip. Kung mas mataas ang porsyento, mas may pagtitiwala ka na ang iyong transaksyon ay mananatiling "naka-ayos."

Puwede itong humantong sa hindi magandang karanasan ng user. Ngunit hindi iyon ang kaso. Kung pinadalhan ni Alice si Bob 10 MagicDAGToken, hindi niya kailangang mag-alala tungkol sa pagpili ng mga tamang tip ng grap. Sa ilalim ng hood, puwedeng gawin ng kanyang wallet ang mga sumusunod:

  • Piliin ang mabibigat na tip (tandaan, ito ang mga may pinaka naipon na kumpirmasyon).
  • Sundin ang landas pabalik sa mga nakaraang transaksyon upang matiyak na ang mga tip ay may sapat na balanse na magugugol.
  • Kapag nasiyahan, idinagdag nila ang kanilang transaksyon sa DAG, na kinukumpirma ang mga transaksyon na kanilang naitayo.
Kay Alice, ito ay magiging hitsura lang ng regular na daloy ng trabaho sa cryptocurrency. Pinasok niya ang address ni Bob at ang halagang nais niyang gastusin, pagkatapos ay pinindot ang ipadala. Ang listahan sa itaas ay ang Proof of Work na pinapatakbo ng bawat kalahok kapag lumilikha ng isang transaksyon.



Mga kalamangan at kahinaan ng mga directed acyclic graph

Mga kalamangan ng DAG

Bilis

Hindi pinaghihigpitan ng mga oras ng pag-block, ang sinuman ay puwedeng mag-broadcast at maproseso ang kanilang mga transaksyon anumang oras. Walang limitasyon sa bilang ng mga transaksyon na isinumite ng mga user, sa kondisyon na kumpirmahin nila ang mga mas luma tulad ng ginagawa nila.


Walang pagmimina

Ang mga DAG ay hindi gumagamit ng mga algorithm ng consensus na PoW sa paraang nakasanayan natin. Ang kanilang carbon footprint ay isang maliit na bahagi ng mga cryptocurrency na umaasa sa pagmimina upang ma-secure ang kanilang blockchain network.


Walang bayad sa mga transaksyon

Dahil walang anumang mga minero, ang mga user ay hindi kailangang magbayad ng mga bayarin upang mai-broadcast ang kanilang mga transaksyon. Sinabi nito, ang ilan ay nangangailangan na ang isang maliit na bayad ay binabayaran sa mga espesyal na uri ng mga node. Ang mga mababang bayarin (o mas mabuti, zero na bayad) ay nakakaakit para sa mga micropayment, dahil ang kanilang hangarin ay natalo ng mga makabuluhang bayarin sa network.


Walang mga isyu sa scalablity

Hindi napigilan ng mga oras ng pag-block, ang mga DAG ay puwedeng magproseso ng maraming higit pang mga transaksyon bawat segundo kaysa sa mga tradisyunal na blockchain network. Maraming mga tagataguyod ang naniniwala na ito ay gagawing mahalaga sa kanila sa mga kaso ng paggamit ng Internet of Things (IoT), kung saan ang lahat ng mga uri ng makina ay makikipag-ugnayan sa bawat isa.


Mga kahinaan ng DAG

Hindi ganap na desentralisado

Ang mga protocol na umaasa sa DAG ay may iba't ibang elemento ng sentralisasyon. Para sa ilan, ito ay tila isang panandaliang solusyon upang i-bootstrap ang network, ngunit nananatili itong makita kung ang DAG ay puwedeng umunlad nang walang interbensyon ng mga third-party. Kung hindi, binubuksan nila ang kanilang sarili upang makaatake sa mga vector na sa paglaon ay puwedeng mapunta ang kanilang mga network.


Hindi nasubukan ang pag-scale 

Bagaman ang mga cryptocurrency na nakabatay sa DAG ay nasa paligid ng ilang taon, malayo pa ang lalakarin nila bago makita ang malawakang paggamit. Tulad ng naturan, mahirap hulaan kung anong mga insentibo ang puwedeng magamit ng mga user sa system sa hinaharap.


Pangwakas na mga ideya

Ang mga Directed Acyclic Graph ay tiyak na isang nakawiwiling teknolohiya para sa pagbuo ng mga cryptocurrency network. Sa ngayon, medyo may ilang mga proyekto na gumagamit ng istraktura ng data, at hindi pa sila ganap na nagbabago. 
Sinabi na, kung makapaghatid sila ng kanilang potensyal, puwede nilang mapangyarihan ang napakalaking nasusukat na mga ecosystem. Ang teknolohiya ng DAG ay may napakaraming mga kaso ng paggamit sa mga lugar na nangangailangan ng mataas na throughput at walang bayad, tulad ng sa Internet of Things (IoT) at mga micropayment.