BTC
$96,000
5.73%
ETH
$3,521.91
3.97%
HTX
$0.{5}2273
5.23%
SOL
$198.17
3.05%
BNB
$710
3.05%
lang
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
Trang chủ
AI AI
Tin nhanh
Bài viết
Sự kiện
BlockBeats Pro
Thêm
Thông tin tài chính
Chuyên đề
Hệ sinh thái chuỗi khối
Mục nhập
Podcast
Data
OPRR
Partnered With:

"Tính sẵn có của dữ liệu" là gì?

Đọc bài viết này mất 21 phút
Giải thích chi tiết về các vấn đề về tính sẵn có của dữ liệu mà các kế hoạch mở rộng gặp phải.
Tiêu đề gốc: "Khoa học đại chúng | "Tính sẵn có của dữ liệu" là gì? 》
Nguồn gốc: Những người đam mê Ethereum


"tính khả dụng của dữ liệu" và "dữ liệu "Vấn đề về tính khả dụng" đề cập đến một vấn đề mà một số kế hoạch mở rộng blockchain phải đối mặt. Cụ thể, khi một khối mới được tạo, làm cách nào để các nút đảm bảo rằng tất cả dữ liệu trong khối đó đã được xuất bản lên mạng? Khó khăn là nếu nhà sản xuất khối không công bố tất cả dữ liệu trong khối thì không ai có thể phát hiện ra liệu có giao dịch độc hại ẩn trong khối hay không.


Trong bài viết này, tôi sẽ đi sâu vào tầm quan trọng của các vấn đề về tính khả dụng của dữ liệu và các giải pháp liên quan.

 

Các nút blockchain hoạt động như thế nào?

 

Mỗi khối trên blockchain bao gồm hai phần:


Tiêu đề khối, tức là siêu dữ liệu của khối, bao gồm một số thông tin cơ bản về nội dung của khối, bao gồm cả gốc Merkle của giao dịch. Dữ liệu giao dịch, tức là thành phần chính của khối, bao gồm dữ liệu giao dịch thực tế.


Có hai loại nút chính trong mạng blockchain:


Nút đầy đủ (còn gọi là nút được xác minh đầy đủ). Các nút như vậy tải xuống mọi giao dịch trong chuỗi khối và xác minh tính hợp lệ của nó. Điều này tiêu tốn rất nhiều tài nguyên và hàng trăm gigabyte dung lượng ổ đĩa, nhưng các nút này an toàn nhất vì chúng sẽ không chấp nhận các khối chứa giao dịch không hợp lệ. Khách hàng nhẹ nhàng. Nếu máy tính của bạn không có đủ tài nguyên để chạy nút đầy đủ, bạn có thể chạy ứng dụng khách nhẹ. Khách hàng nhẹ không cần tải xuống hoặc xác minh bất kỳ giao dịch nào. Họ chỉ tải xuống tiêu đề khối và cho rằng các giao dịch có trong khối là hợp lệ. Do đó, các máy khách nhẹ kém an toàn hơn các nút đầy đủ.


May mắn thay, có một cách để các light client gián tiếp kiểm tra xem tất cả các giao dịch trong một khối có hợp lệ hay không. Khách hàng nhẹ có thể dựa vào các nút đầy đủ để gửi cho họ bằng chứng gian lận về các giao dịch không hợp lệ mà không cần phải tự kiểm tra tính hợp lệ của giao dịch. Bằng chứng gian lận là một bằng chứng nhỏ chứng minh rằng giao dịch trong một khối là không hợp lệ. Về nguyên lý hoạt động của chứng minh gian lận, bài viết này sẽ không giới thiệu chi tiết, mời bạn đọc bài viết này.


Chỉ có một vấn đề ở đây: nếu nút đầy đủ muốn tạo bằng chứng gian lận cho một khối nhất định, thì nó cần biết dữ liệu giao dịch khối. Nếu nhà sản xuất khối chỉ xuất bản tiêu đề khối chứ không phải dữ liệu giao dịch, nút đầy đủ sẽ không thể xác minh tính hợp lệ của giao dịch và tạo chứng chỉ gian lận cho giao dịch không hợp lệ. Điều này yêu cầu các nhà sản xuất khối phải xuất bản tất cả dữ liệu cho khối, nhưng chúng tôi cần tìm cách thực thi điều này.


