Dưới ảnh hưởng của cơn bão lần này “Shad(er)”, tôi phải ngồi ở sân bay đợi chuyến bay bị hoãn. Đài phát thanh cứ mỗi mười phút lại phát một lần “Xin lỗi vì sự bất tiện”. Nội dung từ “dự kiến hoãn một giờ” chuyển thành “hai giờ”, rồi cuối cùng thẳng thừng thành “Xin quý khách vui lòng kiên nhẫn chờ đợi”. Bên cạnh, anh lớn giận quá gọi cho tổng đài: “Rốt cuộc có bay không?” Tổng đài nói: “Do thời tiết, chúng tôi cũng đang chờ chỉ thị mới nhất.” Tôi ngồi đó bỗng thấy—trạng thái “luôn chờ kết quả cuối cùng” này, chẳng phải là một nan đề về tính cuối cùng (finality) mà nhiều blockchain đang gặp sao?
Nói thẳng ra thì, việc xác nhận giao dịch của hầu hết các chain PoS cũng chỉ là “chờ xem”. Chờ thêm nhiều block được nối tiếp, chờ xác suất phân nhánh (fork) giảm xuống đủ thấp, thì mới dám nói rằng số tiền này thật sự đã về. Vấn đề là bạn không biết phải chờ bao lâu.
Trong whitepaper của Dusk, Rolling Finality (tính cuối cùng cuộn/di chuyển theo thời gian) được mô tả và nó chia chuyện này thành bốn nấc trạng thái: Accepted (Đã chấp nhận), Attested (Đã được chứng thực), Confirmed (Đã xác nhận), Final (Cuối cùng). Accepted chỉ là có bằng chứng thành công nhưng vẫn có khả năng bị thay thế bởi các block ở vòng thấp hơn; Attested nghĩa là mọi lần lặp phía trước đều thất bại, và block này không thể bị thay thế trong cùng vòng đó nữa; Confirmed là khi có đủ block phía sau thì, trừ khi tổ tiên bị rollback, còn lại cơ bản là ổn; Final mới là trạng thái khóa chặt hoàn toàn—trong mọi trường hợp đều không thể đảo ngược.
Dữ liệu chứng minh sự cần thiết của thiết kế này: Về mặt lý thuyết, một block tối đa có thể trải qua 50 lần lặp. Nếu liên tiếp 16 lần thất bại, giao thức sẽ tự động vào chế độ khẩn cấp—tất cả các bộ định thời (timeout) sẽ tắt, quá trình lặp sẽ tiếp diễn vô hạn cho đến khi xuất ra block. 50 lần là giới hạn cấu hình cuối cùng, nhưng trong chế độ khẩn cấp thì đường đi (lộ trình) vẫn tiếp tục vận hành.
Nói thật, trước đây khi xem các dự án khác nói về “finality”, tôi luôn cảm thấy giống như loa phát thanh ở sân bay—nói rồi cũng như không. Bộ bốn trạng thái của Dusk khiến lần đầu tiên tôi cảm thấy rằng finality là thứ có thể định lượng và có thể dự đoán được. Từ Accepted đến Final, mỗi nấc đều có điều kiện toán học rõ ràng—không phải chỉ “chờ xem” cho qua chuyện.
Hôm nay chuyến bay cuối cùng của tôi bị hoãn bốn tiếng mới cất cánh. Nếu tính cuối cùng của blockchain cũng dựa vào việc “chờ” như ở sân bay, ai dám dùng nó để thanh toán tài chính? Dusk tách “không thể đảo ngược” thành bốn nấc—mỗi nấc đều có quy tắc rõ ràng. Chính sự chắc chắn như vậy mới là thứ tài chính cần. #dusk $DUSK @Dusk
Nói thẳng ra thì, việc xác nhận giao dịch của hầu hết các chain PoS cũng chỉ là “chờ xem”. Chờ thêm nhiều block được nối tiếp, chờ xác suất phân nhánh (fork) giảm xuống đủ thấp, thì mới dám nói rằng số tiền này thật sự đã về. Vấn đề là bạn không biết phải chờ bao lâu.
Trong whitepaper của Dusk, Rolling Finality (tính cuối cùng cuộn/di chuyển theo thời gian) được mô tả và nó chia chuyện này thành bốn nấc trạng thái: Accepted (Đã chấp nhận), Attested (Đã được chứng thực), Confirmed (Đã xác nhận), Final (Cuối cùng). Accepted chỉ là có bằng chứng thành công nhưng vẫn có khả năng bị thay thế bởi các block ở vòng thấp hơn; Attested nghĩa là mọi lần lặp phía trước đều thất bại, và block này không thể bị thay thế trong cùng vòng đó nữa; Confirmed là khi có đủ block phía sau thì, trừ khi tổ tiên bị rollback, còn lại cơ bản là ổn; Final mới là trạng thái khóa chặt hoàn toàn—trong mọi trường hợp đều không thể đảo ngược.
Dữ liệu chứng minh sự cần thiết của thiết kế này: Về mặt lý thuyết, một block tối đa có thể trải qua 50 lần lặp. Nếu liên tiếp 16 lần thất bại, giao thức sẽ tự động vào chế độ khẩn cấp—tất cả các bộ định thời (timeout) sẽ tắt, quá trình lặp sẽ tiếp diễn vô hạn cho đến khi xuất ra block. 50 lần là giới hạn cấu hình cuối cùng, nhưng trong chế độ khẩn cấp thì đường đi (lộ trình) vẫn tiếp tục vận hành.
Nói thật, trước đây khi xem các dự án khác nói về “finality”, tôi luôn cảm thấy giống như loa phát thanh ở sân bay—nói rồi cũng như không. Bộ bốn trạng thái của Dusk khiến lần đầu tiên tôi cảm thấy rằng finality là thứ có thể định lượng và có thể dự đoán được. Từ Accepted đến Final, mỗi nấc đều có điều kiện toán học rõ ràng—không phải chỉ “chờ xem” cho qua chuyện.
Hôm nay chuyến bay cuối cùng của tôi bị hoãn bốn tiếng mới cất cánh. Nếu tính cuối cùng của blockchain cũng dựa vào việc “chờ” như ở sân bay, ai dám dùng nó để thanh toán tài chính? Dusk tách “không thể đảo ngược” thành bốn nấc—mỗi nấc đều có quy tắc rõ ràng. Chính sự chắc chắn như vậy mới là thứ tài chính cần. #dusk $DUSK @Dusk

