Giới thiệu
Khi bạn nghĩ về tiền điện tử, các thuật ngữ “blockchain” hoặc “công nghệ sổ cái phân tán” có thể xuất hiện trong đầu bạn. Kể từ khi Bitcoin ra mắt, hàng trăm loại tiền điện tử khác đã được tạo ra. Hầu hết chúng đều dựa trên kiến trúc mạng tương tự. Cấu trúc dữ liệu của họ cho phép người dùng chuyển giá trị hoặc tương tác với các ứng dụng phi tập trung.
Trong blockchain, một khối mới được định kỳ thêm vào chuỗi khối đang phát triển. Mỗi khối được kết nối với khối trước đó bằng một loại liên kết mật mã (cụ thể là hàm băm). Trong mỗi khối này là các giao dịch gần đây đã được người dùng phát đi.
Nhưng thường có một khoảng thời gian chờ giữa giao dịch được phát và giao dịch đó được đưa vào khối. Hãy nghĩ về điều này giống như việc chờ tàu ở nhà ga. Tùy thuộc vào kích thước của toa tàu (kích thước khối) và số lượng người khác đang chờ (giao dịch đang chờ), bạn thậm chí có thể không bắt được chuyến tàu tiếp theo. Hoặc thậm chí là chuyến tàu sau đó. Bạn có thể phải chờ từ vài giây đến vài giờ để giao dịch được xác nhận.
Với nhiều người, đây là một sự đánh đổi hợp lý. Xét cho cùng, nó cung cấp mức độ bảo mật rất cao mà không cần dựa vào một bộ điều phối tập trung. Với những người khác, công nghệ blockchain có ngày hết hạn. Những người phản đối tin rằng, về lâu dài, các vấn đề về khả năng mở rộng mà công nghệ blockchain phải đối mặt sẽ ngăn cản việc áp dụng rộng rãi.
Một số người tin rằng tương lai của mạng lưới thanh toán tiền điện tử nằm ở một kiến trúc hoàn toàn khác – đồ thị có hướng phi chu trình (hay DAG).
DAG là gì?
DAG là một dạng cấu trúc dữ liệu khác – hãy nghĩ về nó như một cơ sở dữ liệu kết nối các phần thông tin khác nhau lại với nhau. "Đồ thị không có chu trình có hướng" là một thuật ngữ phức tạp, vì vậy chúng ta hãy bắt đầu bằng cách phân tích nó.