Để giải quyết vấn đề này, light client cần tìm cách nào đó để kiểm tra xem dữ liệu giao dịch của khối có thực sự được xuất bản lên mạng hay không , để tất cả các nút có thể xác minh nó. Tuy nhiên, chúng tôi muốn tránh để client nhẹ tải xuống toàn bộ khối, vì điều này sẽ làm mất đi mục đích của light client.


Chúng ta giải quyết vấn đề này như thế nào? Trước tiên, hãy thảo luận về mức độ liên quan của các vấn đề về tính sẵn có của dữ liệu và cách giải quyết chúng.

 

Các vấn đề về tính sẵn có của dữ liệu liên quan đến những giải pháp nào?

 

Trong phần trước, chúng tôi đã giới thiệu vấn đề về tính khả dụng của dữ liệu. Hãy thảo luận về tầm quan trọng của nó đối với các giải pháp khả năng mở rộng.

 

Tăng kích thước khối


Trong Bitcoin Ở nơi khác chuỗi khối, hầu hết các máy tính xách tay thông thường có thể chạy các nút đầy đủ và xác minh toàn bộ chuỗi, bởi vì có giới hạn trên nhân tạo đối với kích thước khối để ngăn chặn chuỗi khối trở nên quá lớn.


Nhưng nếu chúng ta muốn tăng giới hạn kích thước khối thì sao? Chỉ nhiều người hơn mới có đủ khả năng để chạy các nút đầy đủ và xác minh blockchain một cách độc lập và hầu hết mọi người sẽ chạy các ứng dụng khách ít an toàn hơn. Điều này không có lợi cho việc phân cấp vì nó giúp các nhà sản xuất khối dễ dàng thay đổi các quy tắc giao thức và chèn các giao dịch không hợp lệ để đánh lừa các khách hàng nhẹ. Do đó, điều quan trọng là cung cấp hỗ trợ chống gian lận cho các máy khách hạng nhẹ, nhưng như chúng ta đã thảo luận, các máy khách hạng nhẹ cần một cách để xác minh rằng tất cả dữ liệu trong một khối đã được xuất bản lên mạng.

 

Sharding


Cải thiện thông lượng blockchain Một cách để biện pháp này là chia blockchain thành nhiều chuỗi, tức là sharding. Các phân đoạn này có nhà sản xuất khối riêng và có thể giao tiếp với nhau để chuyển mã thông báo giữa các phân đoạn. Mục đích của phân đoạn là nhóm các nhà sản xuất khối trong mạng để mỗi nhà sản xuất khối không cần xử lý mọi giao dịch mà chỉ cần trải rộng chúng trên các phân đoạn khác nhau. Mỗi phân đoạn chỉ cần xử lý một phần giao dịch.


Nói chung, trên một chuỗi khối phân đoạn, trình xác thực chỉ cần là một hoặc một vài nút Chạy đầy đủ cho phân đoạn và chạy các ứng dụng khách nhẹ cho các phân đoạn khác. Xét cho cùng, nếu mỗi trình xác thực phải chạy một nút đầy đủ cho mỗi phân đoạn thì mục đích của việc phân chia—phân chia chi phí hoạt động của mạng giữa các nút khác nhau—sẽ không đạt được.


Tuy nhiên, cách tiếp cận này cũng có những sai sót riêng. Điều gì sẽ xảy ra nếu các nhà sản xuất khối trên phân đoạn trở nên xấu xa và bắt đầu chấp nhận các giao dịch không hợp lệ? Điều này có nhiều khả năng xảy ra với hệ thống phân đoạn hơn là hệ thống không phân đoạn, chỉ có một số lượng nhỏ nhà sản xuất khối trên mỗi phân đoạn và dễ bị tấn công hơn. Hãy nhớ rằng các nhà sản xuất khối liên tục được chỉ định cho các phân đoạn khác nhau.


