1. DAG là gì?
DAG là viết tắt của Directed Acyclic Graph, dịch sang tiếng Việt là Đồ thị có định hướng không tuần hoàn.
Nói một cách dễ hiểu hơn, DAG giống như một công nghệ đào mà ở đó thợ đào sẽ sử dụng những quy trình, kết nối trực tuyến và xác nhận giao dịch. Tuy nhiên, quá trình này sẽ hoàn toàn biến mất. Bản chất hoạt động của nó tập trung tạo Site dựa trên số lượng giao dịch, số lượng càng nhiều thì lượt người giao dịch sẽ làm tăng mức độ tin tưởng của giao dịch.
Trong khi việc cắt giảm số lượng thợ đào mỏ có thể là tín hiệu. Tuy nhiên vẫn chưa thể thấy rõ được sự vượt trội của DAG so với Blockchain chỉ với đặc điểm này.
2. Ưu và nhược điểm của DAG
2.1. Ưu điểm
DAG hiện có khá nhiều ưu điểm vượt trội thu hút người dùng tương tự như Blockchain:
Double-Spending:
Mạng lưới Bitcoin sử dụng mô hình UTXO. Nghĩa là các user chỉ được phép thêm một giao dịch dưới mô hình này. Điều đó có nghĩa là sẽ có hơn 1 miner đồng thời cùng giải thuật toán đào. Việc này đòi hỏi quyền xác thực block. Thao tác này cũng dẫn đến việc tạo ra các fork tạm thời. Việc xác thực một giao dịch sẽ được quyết định bởi số giao dịch sau.
Mở rộng hệ thống:
Khi mỗi một giao dịch được xác thực, người ta sẽ liên kết giao dịch đó với một giao dịch mới đã tồn tại trong mạng lưới DAG. Nếu giao dịch mới liên kết với tất cả các giao dịch trước đó, mạng lưới sẽ trở nên quá rộng, khiến việc xác thực các giao dịch mới khó hơn nhiều. Chính vì vậy, hệ thống DAG chọn một giao dịch ngay trước đó để liên kết giao dịch này là cách lý tưởng nhất. Mục tiêu là giữ cho mạng lưới rộng vừa đủ để có thể hỗ trợ việc xác thực giao dịch nhanh chóng.
Giao dịch nhanh chóng:
Do các giao dịch được chuyển trực tiếp vào các mạng lưới DAG theo tính chất blockless. Toàn bộ quá trình này sẽ được thực hiện nhanh hơn các quá trình khác của Blockchain dựa trên PoW và PoS.
Không cần mining:
Trong mạng lưới DAG không có miner. Việc xác thực các giao dịch thực hiện trực tiếp trên chúng. Đối với các người dùng, nghĩa là các giao dịch được thông qua gần như là ngay sau đó.
Các giao dịch nhỏ lẻ thân thiện:
Sự cải tiến của DAG giúp phí giao dịch giảm, chức năng của các chuỗi hoạt động với tốt hơn. Nghĩa là người dùng có thể thanh toán các giao dịch nhỏ lẻ mà không phải trả nhiều phí như ở Bitcoin hay Ethereum.
2.2. Nhược điểm
Không hoàn toàn phi tập trung:
Các giao thức sử dụng kiến trúc DAG thường mang theo nhiều yếu tố tập trung khác nhau, tạo ra những điểm đáng chú ý. Với một số người, đặc biệt là những người quan tâm đến tính phân quyền và tính phân cấp trong mạng lưới, điều này được coi là một hạn chế lớn.
Spam Attack:
Do chi phí cho mỗi giao dịch gần như là không, các kiến trúc DAG dễ dàng trở thành mục tiêu cho các cuộc tấn công spam. Các kẻ tấn công có thể tận dụng tính chất này để gửi hàng loạt giao dịch không mong muốn, tê liệt mạng lưới và gây ra những hậu quả nghiêm trọng đối với hoạt động của hệ thống.
3. Cấu trúc khối của DAG
Việc kết hợp Blockchain với cấu trúc DAG xuất hiện từ ý tưởng về giao dịch sidechains. Các giao dịch này diễn ra đồng thời trong các chuỗi khác nhau. Cấu trúc DAG vẫn dựa trên ý niệm về các block.
IoT Chain (ITC), IOTA và Byteball là những dự án blockless đáng chú ý nhất trên thị trường tiện điện tử hiện nay. Trong Bitcoin và Ethereum, tốc độ tạo ra block chính là mấu chốt vấn đề. Trong Bitcoin, để tạo ra một block mới mất đến 10 phút. Vấn đề này đã được cải thiện hơn ở Ethereum, tuy nhiên thời gian xác minh block vẫn kéo dài từ 10 đến 20 giây.
Vậy tại sao vẫn cần một block? Trong mạng lưới Bitcoin, nhiều giao dịch được đào trong các khối và chuỗi giao dịch được duy trì bởi các băm giữa các block. Tuy nhiên, nếu chúng ta chỉ kết hợp block với các giao dịch thì sự kết hợp đó khiến cho mỗi giao dịch đều trực tiếp liên kết đến việc duy trì chuỗi. Sau khi giao dịch được đặt vào trong khối, bạn có thể bỏ qua quá trình mining.
4. Cơ chế hoạt động của DAG
Lưu trữ dữ liệu dưới dạng đồ thị xoay chiều có hướng, kiến trúc DAG mang lại hiệu quả cao trong việc quản lý và lưu trữ dữ liệu.
Trong kiến trúc DAG, mỗi giao dịch được biểu diễn bằng một đỉnh trong đồ thị, không có khái niệm về block như trong các hệ thống khác như Ethereum hoặc Bitcoin. Thay vào đó, mỗi giao dịch được tạo dựa trên các giao dịch trước đó.
Khi một giao dịch mới được thêm vào, nó phải tham chiếu đến các giao dịch đã tồn tại trước đó, tương tự như cách các block trong Ethereum hoặc Bitcoin tham chiếu đến block trước đó để xác thực.
Mỗi giao dịch có thể có nhiều hơn một chứng minh, cho phép nhiều giao dịch được xác thực đồng thời. Điều này giúp giảm thời gian chờ đợi và cho phép xử lý các giao dịch mới mà không cần chờ đợi cho đến khi các giao dịch trước đó hoàn tất.
5. Sự khác biệt giữa DAG và Blockchain
Sự khác biệt chính giữa Directed Acyclic Graph (DAG) và Blockchain là trong cách chúng tổ chức và xác nhận các giao dịch.
-
Blockchain: Trong một blockchain, các giao dịch được nhóm lại thành các khối (block) và sau đó được thêm vào chuỗi (chain) theo thứ tự thời gian. Mỗi khối thường chứa một số lượng cố định các giao dịch và phải được xác nhận bởi một quá trình đào (mining) hoặc xác thực từ các nút mạng.
-
DAG: Trong một DAG, không có khái niệm về khối hoặc chuỗi. Thay vào đó, mỗi giao dịch được đại diện bởi một đỉnh trong đồ thị và được kết nối với các giao dịch khác mà nó phụ thuộc vào. Không có khối đặc biệt nào được tạo ra; thay vào đó, các giao dịch được xác nhận bằng cách trực tiếp tham chiếu đến các giao dịch trước đó.
Do đó, trong khi blockchain dựa vào cấu trúc chuỗi tuyến tính, DAG cho phép mỗi giao dịch tham chiếu đến nhiều giao dịch khác một cách phi tuyến tính. Điều này có thể dẫn đến tốc độ xử lý giao dịch cao hơn và chi phí thấp hơn so với blockchain truyền thống. Tuy nhiên, DAG cũng đối mặt với một số thách thức về bảo mật và phân phối đồng nhất.
6. Một số dự án ứng dụng DAG
Đọc thêm: