Cuprins

  • Introducere

  • Ce este un DAG?

  • Cum funcționează un DAG?

  • Avantajele și dezavantajele grafurilor aciclice direcționate

    • Avantajele DAG-urilor

    • Dezavantajele DAG-urilor

  • A concluziona


Introducere

Când vă gândiți la criptomonede, probabil că vă vin în minte termenii „blockchain” sau „registru distribuit”. De la lansarea Bitcoin, au fost create sute de alte criptomonede. Cele mai multe dintre ele se bazează pe o arhitectură de rețea similară. Structurile lor de date permit utilizatorilor să transfere valoare sau să interacționeze cu aplicații descentralizate.

Într-un blockchain, un nou bloc este adăugat periodic unui lanț de blocuri în expansiune. Fiecare bloc este conectat la cel anterior printr-un fel de legătură criptografică (mai precis, un hash). În fiecare dintre aceste blocuri sunt tranzacții recente care au fost difuzate de utilizatori.

Dar există adesea o perioadă de așteptare între difuzarea unei tranzacții și includerea acesteia într-un bloc. Gândește-te la asta ca și cum ai aștepta un tren într-o gară. În funcție de dimensiunea vagoanelor (dimensiunea blocului) și de câte alte persoane așteaptă (tranzacții în așteptare), s-ar putea să nu reușești nici măcar să prindeți următorul tren. Sau chiar cel de după aceea. Puteți aștepta oriunde de la câteva secunde la câteva ore pentru ca tranzacția să fie confirmată.

Pentru mulți, acesta este un compromis înțelept. La urma urmei, oferă un nivel foarte ridicat de securitate fără a se baza pe un coordonator centralizat. Pentru alții, tehnologia blockchain are o dată de expirare. Criticii cred că, pe termen lung, problemele de scalabilitate cu care se confruntă tehnologia blockchain vor împiedica adoptarea în masă.

Unii cred că viitorul rețelelor de plată cu criptomonede se află într-o arhitectură complet diferită: grafice aciclice direcționate (sau DAG-uri).


Ce este un DAG?

Un DAG este un tip diferit de structură de date, ca o bază de date care conectează diferite informații. „Grafic aciclic direcționat” este un termen complex, așa că să începem prin a-l defalca.


Graphe orienté acyclique.

Graficul aciclic dirijat.


Conceptual, DAG-urile arată ca ceea ce este descris mai sus. Sunt compuse din vârfuri (sfere) și muchii (linii care le unesc). Sunt direcționați pentru că merg într-o singură direcție (puteți vedea săgețile). Ele sunt aciclice (adică non-ciclice) deoarece vârfurile nu formează o buclă pe ele însele. Dacă începeți de la un moment dat și urmați graficul, nu vă puteți întoarce la același punct. Toate acestea vor fi în curând mai clare.

Aceste structuri de date sunt în general utilizate pentru modelarea datelor. Vă puteți baza pe un DAG în domeniul științific sau medical pentru a observa relația dintre variabile și a determina impactul lor reciproc. De exemplu, puteți lua lucruri precum nutriția, ciclurile de somn și simptomele fizice, astfel încât să puteți face conexiuni între ele pentru a determina modul în care afectează un pacient.

Din partea noastră, suntem mai interesați de modul în care acestea pot contribui la obținerea consensului într-o rețea de criptomonede distribuite.


Cum funcționează un DAG?

Într-o criptomonedă bazată pe DAG, fiecare vârf al structurii reprezintă o tranzacție. Nu există aici conceptul de bloc și nici nu este nevoie să mine pentru a extinde baza de date. Deci, în loc să puneți tranzacțiile împreună în blocuri, fiecare tranzacție este construită peste alta. Cu toate acestea, o mică operațiune de dovadă a lucrului este efectuată atunci când un nod trimite o tranzacție. Acest lucru asigură că rețeaua nu este poluată și validează tranzacțiile anterioare.