Đồ thị có hướng phi chu trình.
Về mặt khái niệm, DAG trông giống như trên. Chúng được tạo thành từ các đỉnh (các hình cầu) và các cạnh (các đường thẳng nối chúng). Chúng có hướng vì chúng hướng theo một hướng (bạn có thể thấy điều này được minh họa bằng các mũi tên). Chúng không tuần hoàn (tức là không tuần hoàn) vì các đỉnh không tự lặp lại trên chính chúng – nếu bạn bắt đầu tại một điểm và theo dõi đồ thị, bạn không thể quay lại cùng điểm đó. Điều này sẽ sớm trở nên rõ ràng hơn.
Các cấu trúc dữ liệu như vậy thường được sử dụng để mô hình hóa dữ liệu. Bạn có thể dựa vào DAG trong các lĩnh vực khoa học hoặc y tế để quan sát mối quan hệ giữa các biến và xác định cách chúng tác động lẫn nhau. Ví dụ, bạn có thể lấy những thứ như dinh dưỡng, chu kỳ ngủ và các triệu chứng vật lý để có thể rút ra mối liên hệ giữa chúng nhằm thiết lập cách chúng ảnh hưởng đến bệnh nhân.
Đối với mục đích của chúng tôi, chúng tôi quan tâm hơn đến cách chúng có thể giúp đạt được sự đồng thuận trong mạng lưới tiền điện tử phân tán.
DAG hoạt động như thế nào?
Trong tiền điện tử dựa trên DAG, mỗi đỉnh trong cấu trúc đại diện cho một giao dịch. Không có khái niệm về khối ở đây, cũng không cần khai thác để mở rộng cơ sở dữ liệu. Vì vậy, thay vì tập hợp các giao dịch thành các khối, mỗi giao dịch được xây dựng trên một giao dịch khác. Tuy nhiên, vẫn có một hoạt động Bằng chứng công việc nhỏ được thực hiện khi một nút gửi giao dịch. Điều này đảm bảo rằng mạng không bị spam và cũng xác thực các giao dịch trước đó.
Để thêm một giao dịch mới, giao dịch đó phải được xây dựng trên các giao dịch cũ hơn. Giả sử Alice tạo một giao dịch mới. Để giao dịch đó được xác nhận, giao dịch này phải tham chiếu đến các giao dịch trước đó. Giống như cách một khối trong Bitcoin tham chiếu đến khối trước nó, nhưng có nhiều giao dịch được tham chiếu.
Trong một số hệ thống, thuật toán sẽ chọn giao dịch (hoặc "tips") mà giao dịch mới phải xây dựng. Các tip có nhiều khả năng được chọn là các tip có trọng số tích lũy lớn hơn – thước đo số lượng xác nhận mà đường dẫn đến tip có.
Các giao dịch mà Alice sẽ xây dựng trên đầu là chưa được xác nhận. Nhưng một khi Alice tham chiếu đến chúng, chúng sẽ được xác nhận. Giao dịch của Alice hiện chưa được xác nhận, vì vậy người khác phải xây dựng trên đầu trước khi nó được chấp nhận.
Người dùng có nhiều khả năng xác nhận giao dịch với trọng số "nặng hơn" để hệ thống tiếp tục phát triển. Nếu không, sẽ không có gì ngăn cản người dùng tiếp tục xây dựng trên các giao dịch cũ hơn.
Với blockchain, bảo vệ chống chi tiêu gấp đôi khá dễ dàng. Cùng một khoản tiền không thể được chi tiêu hai lần trong một khối – các nút có thể dễ dàng phát hiện bất kỳ nỗ lực nào và sẽ từ chối bất kỳ khối nào chứa các giao dịch xung đột. Vì việc tạo ra các khối ban đầu rất tốn kém đối với thợ đào, nên họ được khuyến khích chơi công bằng.
DAG cũng có cơ chế ngăn chặn việc chi tiêu gấp đôi. Nó khá giống, nhưng không có thợ đào. Khi một nút xác nhận các giao dịch cũ hơn, chúng sẽ đánh giá toàn bộ đường dẫn trở lại giao dịch đầu tiên của DAG để đảm bảo rằng người gửi có đủ số dư. Có thể có nhiều đường dẫn, nhưng chỉ cần xác minh một đường dẫn.

Nếu người dùng xây dựng trên một đường dẫn không hợp lệ, họ sẽ có nguy cơ giao dịch của chính họ bị bỏ qua. Giao dịch của họ có thể hợp lệ, nhưng vì giao dịch trước đó không hợp lệ, nên sẽ không ai muốn mở rộng đường dẫn cụ thể đó.
Thoạt đầu có vẻ không trực quan – bạn không thể rơi vào tình huống có nhiều chi nhánh không biết đến nhau sao? Sau đó, mọi người không thể chi cùng một khoản tiền cho các chi nhánh khác nhau này sao?