Để phát hiện xem một phân đoạn có chấp nhận giao dịch không hợp lệ hay không, chúng tôi phải đảm bảo rằng tất cả dữ liệu trong phân đoạn đó là Is công khai để có thể sử dụng bằng chứng gian lận để chứng minh tất cả các giao dịch không hợp lệ.

 

Bản tổng hợp


Bản tổng hợp lạc quan là một tính năng mới chiến lược khả năng mở rộng cho sidechain tổng hợp (tương tự như sharding). Các chuỗi bên này có nhà sản xuất khối chuyên dụng riêng và có thể chuyển tài sản đến và từ các chuỗi bên khác.


Tuy nhiên, nếu một nhà sản xuất khối độc hại đóng gói các giao dịch không hợp lệ thành các khối thì tất cả các giao dịch trên chuỗi bên sẽ bị mất. Tôi nên làm gì nếu tiền của người dùng bị đánh cắp? Để giải quyết vấn đề này, chúng ta có thể sử dụng bằng chứng gian lận để phát hiện tình trạng này. Tuy nhiên, một lần nữa, vấn đề cũ, người dùng sidechain cần tìm cách nào đó để đảm bảo rằng dữ liệu của tất cả các khối trên sidechain được hiển thị công khai để có thể phát hiện ra các giao dịch không hợp lệ. Để giải quyết vấn đề này, Rollup trên Ethereum xuất bản tất cả các khối cuộn lên chuỗi khối Ethereum, dựa vào Ethereum để cung cấp dữ liệu. Tức là sử dụng Ethereum làm lớp sẵn có của dữ liệu.


ZK-rollup tương tự như tổng hợp lạc quan. Sự khác biệt là cái trước không sử dụng bằng chứng gian lận để phát hiện các khối không hợp lệ mà sử dụng bằng chứng hợp lệ để chứng minh tính hợp lệ của các khối. Bản thân bằng chứng hợp lệ không yêu cầu dữ liệu sẵn có. Tuy nhiên, nhìn chung, ZK-rollup yêu cầu tính sẵn có của dữ liệu, bởi vì nếu nhà sản xuất khối tạo một khối hợp lệ và tạo chứng chỉ hợp lệ cho nó, nhưng không xuất bản dữ liệu khối, người dùng không có cách nào để biết trạng thái của khối và số dư của họ, do đó không thể tương tác với blockchain.

 

Khám phá thêm


tổng hợp được thiết kế để blockchain được sử dụng làm lớp sẵn có của dữ liệu để lưu trữ các giao dịch, nhưng quá trình xử lý và tính toán giao dịch thực tế diễn ra khi tổng hợp. Đây là một ý tưởng rất thú vị: blockchain thực sự không cần thực hiện bất kỳ phép tính nào mà ít nhất nó cần chia giao dịch thành các khối và đảm bảo tính sẵn có của dữ liệu giao dịch.


Đây cũng chính là ý tưởng thiết kế của LazyLedger, tức là một blockchain "lười biếng" chỉ cần hoàn thành hai bước của blockchain. Nhiệm vụ cốt lõi là sắp xếp các giao dịch theo trình tự và cung cấp dữ liệu giao dịch theo cách có thể mở rộng. Điều này làm cho LazyLedger trở thành thành phần "có thể cắm" nhỏ nhất trong các hệ thống như cuộn lên.

 

Giải pháp cho vấn đề về tính khả dụng của dữ liệu

 

Tải xuống tất cả dữ liệu


Như đã thảo luận ở trên, cách trực tiếp nhất để giải quyết vấn đề về tính khả dụng của dữ liệu là yêu cầu mọi người (bao gồm cả ứng dụng khách nhẹ) tải xuống tất cả dữ liệu. Rõ ràng, cách tiếp cận này không có quy mô tốt. Hầu hết các blockchain như Bitcoin và Ethereum đều sử dụng phương pháp này.

 

Chứng chỉ về tính khả dụng của dữ liệu


Bằng chứng về tính khả dụng của dữ liệu tính khả dụng là một công nghệ mới: khách hàng chỉ cần tải xuống một phần nhỏ dữ liệu trong một khối để kiểm tra xem tất cả dữ liệu trong khối đã được xuất bản chưa.