Pentru ca o nouă tranzacție să fie adăugată, aceasta trebuie să se bazeze pe tranzacții mai vechi. Să presupunem că Alice creează o nouă tranzacție. Pentru a fi luată în considerare, această tranzacție trebuie să facă referire la tranzacții anterioare. Cam așa cum un bloc Bitcoin face referire la cel dinainte, dar cu mai multe tranzacții menționate.

În unele sisteme, un algoritm selectează tranzacțiile (sau „sfaturi”) pentru care ar trebui făcută o nouă tranzacție. Sfaturile mai susceptibile de a fi selectate sunt cele cu mai multă greutate acumulată: o măsură a numărului de confirmări pe calea către vârf.

Tranzacțiile pe care le va adăuga Alice sunt neconfirmate. Dar odată ce Alice le face referire, ele vor fi confirmate. Tranzacția lui Alice este acum neconfirmată. Altcineva trebuie să adauge o nouă tranzacție pentru ca aceasta să fie acceptată.

Este mai probabil ca utilizatorii să confirme tranzacțiile cu greutate „mai mare”, astfel încât sistemul să continue să crească. În caz contrar, nimic nu ar împiedica un utilizator să adauge continuu tranzacții noi la tranzacțiile mai vechi.

Cu blockchain-uri, este destul de ușor să te protejezi împotriva cheltuielilor duble. Aceleași fonduri nu pot fi cheltuite de două ori într-un bloc: nodurile pot detecta cu ușurință orice încercare și pot respinge orice blocuri care conțin tranzacții conflictuale. Deoarece producția de blocuri este atât de costisitoare pentru mineri, aceștia au un stimulent să fie sinceri.

DAG-urile au, de asemenea, un mecanism pentru a evita dublarea cheltuielilor. E puțin la fel, dar fără minori. Când un nod confirmă tranzacții mai vechi, evaluează o cale întreagă către prima tranzacție din DAG pentru a se asigura că expeditorul are un echilibru suficient. Pot exista mai multe căi, dar numai una ar trebui verificată.


Animation d'un DAG en action


Dacă utilizatorii folosesc o cale nevalidă, riscă ca propria lor tranzacție să fie ignorată. Ale lor ar putea fi legitime, dar din moment ce cea anterioară nu a fost, nimeni nu va dori să continue acest drum.

Acest lucru nu este intuitiv la început: nu te-ai putea găsi într-o situație în care există mai multe ramuri care nu sunt conștiente una de cealaltă? Nu ar fi așadar posibil să cheltuiești aceleași fonduri în aceste ramuri diferite?


DAG avec plusieurs branches


Aceasta este într-adevăr o posibilitate, dar este rezolvată printr-un algoritm de selecție care favorizează tranzacțiile cu pondere cumulativă mai mare. Asta înseamnă că în timp vei ajunge cu o ramură care este mult mai puternică decât celelalte. Cei mai slabi vor fi abandonati si reteaua va continua sa se dezvolte pe cele mai grele.

Ca și în cazul blockchain-urilor, nu există o finalitate absolută: nu poți fi niciodată 100% sigur că o tranzacție nu va fi anulată. Este incredibil de puțin probabil, dar, teoretic, puteți anula un bloc Bitcoin sau Ethereum, care inversează toate tranzacțiile din interiorul acestuia. Cu cât adaugi mai multe blocuri după tranzacție, cu atât poți avea mai multă încredere în tranzacția ta. Acesta este motivul pentru care se recomandă să așteptați șase confirmări înainte de a cheltui fonduri.

Într-un DAG precum IOTA's Tangle, există un concept de încredere de confirmare. Algoritmul de selecție este rulat de 100 de ori și numărați de câte ori tranzacția dvs. a fost aprobată direct sau indirect în panourile selectate. Cu cât procentul este mai mare, cu atât poți fi mai încrezător că tranzacția ta va rămâne soluționată.

