Data Availability (DA) đề cập đến sự đảm bảo rằng toàn bộ dữ liệu giao dịch có trong một khối (block) có sẵn cho tất cả những người tham gia mạng blockchain. Khái niệm này rất quan trọng để duy trì tính bảo mật, đặc biệt khi hệ thống blockchain mở rộng quy mô để có khối lượng giao dịch cao hơn.

 

Data Availability càng trở nên quan trọng hơn trong bối cảnh các giải pháp mở rộng quy mô mới như sharding và rollups nhằm tăng thông lượng giao dịch. Có rất nhiều sáng kiến và dự án như proto-danksharding, EIP 4484, Celestia, EigenDA và Avail, đã đạt được nhiều tiến bộ trong việc cung cấp DA hiệu quả và giá cả phải chăng cho các bản rollups.

 

Một số phương pháp đã được đề xuất và khám phá nhằm giúp cung cấp DA mà không yêu cầu tất cả các node trong mạng phân đoạn hoặc mạng Layer 2 phải tải xuống và lưu trữ toàn bộ tập dữ liệu giao dịch một cách dư thừa bao gồm:

 

  • Data Availability Sampling: đề cập đến một loại kỹ thuật cho phép các light clients kiểm tra một cách xác suất xem dữ liệu giao dịch có sẵn hay không bằng cách chỉ tải xuống các đoạn ngẫu nhiên của tập dữ liệu giao dịch tổng thể. Các sáng kiến như proto-danksharding, Celestia, EigenDA và Avail, đã thử nhiều kỹ thuật mới khác nhau như cam kết KZG và bằng chứng ZK để lấy mẫu tốt hơn. Cách tiếp cận này cho phép các light clients kiểm tra rất hiệu quả DA của các tập dữ liệu giao dịch rất lớn mà không cần phải tải xuống toàn bộ tập dữ liệu. Các mẫu cũng được chia sẻ với các node đầy đủ trên mạng để giúp tái tạo lại mọi phần dữ liệu bị thiếu và khôi phục các khối không có sẵn khi cần thiết.
  • Data Availability Committees (DAC): là các sơ đồ sẵn có dữ liệu dựa trên ủy ban giao trách nhiệm xác minh tính sẵn có của dữ liệu giao dịch cho một nhóm node đáng tin cậy. Các committee nodes lưu trữ bản sao đầy đủ của dữ liệu giao dịch từ các khối và báo hiệu rằng dữ liệu thực sự có sẵn đầy đủ bằng cách đăng chữ ký mật mã trên chuỗi chính. Sau đó, các light clients có thể xác minh những chữ ký này để có được sự tin cậy rằng dữ liệu có sẵn cho các committee nodes mà không thực sự tự xử lý hoặc lưu trữ dữ liệu.
  • Data Sharding: Trong sơ đồ phân chia dữ liệu, dữ liệu giao dịch được chia thành nhiều phân đoạn và ứng dụng khách nhẹ sẽ lấy mẫu dữ liệu theo xác suất từ tất cả các phân đoạn để xác minh DA của dữ liệu trên toàn bộ hệ thống. Tuy nhiên, việc triển khai lấy mẫu nhiều phân đoạn thường làm tăng thêm độ phức tạp đáng kể cho các giao thức sẵn có của dữ liệu và có thể yêu cầu cấu trúc liên kết mạng phức tạp để ngăn chặn các điểm lỗi.
  • Succinct Proofs: Các bằng chứng mật mã mới nổi như bằng chứng zk (zero knowledge) và zk-SNARK có thể được sử dụng để chứng minh tính hợp lệ của các chuyển đổi trạng thái trong một khối mà không tiết lộ bất kỳ dữ liệu giao dịch cơ bản nào. 

 

Data Availability là một thách thức quan trọng phải được giải quyết khi khối lượng giao dịch tăng quy mô blockchain và chuyển đổi sang các kiến trúc nâng cao như sharding và rollups. Bất chấp điều đó, điều đáng khích lệ là tồn tại nhiều con đường khả thi để ngăn chặn tình trạng sẵn có của dữ liệu trở thành rào cản hạn chế vĩnh viễn khả năng mở rộng và khả năng chống kiểm duyệt của các mạng blockchain phi tập trung khi chúng phát triển.