Apa Itu Directed Acyclic Graph (DAG) dalam Mata Uang Kripto?
Apa Itu Directed Acyclic Graph (DAG) dalam Mata Uang Kripto?
BerandaArtikel

Apa Itu Directed Acyclic Graph (DAG) dalam Mata Uang Kripto?

Tingkat Menengah
Published Jul 19, 2020Updated Apr 29, 2021
7m

Pengantar

Ketika Anda memikirkan mata uang kripto, istilah "blockchain" atau "teknologi ledger terdistribusi" mungkin akan muncul di benak Anda. Sejak diluncurkannya Bitcoin, ratusan aset kripto lainnya berhasil dibuat. Sebagian besar dari aset-aset ini mengandalkan arsitektur jaringan yang serupa. Struktur datanya memungkinkan pengguna untuk mentransfer nilai atau berinteraksi dengan aplikasi terdesentralisasi.
Dalam blockchain, blok baru ditambahkan secara berkala ke chain blok yang terus bertumbuh. Setiap blok dihubungkan ke blok yang sebelumnya dengan semacam tautan kriptografi (disebut hash). Di masing-masing blok ini terdapat transaksi terbaru yang telah dibroadcast oleh pengguna.
Tetapi sering kali terdapat periode menunggu di antara proses broadcast dan dimasukkannya transaksi ke dalam blok. Anggap saja seperti menunggu kereta di stasiun. Bergantung pada ukuran gerbong (ukuran blok), dan jumlah orang lain yang menunggu (transaksi yang tertunda), Anda mungkin bahkan tidak bisa mendapatkan kereta berikutnya. Atau bahkan yang sesudahnya. Anda bisa saja menunggu dari hitungan detik hingga jam agar transaksi dikonfirmasi.
Bagi banyak orang, ini merupakan hal yang dapat dimaklumi. Yang penting, teknologi ini memberikan tingkat keamanan yang sangat tinggi tanpa bergantung pada koordinator terpusat. Namun, bagi yang lain, teknologi blockchain memiliki tanggal kedaluwarsa. Para penentangnya yakin, dalam jangka panjang, masalah skalabilitas yang dihadapi oleh teknologi blockchain justru akan mencegah adopsi massal.

Beberapa orang percaya bahwa masa depan jaringan pembayaran mata uang kripto ada pada arsitektur yang sama sekali berbeda – directed acyclic graph (atau DAG).


Apa itu DAG?

DAG merupakan jenis struktur data yang berbeda – anggap saja seperti database yang menghubungkan berbagai informasi secara bersamaan. "Directed acyclic graph" atau grafik asiklik terarah adalah istilah yang menarik, jadi, mari kita mulai dengan menguraikannya.


Directed Acyclic Graph.


Secara konseptual, DAG terlihat seperti di atas. Terdiri dari simpul (bulatan) dan ujungnya (garis-garis yang menghubungkan satu sama lain). Diarahkan karena bulatan-bulatan tersebut mengarah ke satu arah (Anda dapat melihat ini diilustrasikan dengan panah). Bersifat asiklik  (bukan siklik) karena simpul tidak berputar kembali ke inti sendiri – jika Anda memulai dari satu titik dan mengikuti grafik, Anda tidak dapat kembali ke titik yang sama. Ini akan kita bahas dengan lebih jelas nanti.

Struktur data seperti ini umumnya digunakan untuk memodelkan data. Anda dapat mengandalkan DAG dalam bidang ilmiah atau medis untuk mengamati hubungan antara variabel dan untuk menentukan bagaimana mereka saling mempengaruhi. Misalnya, Anda dapat mengamati hal-hal seperti nutrisi, siklus tidur, dan gejala fisik, kemudian menarik hubungan satu sama lain untuk mengetahui bagaimana hal-hal tersebut memengaruhi pasien.

Untuk tujuan kita, kita lebih tertarik pada bagaimana DAG dapat membantu mencapai konsensus dalam jaringan mata uang kripto terdistribusi.


Bagaimana cara kerja DAG?