Đó thực sự là một khả năng, nhưng nó được giải quyết bằng thuật toán lựa chọn ưu tiên các mẹo có trọng số tích lũy lớn hơn. Điều đó có nghĩa là, theo thời gian, bạn sẽ có một nhánh mạnh hơn nhiều so với phần còn lại. Những nhánh yếu hơn sẽ bị bỏ rơi và mạng sẽ tiếp tục xây dựng trên nhánh nặng nhất.
Giống như blockchain, không có sự chắc chắn tuyệt đối – bạn không bao giờ có thể chắc chắn 100% rằng một giao dịch sẽ không bị đảo ngược. Điều này cực kỳ khó xảy ra, nhưng về mặt lý thuyết, bạn có thể "hoàn tác" một khối Bitcoin hoặc Ethereum, đảo ngược tất cả các giao dịch bên trong. Càng thêm nhiều khối sau khối mà bạn đang giao dịch, bạn càng có thể tin tưởng vào nó. Đây là lý do tại sao bạn nên đợi sáu xác nhận trước khi chi tiền.
Trong một DAG như Tangle của IOTA, có một ý tưởng về sự tự tin xác nhận. Thuật toán lựa chọn được chạy 100 lần và bạn đếm số lần giao dịch của mình được chấp thuận trực tiếp hoặc gián tiếp trong các mẹo đã chọn. Tỷ lệ phần trăm càng cao, bạn càng có thể tự tin rằng giao dịch của mình sẽ vẫn được "giải quyết".
Điều này có vẻ như dẫn đến trải nghiệm người dùng không tốt. Nhưng không phải vậy. Nếu Alice gửi cho Bob 10 MagicDAGTokens, cô ấy không cần phải lo lắng về việc chọn đúng đầu của biểu đồ. Trong thực tế, ví của cô ấy có thể thực hiện những điều sau:
Chọn những mẹo có giá trị lớn (hãy nhớ rằng đây là những mẹo có số lượng xác nhận tích lũy nhiều nhất).
Theo dõi các giao dịch trước đó để đảm bảo số tiền boa có đủ để chi tiêu.
Khi đã hài lòng, họ thêm giao dịch của mình vào DAG, xác nhận các giao dịch mà họ xây dựng.
Đối với Alice, điều này trông giống như quy trình làm việc tiền điện tử thông thường. Cô ấy nhập địa chỉ của Bob và số tiền cô ấy muốn chi tiêu, sau đó nhấn gửi. Danh sách trên là Bằng chứng công việc mà mọi người tham gia chạy khi tạo giao dịch.
➠ Bạn muốn bắt đầu với tiền điện tử? Mua Bitcoin trên Binance!
Ưu và nhược điểm của đồ thị có hướng phi chu trình
Ưu điểm của DAG
Tốc độ
Không bị giới hạn bởi thời gian chặn, bất kỳ ai cũng có thể phát sóng và xử lý giao dịch của mình bất kỳ lúc nào. Không có giới hạn về số lượng giao dịch mà người dùng gửi, miễn là họ xác nhận các giao dịch cũ hơn khi thực hiện.
Không khai thác
DAG không sử dụng thuật toán đồng thuận PoW theo cách chúng ta thường làm. Do đó, lượng khí thải carbon của chúng chỉ bằng một phần nhỏ so với các loại tiền điện tử dựa vào khai thác để bảo mật mạng lưới blockchain của chúng.
Không có phí giao dịch
Vì không có thợ đào nào, người dùng không cần phải trả phí để phát sóng giao dịch của họ. Tuy nhiên, một số yêu cầu phải trả một khoản phí nhỏ cho các loại nút đặc biệt. Phí thấp (hoặc tốt hơn là không có phí) hấp dẫn đối với các khoản thanh toán nhỏ, vì mục đích của chúng bị đánh bại với các khoản phí mạng đáng kể.
Không có vấn đề về khả năng mở rộng
Không bị giới hạn bởi thời gian khối, DAG có thể xử lý nhiều giao dịch hơn mỗi giây so với các mạng blockchain truyền thống. Nhiều người ủng hộ tin rằng điều này sẽ khiến chúng có giá trị trong các trường hợp sử dụng Internet vạn vật (IoT), nơi mọi loại máy móc sẽ tương tác với nhau.
Nhược điểm của DAG
Không hoàn toàn phi tập trung
Các giao thức dựa trên DAG có nhiều yếu tố tập trung hóa khác nhau. Đối với một số người, đây được cho là giải pháp ngắn hạn để khởi động mạng, nhưng vẫn chưa biết liệu DAG có thể phát triển mạnh mà không cần sự can thiệp của bên thứ ba hay không. Nếu không, chúng sẽ tự mở ra các vectơ tấn công có thể làm tê liệt mạng của chúng.
Chưa được thử nghiệm ở quy mô lớn
Mặc dù tiền điện tử dựa trên DAG đã xuất hiện trong một vài năm, nhưng chúng vẫn còn một chặng đường dài trước khi được sử dụng rộng rãi. Do đó, rất khó để dự đoán những động cơ nào mà người dùng có thể khai thác hệ thống trong tương lai.
Suy nghĩ kết thúc
Directed Acyclic Graphs chắc chắn là một công nghệ thú vị để xây dựng mạng lưới tiền điện tử. Cho đến nay, có tương đối ít dự án sử dụng cấu trúc dữ liệu và chúng vẫn chưa phát triển đầy đủ.
Nói như vậy, nếu họ có thể phát huy hết tiềm năng của mình, họ có thể cung cấp năng lượng cho các hệ sinh thái có khả năng mở rộng quy mô lớn. Công nghệ DAG có vô số trường hợp sử dụng trong các lĩnh vực đòi hỏi thông lượng cao và không mất phí, chẳng hạn như trong Internet vạn vật (IoT) và thanh toán vi mô.