Bằng chứng về tính khả dụng của dữ liệu sử dụng một thành phần toán học gọi là mã hóa xóa. Mã xóa được sử dụng rộng rãi trong công nghệ thông tin từ đĩa CD-ROM, truyền thông vệ tinh đến mã QR. Mã hóa xóa có thể mở rộng dữ liệu khối 1 MB ban đầu lên 2 MB và 1 MB bổ sung là dữ liệu đặc biệt gọi là mã hóa xóa. Nếu bất kỳ byte nào trong khối bị mất, mã hóa xóa có thể giúp bạn khôi phục chúng. Ngay cả khi toàn bộ khối dữ liệu bị mất, mã hóa xóa có thể giúp bạn khôi phục tất cả dữ liệu. Tương tự, với mã hóa xóa, ngay cả khi dữ liệu trong CD-ROM bị xóa, máy tính của bạn vẫn có thể đọc được (Lưu ý của Người dịch: Mã hóa xóa không giúp bạn tiết kiệm băng thông, giả sử 1MB dữ liệu được mở rộng thành 2 MB, bạn vẫn cần lấy ít nhất 1 MB dữ liệu để khôi phục dữ liệu gốc, mặc dù 1 MB dữ liệu này không bắt buộc phải liên tục).


Điều này có nghĩa là để đạt được 100% dữ liệu sẵn có, nhà sản xuất khối chỉ cần 50% dữ liệu trong khối được xuất bản lên mạng. Nếu nhà sản xuất khối độc hại muốn che giấu thành công 1% dữ liệu thì phải che giấu hơn 50% dữ liệu, nếu không, 1% dữ liệu có thể được truy xuất thông qua 50% dữ liệu còn lại (Lưu ý của người dịch: Điều đầu tiên câu của đoạn này còn nghi ngờ).


Với kiến thức này, khách hàng có thể thực hiện các bước để đảm bảo rằng dữ liệu trong khối không bị ẩn. Khách hàng có thể cố tải xuống các đoạn ngẫu nhiên của khối và nếu họ không tải xuống đoạn đó (tức là chỉ ra rằng đoạn đó thuộc về 50% dữ liệu không được nhà sản xuất khối độc hại tiết lộ), họ sẽ Từ chối xác nhận tính khả dụng của dữ liệu đối với khối này. Nếu một đoạn dữ liệu ngẫu nhiên được tải xuống, khách hàng có 50% cơ hội tìm thấy đoạn dữ liệu không hợp lệ. Nếu hai khối dữ liệu được tải xuống, xác suất là 75%. Nếu ba khối dữ liệu được tải xuống, xác suất là 87,5%. Và cứ như vậy, cho đến khi bảy khối dữ liệu được tải xuống thì xác suất là 99%. Bằng cách này, khách hàng chỉ cần tải xuống một phần nhỏ dữ liệu trong khối và có thể kiểm tra tính khả dụng của dữ liệu của toàn bộ khối một cách hiệu quả.


Chi tiết đầy đủ về bằng chứng về tính khả dụng của dữ liệu phức tạp hơn và dựa vào các giả định khác, ví dụ: Số lượng khách hàng nhẹ không thể giảm xuống dưới một giới hạn dưới nhất định để có đủ lượng client nhẹ yêu cầu các khối dữ liệu để khôi phục toàn bộ khối dữ liệu. Nếu muốn tìm hiểu thêm, bạn có thể xem bài viết về Bằng chứng sẵn có của dữ liệu.


Bản gốc văn bản Liên kết


Chào mừng bạn tham gia cộng đồng chính thức của BlockBeats:

Nhóm Telegram đăng ký: https://t.me/theblockbeats

Nhóm Telegram thảo luận: https://t.me/BlockBeats_App

Tài khoản Twitter chính thức: https://twitter.com/BlockBeatsAsia

举报 Báo lỗi/Báo cáo
Chọn thư viện
Thêm mới thư viện
Hủy
Hoàn thành
Thêm mới thư viện
Chỉ mình tôi có thể nhìn thấy
Công khai
Lưu
Báo lỗi/Báo cáo
Gửi