Acest lucru poate părea să aibă ca rezultat o experiență slabă pentru utilizator. Dar acesta nu este cazul. Dacă Alice îi trimite lui Bob 10 MagicDAGTokens, nu trebuie să-și facă griji cu privire la selectarea tranzacțiilor potrivite din grafic. În fundal, portofelul său poate efectua următoarele operațiuni:

  • Selectați cele mai grele tranzacții (rețineți, acestea sunt cele cu cele mai multe confirmări acumulate).

  • Urmați procedura de returnare a tranzacțiilor anterioare pentru a vă asigura că tranzacțiile au un echilibru suficient pentru cheltuieli.

  • Odată făcut acest lucru, ea își adaugă tranzacția la DAG confirmând tranzacțiile pentru care a fost efectuată.

Pentru Alice, aceasta va arăta pur și simplu ca procedura obișnuită pentru o criptomonedă. Ea introduce adresa lui Bob și suma pe care dorește să o cheltuiască, apoi apasă pe Trimite. Lista de mai sus este dovada muncii pe care fiecare participant o execută atunci când creează o tranzacție.


➟ Vrei să începi cu criptomonede? Cumpărați Bitcoins pe Binance!


Avantajele și dezavantajele grafurilor aciclice direcționate

Avantajele DAG-urilor

Viteză

Fără a fi limitat de orele de blocare, oricine poate transmite și își poate procesa tranzacțiile în orice moment. Nu există o limită a numărului de tranzacții pe care utilizatorii le pot trimite, atâta timp cât le confirmă pe cele vechi atunci când le fac.


Fără minerit

DAG-urile nu folosesc algoritmi de consens PoW, așa cum este de obicei cazul. Amprenta lor de carbon este, prin urmare, o fracțiune din cea a criptomonedelor care se bazează pe minerit pentru a-și asigura rețeaua blockchain.


Fără taxe de tranzacție

Deoarece nu există mineri, utilizatorii nu trebuie să plătească nicio taxă pentru a-și difuza tranzacțiile. Acestea fiind spuse, unele necesită o taxă mică pentru a fi plătită anumitor tipuri de noduri. Taxele mici (sau mai bine, fără taxe) sunt atractive pentru microplăți, deoarece nu sunt posibile pe rețelele cu taxe mari.


Fără probleme de scalabilitate

Fără constrângeri de timp de blocare, DAG-urile pot procesa mult mai multe tranzacții pe secundă decât rețelele blockchain tradiționale. Mulți susținători cred că acest lucru le va face valoroase în cazurile de utilizare a Internet of Things (IoT), în care toate tipurile de obiecte și mașini vor interacționa între ele.


Dezavantajele DAG-urilor

Nu este complet descentralizat

Protocoalele care se bazează pe DAG-uri au elemente de centralizare diferite. Pentru unii, aceasta este probabil o soluție pe termen scurt pentru pornirea rețelei, dar rămâne de văzut dacă DAG-urile pot prospera fără intervenția unei terțe părți. Dacă nu, ei se deschid pentru a ataca vectori care, în cele din urmă, le-ar putea paraliza rețelele.


Nu a fost testat pe scară largă

Deși criptomonedele bazate pe DAG există de câțiva ani, ele au încă un drum lung de parcurs până când vor vedea o utilizare pe scară largă. Prin urmare, este dificil de prezis ce stimulente ar putea primi utilizatorii pentru întreținerea sistemului în viitor.


A concluziona

Graficele aciclice direcționate sunt cu siguranță o tehnologie interesantă pentru construirea rețelelor de criptomonede. Până acum, există relativ puține proiecte care utilizează această structură de date și nu au evoluat încă pe deplin.

Acestea fiind spuse, dacă își pot valorifica potențialul, ar putea alimenta ecosisteme extrem de scalabile. Tehnologia DAG prezintă o multitudine de cazuri de utilizare în domenii care necesită un proces de transfer ridicat și fără taxe, cum ar fi Internetul obiectelor (IoT) și microplățile.