Dalam mata uang kripto berbasis DAG, setiap simpul dalam struktur mewakili transaksi. Tidak ada blok di sini, juga tidak diperlukan penambangan untuk memperluas basis data. Jadi alih-alih mengumpulkan transaksi ke dalam blok, setiap transaksi dibangun di atas yang lain. Namun, ada operasi Proof-of-Work kecil yang dilakukan saat node mengirimkan transaksi. Untuk memastikan bahwa jaringan tidak sesak, dan juga untuk memvalidasi transaksi sebelumnya.

Untuk menambahkan transaksi baru, transaksi tersebut harus dibangun di atas traksaksi lama. Misalkan Alice membuat transaksi baru. Agar diakui, transaksi ini harus merujuk ke yang sebelumnya. Sedikit mirip seperti blok dalam Bitcoin merujuk ke Bitcoin yang sebelumnya, tetapi di sini ada beberapa transaksi yang dirujuk. 

Dalam beberapa sistem, suatu algoritma akan memilih transaksi (ujung simpul atau "tip") mana yang akan menjadi dasar dibangunnya transaksi baru. Tip yang lebih mungkin untuk dipilih adalah yang memiliki bobot lebih banyak – ukuran berapa banyak konfirmasi yang dimiliki jalur ke ujung.

Transaksi yang akan dibangun oleh Alice di atas belum dikonfirmasi. Tetapi begitu Alice merujuknya, transaksi tersebut menjadi terkonfirmasi. Transaksi Alice sekarang belum dikonfirmasi, jadi orang lain harus membangun di atasnya sebelum diterima.

Pengguna lebih cenderung mengonfirmasi transaksi dengan bobot "lebih berat" sehingga sistem terus bertumbuh. Jika tidak, tidak akan ada yang menghentikan pengguna untuk terus membangun transaksi lama.

Dengan blockchain, perlindungan terhadap double-spend terbilang cukup mudah. Dana yang sama tidak dapat dihabiskan dua kali dalam satu blok – node dapat dengan mudah mendeteksi upaya apa pun dan akan menolak blok mana pun yang mengandung transaksi yang bertentangan. Karena begitu mahal bagi para penambang untuk menghasilkan blok, mereka diberi insentif untuk bermain dengan adil.

DAG juga memiliki mekanisme untuk mencegah double-spending. Agak mirip, tetapi tanpa penambang. Ketika node mengonfirmasi transaksi yang lebih lama, node tersebut menilai seluruh jalur kembali ke transaksi pertama DAG untuk memastikan bahwa pengirim memiliki saldo yang cukup. Mungkin ada beberapa jalur, tetapi hanya satu yang perlu diverifikasi.



Jika pengguna membangun transaksi di jalur yang tidak valid, maka akan berisiko mengabaikan transaksi sendiri. Transaksi itu mungkin sah, tetapi karena yang sebelumnya tidak, tidak ada yang mau memperpanjang jalur tersebut.

Pada awalnya terlihat tidak intuitif – tidak bisakah Anda memiliki banyak cabang yang tidak saling menyadari keberadaan masing-masing? Lalu, tidak bisakah orang menghabiskan dana yang sama di cabang-cabang yang berbeda ini?



Ini memang suatu kemungkinan, tetapi masalah tersebut diselesaikan dengan algoritma pemilihan yang mendukung tip dengan akumulasi berat yang lebih besar. Berarti, seiring waktu, Anda akan memiliki cabang yang jauh lebih kuat daripada yang lain. Yang lebih lemah akan ditinggalkan, dan jaringan akan terus membangun yang terberat. 

Dalam blockchain, tidak ada akhir yang absolut – Anda tidak akan pernah bisa 100% yakin bahwa transaksi tidak akan dibalikkan. Ini sangat mustahil, tetapi secara teoritis Anda dapat "membalikkan" blok Bitcoin atau Ethereum, membalikkan semua transaksi di dalamnya. Semakin banyak blok yang ditambahkan setelah transaksi Anda lakukan, semakin besar kepercayaan yang Anda miliki di dalamnya. Inilah sebabnya mengapa Anda disarankan untuk menunggu enam konfirmasi sebelum menghabiskan dana.
Dalam DAG seperti Tangle IOTA, ada gagasan mengenai konfirmasi kepercayaan atau confirmation confidence. Algoritme pemilihan dijalankan 100 kali, dan Anda menghitung berapa kali transaksi Anda disetujui secara langsung atau tidak langsung dalam tip yang dipilih. Semakin tinggi persentasenya, semakin yakin Anda bahwa transaksi Anda akan tetap "diselesaikan."

