Khi tôi nghiên cứu cơ chế đồng thuận của Dusk, thứ khiến tôi tốn công sức nhất không phải là ai là người tạo block, mà là Succinct Attestation—phần dễ bị bỏ qua nhất trong cái tên đó.
Trước hết hãy phân tách nó giải quyết vấn đề gì. Xác nhận block của Dusk là quy trình nhiều giai đoạn: Deterministic Sortition rút ra những người tham gia ở các giai đoạn khác nhau từ các Provisioner đáp ứng điều kiện, rồi đi qua Proposal, Validation, Ratification để hoàn tất việc xác nhận. Vấn đề của cơ chế nhiều giai đoạn là ở chỗ: quy trình phức tạp—làm sao để mọi người có thể tin vào “kết quả là thật” với chi phí thấp? Succinct Attestation chính là làm điều đó—nén bằng chứng của đồng thuận nhiều giai đoạn thành một chứng minh gọn nhẹ, để tính cuối cùng có thể được xác minh mà không cần phát lại toàn bộ quá trình.
Ý đồ thiết kế ở đây chỉ thực sự có thể thấy rõ trong bối cảnh tài chính. Tổ chức tài chính không cần “tạo block thật nhanh”, mà cần “xác nhận là cuối cùng”. Một giao dịch kết toán hoàn tất thì không thể để xác suất phải rollback treo lơ lửng trên đầu. Tính cuối cùng của hầu hết các chain là mang tính xác suất (càng chờ thêm nhiều block xác nhận), còn Dusk đi theo hướng biến tính cuối cùng thành thứ có thể chứng minh được: Attestation chính là tấm “đến đây là hết, không thể đảo ngược” làm bằng chứng.
Điều này cũng khiến tôi hiểu lại vì sao nó đáng để nghiền ngẫm: bất đồng trong thiết kế đồng thuận về bản chất là khác nhau ở chỗ “tin cái gì”. Có chain tin vào sức mạnh tính toán, có chain tin vào lượng stake; còn bộ của Dusk tin vào “tính công bằng của rút thăm cộng với chứng minh gọn nhẹ”. Cái nào tốt hơn, thời gian sẽ trả lời.
Tất nhiên, cơ chế càng tinh vi thì càng có nhiều thứ cần phải kiểm chứng. Việc hiện thực kỹ thuật của Succinct Attestation, cũng như hiệu năng của nó trong các điều kiện mạng cực đoan, đều vẫn là phần cần thời gian để kiểm nghiệm—rủi ro lớn nhất của một cơ chế tinh vi thường nằm ở chính sự phức tạp của nó.
@Dusk $DUSK #dusk
Trước hết hãy phân tách nó giải quyết vấn đề gì. Xác nhận block của Dusk là quy trình nhiều giai đoạn: Deterministic Sortition rút ra những người tham gia ở các giai đoạn khác nhau từ các Provisioner đáp ứng điều kiện, rồi đi qua Proposal, Validation, Ratification để hoàn tất việc xác nhận. Vấn đề của cơ chế nhiều giai đoạn là ở chỗ: quy trình phức tạp—làm sao để mọi người có thể tin vào “kết quả là thật” với chi phí thấp? Succinct Attestation chính là làm điều đó—nén bằng chứng của đồng thuận nhiều giai đoạn thành một chứng minh gọn nhẹ, để tính cuối cùng có thể được xác minh mà không cần phát lại toàn bộ quá trình.
Ý đồ thiết kế ở đây chỉ thực sự có thể thấy rõ trong bối cảnh tài chính. Tổ chức tài chính không cần “tạo block thật nhanh”, mà cần “xác nhận là cuối cùng”. Một giao dịch kết toán hoàn tất thì không thể để xác suất phải rollback treo lơ lửng trên đầu. Tính cuối cùng của hầu hết các chain là mang tính xác suất (càng chờ thêm nhiều block xác nhận), còn Dusk đi theo hướng biến tính cuối cùng thành thứ có thể chứng minh được: Attestation chính là tấm “đến đây là hết, không thể đảo ngược” làm bằng chứng.
Điều này cũng khiến tôi hiểu lại vì sao nó đáng để nghiền ngẫm: bất đồng trong thiết kế đồng thuận về bản chất là khác nhau ở chỗ “tin cái gì”. Có chain tin vào sức mạnh tính toán, có chain tin vào lượng stake; còn bộ của Dusk tin vào “tính công bằng của rút thăm cộng với chứng minh gọn nhẹ”. Cái nào tốt hơn, thời gian sẽ trả lời.
Tất nhiên, cơ chế càng tinh vi thì càng có nhiều thứ cần phải kiểm chứng. Việc hiện thực kỹ thuật của Succinct Attestation, cũng như hiệu năng của nó trong các điều kiện mạng cực đoan, đều vẫn là phần cần thời gian để kiểm nghiệm—rủi ro lớn nhất của một cơ chế tinh vi thường nằm ở chính sự phức tạp của nó.
@Dusk $DUSK #dusk