Ini mungkin tampaknya akan mengakibatkan pengalaman pengguna yang buruk. Tapi bukan itu masalahnya. Jika Alice mengirim 10 MagicDAGToken kepada Bob, ia tidak perlu khawatir memilih tip grafik yang tepat. Di balik layar, dompetnya kemungkinan akan melakukan hal berikut:

  • Memilih tip yang berat (ingat, ini artinya memiliki konfirmasi paling banyak).
  • Ikuti kembali jalur melalui transaksi sebelumnya untuk memastikan tip memiliki saldo yang cukup untuk dibelanjakan.
  • Jika sudah pasti, transaksi ditambahkan ke DAG, kemudian mengonfirmasi transaksi yang dibangun.
Bagi Alice, ini hanya akan terlihat seperti alur kerja mata uang kripto biasa. Ia memasukkan alamat Bob dan jumlah yang ingin ia belanjakan, lalu menekan kirim. Daftar di atas merupakan Proof of Work yang dijalankan oleh setiap partisipan saat membuat transaksi.



Pro dan kontra DAG

Pro DAG

Kecepatan

Tidak dibatasi oleh waktu blok, siapa pun dapat menyiarkan transaksi dan diproses kapan saja. Tidak ada batasan jumlah transaksi yang dikirimkan pengguna, asalkan mereka mengonfirmasi transaksi yang lebih lama.


Tanpa penambangan

DAG tidak menggunakan algoritma konsensus PoW dengan cara yang biasa kita lakukan. Dengan demikian, jejak karbon yang dihasilkan hanya sebagian kecil dari yang dihasilkan oleh mata uang kripto yang mengandalkan penambangan untuk mengamankan jaringan blockchain.


Tanpa biaya transaksi

Karena tidak ada penambang, pengguna tidak perlu membayar biaya untuk menyiarkan transaksi. Namun, walaupun dengan demikian, beberapa pihak mengusulkan adanya biaya kecil yang dibayarkan ke semacam node khusus. Biaya rendah (atau tanpa biaya) menarik untuk pembayaran mikro, karena biaya transaksi lebih rendah dari pembayaran yang dilakukan.


Tanpa masalah skalabilitas

Tidak dibatasi oleh waktu blok, DAG dapat memproses lebih banyak transaksi per detik dibandingkan dengan jaringan blockchain tradisional. Banyak pendukungnya percaya ini akan membuat DAG berharga dalam penggunaan Internet of Things (IoT), di mana semua jenis mesin akan berinteraksi satu sama lain.


Kontra DAG

Tidak sepenuhnya terdesentralisasi

Protokol yang mengandalkan DAG memiliki berbagai elemen terpusat. Untuk beberapa orang, ini dianggap merupakan solusi jangka pendek untuk menjalankan jaringan, tetapi masih harus dilihat apakah DAG dapat berkembang tanpa campur tangan pihak ketiga. Jika tidak, DAG membuka diri terhadap potensi serangan, yang pada akhirnya bisa melumpuhkan jaringan.


Belum teruji dalam skala besar 

Meskipun mata uang kripto berbasis DAG telah ada selama beberapa tahun, namun, sistem ini harus menempuh jalan panjang sebelum digunakan secara luas. Karena itu, sulit untuk memprediksi insentif apa yang mungkin dimiliki pengguna jika menggunakan sistem ini di masa depan.


Konklusi

Directed Acyclic Graph tentu saja merupakan teknologi yang menarik untuk membangun jaringan mata uang kripto. Sejauh ini, ada beberapa proyek yang menggunakan struktur data ini, namun, proyek-proyek tersebut belum berkembang sepenuhnya. 
Jika DAG dapat memenuhi potensinya, sistem ini dapat memperkuat ekosistem yang dapat memperluas kapasitasnya secara besar-besaran. Teknologi DAG memiliki segudang penggunaan di bidang yang membutuhkan throughput tinggi dan biaya rendah, seperti Internet of Things (IoT) dan pembayaran mikro.