Xác thực không trạng thái NEAR: Sharding Giai đoạn 2
Learn how NEAR stateless validation eliminates validator storage requirements, enabling horizontal scalability without hardware centralization through...
Xác thực phi trạng thái của NEAR là bản nâng cấp Giai đoạn 2 cho khung sharding Nightshade của NEAR Protocol, trong đó các trình xác thực chunk không còn duy trì bản sao cục bộ (local copy) của trạng thái shard nữa. Thay vào đó, trình sản xuất chunk đóng gói tất cả dữ liệu trạng thái cần thiết vào một chứng kiến trạng thái (state witness), một cấu trúc dữ liệu mật mã chứa mọi số dư tài khoản, mục lưu trữ hợp đồng và khóa truy cập cần thiết để thực thi một chunk cụ thể, và cung cấp nó cùng với chunk cho các trình xác thực. Thiết kế này tách rời yêu cầu phần cứng của trình xác thực khỏi kích thước trạng thái mạng, cho phép NEAR mở rộng theo chiều ngang bằng cách thêm nhiều shard hơn mà không buộc bộ trình xác thực phải tăng chi phí lưu trữ tương ứng.
Bài viết này bao gồm Giao thức NEAR là gì, cách thức hoạt động của phân mảnh Nightshade, cơ chế chính xác của xác thực phi trạng thái bao gồm vòng đời của chứng thực trạng thái (state witness) và hệ thống phân cấp vai trò của người xác thực, lợi ích đối với sự phi tập trung và khả năng mở rộng, so sánh trực tiếp với lộ trình phi trạng thái của Ethereum, và những tác động đối với người xác thực, người ủy quyền (staker), nhà phát triển, và bất kỳ ai đánh giá NEAR để triển khai dApp.
NEAR Protocol là gì?
NEAR Protocol là một blockchain lớp 1, bằng chứng lưu ký sử dụng sharding Nightshade (khung sharding độc quyền của NEAR) để chia nhỏ việc xử lý giao dịch trên nhiều shard song song, cho phép thông lượng cao với phí giao dịch gần như bằng không. NEAR được thiết kế để triển khai các ứng dụng phi tập trung trên quy mô lớn, với công cụ dành cho nhà phát triển và kiến trúc đồng thuận được xây dựng dựa trên giả định rằng số lượng shard sẽ tăng theo thời gian.
Kiến trúc cốt lõi của NEAR
NEAR hoạt động như một mạng lưới proof-of-stake, trong đó các validator stake token NEAR để tham gia vào cơ chế đồng thuận và được phân bổ ngẫu nhiên vào các shard mỗi epoch, một khoảng thời gian cố định tương đương với khoảng nửa ngày. NEAR Protocol được đồng sáng lập bởi Illia Polosukhin, đồng tác giả của bài nghiên cứu về học máy mang tính bước ngoặt "Attention Is All You Need", và Alexander Skidanov; NEAR Foundation giám sát quá trình phát triển giao thức và các khoản tài trợ cho hệ sinh thái.
Token NEAR phục vụ hai chức năng chính: thanh toán phí gas cho các giao dịch và thực thi hợp đồng, và Staking làm tài sản thế chấp để các validator giành quyền tham gia vào cơ chế đồng thuận. Các hợp đồng thông minh NEAR biên dịch sang WebAssembly (WASM), một định dạng nhị phân di động cho phép các hợp đồng được viết bằng Rust hoặc JavaScript thực thi trong một môi trường thực thi tất định. Việc xử lý giao dịch trên NEAR tuân theo mô hình dựa trên chunk, trong đó mỗi shard tạo ra một chunk (một khối cấp độ shard được xử lý song song) trong mỗi khoảng thời gian khối, và tất cả các chunk được tổng hợp thành một khối chính thống duy nhất.
Điều gì khiến NEAR khác biệt so với các blockchain L1 khác?
NEAR tạo ra sự khác biệt so với các blockchain layer-1 khác chủ yếu thông qua mô hình phân mảnh thực thi (execution sharding), vốn chia tách cả trạng thái và quá trình xử lý giao dịch trên các phân mảnh thay vì xử lý mọi hoạt động thực thi trên một chuỗi duy nhất. Các điểm khác biệt chính bao gồm:
- Phân mảnh thực thi Nightshade: NEAR phân mảnh cả trạng thái và tính toán, không chỉ khả năng sẵn sàng của dữ liệu. Điều này khác với cách tiếp cận Danksharding của Ethereum (EIP-4844), nhắm mục tiêu phân mảnh khả năng sẵn sàng của dữ liệu cho các rollups Layer 2 thay vì phân mảnh thực thi.
- Xác thực phi trạng thái (Giai đoạn 2): Trình xác thực khối (chunk) hoạt động mà không lưu trữ trạng thái cục bộ, một lựa chọn thiết kế có ý nghĩa trực tiếp đến tính phi tập trung và khả năng mở rộng của shard, được đề cập chi tiết trong bài viết này.
- Thời gian chạy hợp đồng thông minh WASM: Các hợp đồng chạy trong môi trường sandbox WASM, hỗ trợ Rust và JavaScript làm ngôn ngữ phát triển chính.
- Tên tài khoản dễ đọc: Tài khoản NEAR sử dụng tên định danh thay vì băm Public Key thô.
- Mô hình Storage staking: Các hợp đồng thanh toán cho việc lưu trữ trên chuỗi bằng cách stake token NEAR, liên kết chi phí lưu trữ với tài sản thế chấp đã stake thay vì phí mỗi byte.
- Phí giao dịch gần như bằng không: Cấu trúc phí của NEAR được thiết kế để luôn dễ dàng truy cập ngay cả khi mạng chịu tải vừa phải.
Solana mở rộng quy mô thông qua khả năng xử lý song song trên một chuỗi đơn bằng runtime Sealevel của nó; NEAR mở rộng quy mô thông qua việc chia shard (sharding) trên các shard độc lập song song. Đây là những phản ứng kiến trúc khác nhau đối với cùng một vấn đề về thông lượng. Việc so sánh với Ethereum sẽ được đề cập chi tiết hơn trong bài viết này.
Xác thực không trạng thái là gì?
Xác thực không trạng thái là một mô hình xác thực blockchain, trong đó các trình xác thực xử lý giao dịch mà không cần duy trì một bản sao cục bộ liên tục của trạng thái mạng, mà nhận tất cả dữ liệu trạng thái cần thiết như một phần của mỗi khối hoặc phân đoạn mà họ xác thực. Thuật ngữ "không trạng thái" (stateless) đề cập đến mối quan hệ của trình xác thực với bộ lưu trữ trạng thái, chứ không phải trạng thái của blockchain đó, vốn vẫn tồn tại và phát triển. Từ góc nhìn của trình xác thực, mỗi tác vụ xác thực đều được đóng gói sẵn với mọi thứ cần thiết để hoàn thành.
Xác thực có trạng thái so với không trạng thái: Điểm khác biệt chính
Sự khác biệt giữa xác thực có trạng thái (stateful) và không trạng thái (stateless) nằm ở nơi dữ liệu trạng thái tồn tại trong quá trình thực thi: tại trình xác thực, hoặc đi kèm với phần việc.
| Xác thực có trạng thái | Xác thực không trạng thái | |
|---|---|---|
| Lưu trữ trạng thái | Trình xác thực lưu trữ một bản sao cục bộ đầy đủ của trạng thái phân mảnh (hàng trăm GB đến TB, tăng dần theo thời gian) | Trình xác thực không lưu trữ trạng thái phân mảnh bền vững |
| Phương thức truy cập trạng thái | Đọc từ cơ sở dữ liệu lưu trữ cục bộ trong quá trình thực thi giao dịch | Đọc từ bằng chứng trạng thái được cung cấp cùng mỗi phân đoạn |
| Yêu cầu phần cứng | Tỷ lệ với kích thước trạng thái mạng khi chuỗi phát triển | Tách biệt khỏi kích thước trạng thái mạng |
| Ảnh hưởng đến sự phân cấp | Chi phí lưu trữ cao và ngày càng tăng hạn chế sự tham gia của trình xác thực | Chi phí thấp hơn, ổn định cho phép sự tham gia rộng rãi hơn của trình xác thực |
Trong xác thực trạng thái, bộ xác thực là người quản lý trạng thái: nó sở hữu một bản sao chép dữ liệu của phân đoạn liên quan và tham khảo nó trong mỗi giao dịch. Trong xác thực không trạng thái, dữ liệu trạng thái đi kèm với công việc. Bộ xác thực nhận chính xác những gì nó cần, sử dụng nó và loại bỏ nó.
Tại sao NEAR Cần Xác thực Không Trạng thái
Theo kiến trúc stateful ban đầu của NEAR, mỗi chunk validator được chỉ định cho một shard đều phải duy trì một bản sao chép cục bộ đầy đủ về trạng thái của shard đó, và khi số lượng shard của NEAR tăng lên, yêu cầu về phần cứng lưu trữ cho mỗi validator trong mạng lưới cũng tăng theo. Mỗi shard mới được thêm vào đều tạo ra các nghĩa vụ lưu trữ tương ứng cho các validator được chỉ định cho nó. Điều này tạo ra một mối liên kết trực tiếp giữa tham vọng mở rộng của NEAR và rào cản chi phí phần cứng đối với việc tham gia làm validator. Khi mạng lưới thêm các shard để tăng thông lượng, nó đồng thời làm tăng chi phí để trở thành một validator, khiến sự tham gia tập trung vào những người vận hành có cơ sở hạ tầng lưu trữ lớn.
Xác thực phi trạng thái (stateless validation) phá vỡ sự liên kết này. Một trình xác thực chunk không còn lưu trữ bất kỳ trạng thái phân đoạn (shard state) nào nữa. Nó nhận chính xác dữ liệu trạng thái cần thiết cho mỗi chunk mà nó xác thực, thực hiện các giao dịch đối với dữ liệu đó và loại bỏ nó. Việc thêm nhiều phân đoạn giúp tăng thông lượng mạng lưới mà không làm tăng yêu cầu lưu trữ của mỗi trình xác thực. Điều này giải quyết một trong những mâu thuẫn cốt lõi trong bộ ba bất khả thi về khả năng mở rộng blockchain: NEAR có thể thêm các phân đoạn để mở rộng thông lượng mà không gây ra sự tập trung hóa phần cứng, trong khi tính toàn vẹn mã hóa của bằng chứng trạng thái (state witness) giúp duy trì tính bảo mật.
Hiểu về Sharding: Nền tảng cho khả năng mở rộng của NEAR
Cơ chế xác thực phi trạng thái của NEAR hoạt động trong kiến trúc phân mảnh (sharding) Nightshade, một kiến trúc chia trạng thái toàn cầu và xử lý giao dịch của mạng lưới trên nhiều phân mảnh song song. Việc hiểu rõ kiến trúc này là điều kiện tiên quyết cho phần giải thích cơ chế theo sau, bởi vì xác thực phi trạng thái là một nâng cấp cụ thể cho cách các trình xác thực tham gia vào cấu trúc của Nightshade.
Kiến trúc phân mảnh Nightshade hoạt động trên NEAR như thế nào
Nightshade là khung sharding của NEAR Protocol, trong đó trạng thái toàn cầu của Blockchain được phân chia trên nhiều shard, mỗi shard tạo ra một chunk (một khối cấp độ shard) trong mỗi khoảng thời gian khối. Nhiều chunk được tạo song song trên tất cả các shard đang hoạt động và được trình tạo khối tổng hợp thành một khối chuẩn duy nhất cho khoảng thời gian đó.
Nguyên tắc thiết kế cốt lõi của Nightshade là tất cả các phân đoạn được coi là các thành phần của một Blockchain logic duy nhất, chứ không phải là các chuỗi riêng biệt. Mỗi khối NEAR chứa một khối nhỏ cho mỗi phân đoạn đang hoạt động. Điều này có nghĩa là sổ cái toàn cục vẫn hợp nhất ngay cả khi việc xử lý giao dịch được phân tán. Các giao dịch xuyên phân đoạn được xử lý thông qua một cơ chế biên nhận không đồng bộ, chuyển tiếp tin nhắn giữa các phân đoạn.
Các validator được chỉ định ngẫu nhiên vào các shard trong mỗi epoch, điều này giúp hạn chế rủi ro bộ validator của bất kỳ shard đơn lẻ nào bị tấn công có chọn lọc hoặc bị chiếm quyền kiểm soát. Một validator không sở hữu vĩnh viễn một chỉ định shard; nó sẽ luân chuyển sau mỗi epoch, giúp phân bổ cả trách nhiệm và rủi ro trên toàn mạng lưới.
Việc triển khai đầy đủ của Nightshade diễn ra qua ba giai đoạn. Giai đoạn 1 thiết lập phân mảnh cơ bản với xử lý phân mảnh (chunk), nơi các trình xác thực (validator) duy trì bản sao trạng thái cục bộ đầy đủ. Giai đoạn 2 là xác thực không trạng thái (stateless validation), là chủ đề của bài viết này. Giai đoạn 3 là phân mảnh lại động (dynamic resharding), cho phép NEAR có khả năng tự động điều chỉnh số lượng phân mảnh của mình dựa trên nhu cầu mạng lưới theo thời gian thực. Để có tài liệu kỹ thuật đầy đủ về mô hình phân mảnh của NEAR, hãy xem docs.near.org/concepts/advanced/sharding.
Cách Xác thực Phi trạng thái của NEAR Hoạt động
Xác thực phi trạng thái của NEAR hoạt động hiệu quả vì dữ liệu trạng thái cần thiết để xác thực một chunk (khối) đi cùng với chính chunk đó, được nhà sản xuất chunk đóng gói dưới dạng một 'state witness' (nhân chứng trạng thái). Các trình xác thực chunk nhận chunk và 'state witness' của nó cùng lúc, thực thi tất cả các giao dịch chỉ bằng dữ liệu của witness, và không bao giờ tham vấn cơ sở dữ liệu trạng thái cục bộ. Kết quả là, nhóm trình xác thực đông đảo nhất trong mạng lưới NEAR có thể hoạt động với yêu cầu lưu trữ trạng thái gần như bằng không.
'State Witness' là gì?
State witness là một cấu trúc dữ liệu mật mã được tạo bởi trình sản xuất chunk, chứa mọi phần dữ liệu trạng thái cần thiết để thực thi các giao dịch trong một chunk cụ thể, bao gồm số dư tài khoản bị ảnh hưởng, các mục lưu trữ hợp đồng, khóa truy cập và mã hợp đồng.
Hãy coi bằng chứng trạng thái (state witness) như một hồ sơ vụ án được thư ký tòa án chuẩn bị trước một phiên điều trần: nó chứa mọi tài liệu mà thẩm phán cần để đưa ra phán quyết, được tập hợp trước để thẩm phán không cần phải tìm kiếm trong kho lưu trữ của tòa án khi đang diễn ra phiên tòa. Trong kiến trúc của NEAR, bằng chứng trạng thái chính là hồ sơ vụ án đó. Trình xác thực chunk (chunk validator) nhận nó cùng với chunk và thực thi tất cả các giao dịch chỉ bằng cách sử dụng nội dung của nó, mà không bao giờ cần truy vấn kho lưu trữ trạng thái cục bộ.
Vòng đời nhân chứng nhà nước bao gồm năm giai đoạn riêng biệt:
Nội dung: Chứng nhận trạng thái bao gồm số dư tài khoản, các mục lưu trữ hợp đồng, các khóa truy cập và mã hợp đồng cho mọi tài khoản bị ảnh hưởng bởi các giao dịch trong khối. Chỉ những trạng thái thực sự được đọc hoặc ghi trong quá trình thực thi mới được bao gồm; toàn bộ trạng thái phân mảnh không được đóng gói.
Tạo: Chunk producer, vai trò validator chịu trách nhiệm xây dựng chunk, đọc các mục trạng thái liên quan từ bản sao chép trạng thái phân đoạn cục bộ của mình và đóng gói chúng vào chứng nhân trạng thái. Chunk producer giữ lại trạng thái cục bộ của mình vì nó phải có khả năng tạo các chứng nhân cho các chunk trong tương lai.
Truyền tải: Nhà sản xuất chunk sẽ phát sóng chunk cùng với bằng chứng trạng thái của nó tới các trình xác thực chunk được chỉ định ngẫu nhiên cho shard đó trong khoảng thời gian block hiện tại.
Thực thi: Mỗi chunk validator thực thi các giao dịch của chunk chỉ bằng cách sử dụng dữ liệu state witness. Không có việc tra cứu trạng thái cục bộ nào diễn ra tại bất kỳ thời điểm nào. Sau khi thực thi, chunk validator sẽ tạo ra một chứng thực xác nhận rằng chunk đó là hợp lệ.
Hủy bỏ: Sau khi quá trình xác thực hoàn tất, trình xác thực chunk sẽ loại bỏ bằng chứng trạng thái (state witness). Bằng chứng này không được giữ lại, không được lưu trữ và không được sử dụng để cập nhật bất kỳ cơ sở dữ liệu trạng thái cục bộ nào.
Cấu trúc nhân chứng trạng thái được quy định chính thức dưới dạng Đề xuất Cải tiến NEAR (NEP). Để biết thông số kỹ thuật chính xác và số NEP hiện tại, hãy xem kho lưu trữ NEAR NEPs trên GitHub. Để biết chi tiết triển khai trong trình khách giao thức cốt lõi, hãy xem kho lưu trữ nearcore trên GitHub.
Vai trò của Trình xác thực phân đoạn so với Trình tạo khối
Kiến trúc trình xác thực của NEAR, với cơ chế xác thực không trạng thái, bao gồm ba vai trò riêng biệt: nhà sản xuất chunk, trình xác thực chunk và nhà sản xuất khối, mỗi vai trò có trách nhiệm và yêu cầu lưu trữ trạng thái khác nhau.
| Người tạo Chunk | Người xác thực Chunk | Người tạo Block | |
|---|---|---|---|
| Trách nhiệm chính | Xây dựng chunk (một block cấp độ shard) và tạo state witness | Xác thực chunk bằng state witness; tạo một attestation | Tổng hợp các chunk đã được chứng thực từ tất cả các shard thành một block chuẩn duy nhất |
| Yêu cầu lưu trữ trạng thái? | Có: duy trì đầy đủ trạng thái shard cục bộ để tạo witness | Không: nhận state witness cùng với mỗi chunk và loại bỏ sau khi sử dụng | Không: không xử lý trực tiếp trạng thái shard |
| Tác động phần cứng dưới cơ chế Xác thực không trạng thái (Stateless Validation) | Yêu cầu phần cứng không đổi; người tạo chunk vẫn cần lưu trữ trạng thái | Yêu cầu lưu trữ giảm xuống gần bằng không đối với vai trò người xác thực chunk | Không có thay đổi trong yêu cầu lưu trữ trạng thái |
| Số lượng Validator | Nhóm nhỏ hơn, một người tạo chunk cho mỗi shard trên mỗi khoảng thời gian block | Đa số các validator trong mạng lưới | Nhóm nhỏ hơn, một người tạo block trên mỗi khoảng thời gian block |
Điểm hiểu biết cấu trúc cốt lõi là trình xác thực phân đoạn là nhóm đông đảo nhất trong mạng lưới, và dưới cơ chế xác thực không trạng thái, họ không còn cần phần cứng lưu trữ đắt tiền nữa. Chỉ các nhà sản xuất phân đoạn, một nhóm nhỏ hơn nhiều, mới giữ lại yêu cầu lưu trữ trạng thái vì họ phải đọc trạng thái cục bộ để tạo bằng chứng cho mỗi phân đoạn. Sự bất đối xứng này cho phép tập hợp các trình xác thực phát triển mà không làm tăng tương ứng chi phí lưu trữ tổng thể trên toàn mạng. Lợi ích phi tập trung hóa được tập trung vào chính lớp trình xác thực lớn nhất.
Luồng xác thực dưới cơ chế xác thực không trạng thái
Các bước sau đây mô tả những gì diễn ra từ thời điểm một khoảng thời gian khối mới bắt đầu cho đến khi một khối đã xác thực được hoàn tất trên NEAR.
Sản xuất Chunk: Trình tạo chunk được chỉ định cho mỗi shard đang hoạt động sẽ tạo ra một chunk (một khối cấp shard) chứa các giao dịch đang chờ xử lý sẽ được xử lý trong khoảng thời gian khối này.
Tạo state witness: Người tạo chunk đọc các mục trạng thái liên quan từ bản sao chép trạng thái phân đoạn cục bộ của mình và đóng gói chúng thành một state witness, chứa mọi số dư tài khoản, mục lưu trữ hợp đồng và khóa truy cập được chạm đến bởi các giao dịch trong chunk.
Truyền tải đến các chunk validator: Chunk producer quảng bá chunk và state witness của nó đến các chunk validator được chỉ định ngẫu nhiên cho shard đó trong khoảng thời gian block này.
Thực thi không trạng thái: Mỗi trình xác thực khối thực thi các giao dịch của khối chỉ sử dụng dữ liệu chứng thực trạng thái, mà không tra cứu trạng thái cục bộ tại bất kỳ điểm nào. Sau khi thực thi, trình xác thực khối xác nhận tính hợp lệ của khối và loại bỏ chứng thực trạng thái.
Tập hợp khối: Nhà tạo khối cho khoảng thời gian này thu thập các phân mảnh đã được xác nhận từ tất cả các shard đang hoạt động, tập hợp chúng thành một khối chính tắc duy nhất và phát sóng nó lên mạng để hoàn thiện.
Ở bất kỳ thời điểm nào trong bước 3 và 4, người xác thực phân đoạn (chunk validator) đều không yêu cầu lưu trữ trạng thái cục bộ. Nhân chứng trạng thái (state witness) cung cấp tất cả quyền truy cập trạng thái cần thiết cho toàn bộ quá trình thực hiện xác thực.
--- ## Lợi ích của Xác thực phi trạng thái NEAR
Xác thực không trạng thái mang lại ba loại cải tiến cho mạng lưới NEAR: nó giảm yêu cầu phần cứng cho lớp validator đông đảo nhất, nó loại bỏ giới hạn mở rộng mà xác thực có trạng thái đã áp đặt lên số lượng shard và thông lượng, đồng thời nó cải thiện các điều kiện cơ sở hạ tầng cho các nhà phát triển xây dựng các ứng dụng phi tập trung trên Top của mạng lưới.
Yêu cầu phần cứng thấp hơn và tính phi tập trung cao hơn
Hệ quả trực tiếp nhất của việc xác thực phi trạng thái (stateless validation) đối với bộ trình xác thực của NEAR là việc loại bỏ yêu cầu phần cứng về lưu trữ trạng thái shard cho các trình xác thực chunk. Dưới cơ chế xác thực có trạng thái (stateful validation), nhu cầu lưu trữ cho các trình xác thực chunk tăng dần theo quy mô trạng thái của shard qua thời gian, mở rộng từ hàng trăm gigabyte lên đến hàng terabyte khi mạng lưới xử lý nhiều giao dịch hơn và tích lũy nhiều trạng thái hơn. Điều này đã tạo ra một rào cản chi phí phần cứng ngày càng tăng.
Xác thực phi trạng thái loại bỏ hoàn toàn gánh nặng này đối với các trình xác thực phân đoạn. Yêu cầu lưu trữ cho vai trò này giảm xuống gần như bằng không đối với cơ sở hạ tầng liên quan đến trạng thái, chỉ còn lại các yêu cầu về tài nguyên tính toán và băng thông mạng cho việc thực thi giao dịch và truyền chứng thực trong giới hạn thời gian của khối.
Hiệu ứng phi tập trung bắt nguồn trực tiếp từ sự thay đổi phần cứng này. Chi phí lưu trữ thấp hơn giúp giảm tổng chi phí vận hành một chunk validator, hạ thấp rào cản kinh tế thực tế đối với việc tham gia. Điều này cho phép một tập hợp validator lớn hơn và đa dạng hơn về mặt địa lý, từ đó làm giảm rủi ro tập trung validator. Một mạng lưới mà phần lớn các validator có thể chạy trên phần cứng thông dụng sẽ có cấu trúc kháng lại sự tập trung hóa tốt hơn so với một mạng lưới yêu cầu chi phí đầu tư vốn đáng kể vào hạ tầng lưu trữ để đủ điều kiện làm validator. Các thông số kỹ thuật về yêu cầu phần cứng hiện tại đối với các chunk validator trong cơ chế xác thực phi trạng thái (stateless validation) được duy trì tại docs.near.org/validator; hãy tham khảo tài liệu đó để biết các số liệu hiện tại.
Khả năng mở rộng mà không ảnh hưởng đến bảo mật
Xác thực không trạng thái tách rời số lượng shard của NEAR khỏi các yêu cầu phần cứng của validator, giúp loại bỏ mức trần mở rộng mà xác thực có trạng thái đã áp đặt lên thông lượng mạng. Theo mô hình có trạng thái trước đây, việc gấp đôi số lượng shard sẽ yêu cầu mọi validator được chỉ định cho các shard mới đó phải trang bị thêm dung lượng lưu trữ tương ứng, khiến việc tăng số lượng shard lớn trở nên bị hạn chế về mặt kinh tế. Xác thực không trạng thái phá vỡ mối liên hệ này: việc thêm shard giúp tăng công suất mạng mà không làm tăng nghĩa vụ lưu trữ của mỗi validator.
Lưu lượng mạng trên NEAR mở rộng gần như tỷ lệ thuận với số lượng phân mảnh. Nhiều phân mảnh hoạt động hơn có nghĩa là nhiều phần dữ liệu (chunks) được xử lý song song hơn trong mỗi khoảng thời gian khối, làm tăng số lượng giao dịch mà mạng có thể xác nhận mỗi giây. Xác thực không trạng thái là điều kiện tiên quyết để NEAR đạt được số lượng phân mảnh cao hơn khi mở rộng quy mô. Tài liệu của NEAR Foundation cung cấp các số liệu lưu lượng hiện tại khi chúng được cập nhật; để biết dữ liệu TPS hiện tại liên quan đến các cấu hình phân mảnh cụ thể, vui lòng xem tại docs.near.org
Điều này giải quyết trực tiếp khía cạnh khả năng mở rộng của trilemma về khả năng mở rộng của blockchain. Căng thẳng lịch sử giữa khả năng mở rộng và phi tập trung hóa trên các mạng phân mảnh phát sinh vì việc tăng dung lượng thường làm tăng chi phí phần cứng cho người xác thực, làm giảm tính phi tập trung. Xác thực không trạng thái loại bỏ cơ chế gây ra sự đánh đổi này, cho phép NEAR theo đuổi việc tăng số lượng shard mà không gặp áp lực tập trung hóa tương ứng. Mô hình khả năng mở rộng đạt được biểu hiện đầy đủ trong Giai đoạn 3, tái phân mảnh động, nơi NEAR có khả năng tự động điều chỉnh số lượng shard dựa trên nhu cầu mạng theo thời gian thực mà không cần bất kỳ sự phối hợp thủ công nào.
Điều này có ý nghĩa gì đối với các nhà phát triển xây dựng trên NEAR
Nếu bạn đang đánh giá NEAR như một nền tảng triển khai, việc xác thực không trạng thái sẽ ảnh hưởng đến ứng dụng của bạn ở lớp cơ sở hạ tầng, chứ không phải ở lớp hợp đồng. Có bốn hệ quả thực tế đáng để hiểu trước khi bạn đưa ra quyết định kiến trúc:
Không yêu cầu thay đổi hợp đồng. Xác thực không trạng thái (stateless validation) là một thay đổi ở cấp độ giao thức. Các hợp đồng thông minh của bạn không cần sửa đổi để được hưởng lợi từ tính năng này. Các hợp đồng đã được triển khai trên NEAR sẽ tự động hoạt động trên mạng lưới đã nâng cấp và có khả năng mở rộng cao hơn. Không có bước di chuyển, không có yêu cầu triển khai lại và không có thay đổi API nào.
Thông lượng cao hơn khi số lượng shard tăng lên. Khi NEAR bổ sung thêm nhiều shard nhờ tính năng xác thực không trạng thái (stateless validation), tổng dung lượng giao dịch của mạng lưới sẽ tăng lên. Đối với dApp của bạn, điều này có nghĩa là xác suất tắc nghẽn thấp hơn trong những giai đoạn nhu cầu cao, đồng thời chi phí giao dịch ổn định và dễ dự đoán hơn khi mạng lưới mở rộng.
Cơ sở hạ tầng có khả năng phục hồi cao hơn. Một tập hợp các trình xác thực phi tập trung hơn, được tạo ra bởi việc giảm bớt rào cản phần cứng đối với sự tham gia của người xác thực, giảm thiểu rủi ro gián đoạn mạng lưới liên quan đến tập trung hóa. Các dApp sản xuất được hưởng lợi từ mạng lưới trình xác thực khó bị gián đoạn hơn thông qua sự tập trung của nhà điều hành hoặc lỗi phần cứng xảy ra với một số ít trình xác thực có nguồn lực tốt.
Lộ trình dành cho nhà phát triển Ethereum. NEAR hỗ trợ Aurora, một môi trường thực thi tương thích EVM cho phép các nhà phát triển Ethereum triển khai các hợp đồng Solidity trên NEAR mà không cần viết lại chúng bằng Rust hoặc JavaScript. Các hợp đồng đó chạy trên cùng một mạng lưới cơ bản và hưởng lợi từ những cải tiến cơ sở hạ tầng xác thực không trạng thái tương tự.
Xác thực phi trạng thái của NEAR so với Lộ trình phi trạng thái của Ethereum
Các nhà phát triển vốn đã quen thuộc với lộ trình máy khách không trạng thái (stateless client) của Ethereum sẽ thấy rằng việc xác thực không trạng thái của NEAR cũng giải quyết cùng một vấn đề cơ bản: tách biệt phần cứng của trình xác thực và nút khỏi quy mô trạng thái mạng. Hai phương pháp này hoạt động ở các cấp độ kiến trúc khác nhau và thông qua các cơ chế khác nhau, được định hình bởi cấu trúc cơ bản khác biệt của hai mạng lưới. Đây không phải là những thiết kế cạnh tranh nhau mà là những phản ứng song song đối với gánh nặng phần cứng do sự tăng trưởng trạng thái của Blockchain.
| NEAR Stateless Validation | Ethereum Stateless Clients | |
|---|---|---|
| Approach | Xác thực không trạng thái (stateless validation) cấp độ phân đoạn (shard) thông qua các chứng thực trạng thái (state witnesses) được đóng gói theo từng chunk | Các máy khách không trạng thái (stateless clients) toàn chuỗi thông qua các chứng thực cây Verkle được đóng gói theo từng khối |
| Mechanism | Nhà sản xuất chunk tạo ra một chứng thực trạng thái cho mỗi chunk; các trình xác thực chunk thực thi mà không cần trạng thái cục bộ | Các chứng thực cây Verkle (EIP-4762) thay thế cho các bằng chứng Merkle; các máy khách thực thi các khối mà không cần trạng thái đầy đủ |
| Architectural Level | Áp dụng ở cấp độ phân đoạn (chunk) trong môi trường thực thi phân đoạn | Áp dụng ở cấp độ toàn bộ nút (full-node) trong môi trường thực thi nguyên khối (chuỗi đơn) |
| Current Status | Giai đoạn 2 của Nightshade; kiểm tra trạng thái Mainnet hiện tại tại docs.near.org | Mục trong lộ trình Long; đặc tả EIP-4762 đang được phát triển tích cực |
| Primary Goal | Cho phép mở rộng số lượng phân đoạn mà không làm tăng tỷ lệ yêu cầu phần cứng của trình xác thực chunk | Giảm yêu cầu lưu trữ của nút đầy đủ, giúp các máy khách thực thi không trạng thái khả thi đối với Ethereum |
Cả hai phương pháp đều đóng gói dữ liệu trạng thái mà trình xác thực hoặc máy khách cần cùng với khối hoặc chunk cần được xác thực, nhờ đó bên thực thi không bao giờ cần đến cơ sở dữ liệu trạng thái cục bộ. Sự khác biệt về cấu trúc là tính năng xác thực không trạng thái của NEAR áp dụng trong một hệ thống phân mảnh, nhắm đến các trình xác thực cấp độ chunk vốn chiếm đa số trong mạng lưới của mình. Lộ trình không trạng thái của Ethereum lại nhắm đến các nút đầy đủ trên một lớp thực thi nguyên khối, nơi toàn bộ trạng thái của chuỗi cuối cùng phải có thể truy cập được thông qua các bằng chứng cây Verkle (Verkle tree witnesses) thay vì trie trạng thái cục bộ.
Xét riêng về khía cạnh sharding: framework Nightshade của NEAR là một thiết kế execution sharding, phân chia cả trạng thái và tính toán trên các shard. Đề xuất Danksharding của Ethereum hướng tới data availability sharding cho các Rollups Layer 2 và không phải là một thiết kế execution sharding. Đây là những mục tiêu khác biệt về mặt kiến trúc nhằm phục vụ các cấu trúc mạng khác nhau, và việc so sánh trực tiếp giữa Nightshade và Danksharding đòi hỏi sự thừa nhận rằng chúng giải quyết các vấn đề khác nhau.
Xác thực không trạng thái nằm ở đâu trong lộ trình của NEAR?
Giai đoạn 2 của Nightshade là xác thực phi trạng thái (stateless validation). Sự tương đương này cần được nêu rõ vì tài liệu của NEAR và các cuộc thảo luận trong cộng đồng đôi khi sử dụng thuật ngữ "Giai đoạn 2" và "xác thực phi trạng thái" thay thế cho nhau, và việc hiểu rõ giai đoạn nào đang hiện hành sẽ cho bạn biết trạng thái kiến trúc mở rộng của mạng lưới.
Giải thích về ba giai đoạn của Nightshade
Việc triển khai đầy đủ Nightshade diễn ra qua ba giai đoạn riêng biệt, mỗi giai đoạn được xây dựng dựa trên giai đoạn trước đó và thiết lập các điều kiện tiên quyết cho giai đoạn tiếp theo.
Giai đoạn 1: Sharding Cơ bản (Hoàn thành)
NEAR đã phân chia trạng thái mạng lưới của mình thành nhiều shard, với mỗi shard xử lý các giao dịch một cách song song. Những người xác thực (validators) duy trì bản sao cục bộ đầy đủ trạng thái của shard được chỉ định cho họ. Các nhà sản xuất khối (block producers) tổng hợp các chunk từ tất cả các shard thành các khối chính tắc duy nhất. Giai đoạn 1 đã thiết lập kiến trúc dựa trên chunk Nightshade nhưng vẫn để yêu cầu phần cứng liên kết trực tiếp với kích thước trạng thái shard, điều này đã tạo ra giới hạn mở rộng mà Giai đoạn 2 giải quyết.
Giai đoạn 2: Xác thực phi trạng thái (Giai đoạn hiện tại)
Trình xác thực khối không còn duy trì trạng thái phân đoạn cục bộ. Trình sản xuất khối tạo ra các chứng nhân trạng thái và gửi chúng cùng với các khối. Điều này tách rời yêu cầu phần cứng của trình xác thực khối khỏi kích thước trạng thái phân đoạn và cho phép mạng lưới mở rộng lên nhiều phân đoạn hơn mà không làm tăng chi phí phần cứng của trình xác thực một cách tương ứng. Tính đến thời điểm viết bài, Giai đoạn 2 đã được kích hoạt trên mạng chính NEAR; để biết ngày kích hoạt chính xác và trạng thái mạng hiện tại, hãy tham khảo blog của NEAR Foundation) và docs.near.org, vì các giai đoạn giao thức được kích hoạt dần dần và tài liệu được cập nhật tương ứng.
Giai đoạn 3: Phân mảnh động (Dự kiến)
NEAR sẽ có khả năng tự động tăng hoặc giảm số lượng shard dựa trên nhu cầu thực tế của mạng lưới mà không cần sự điều phối thủ công hay nâng cấp phần cứng của validator. Stateless validation (xác thực không trạng thái) là tiền đề trực tiếp cho dynamic resharding (phân mảnh động): nếu không có Giai đoạn 2, việc thêm các shard sẽ buộc chi phí lưu trữ của các validator tăng lên theo tỷ lệ thuận, khiến việc tự động điều chỉnh shard không khả thi về mặt kinh tế. Giai đoạn 3 là bước tiến về kiến trúc cho phép mở rộng quy mô theo chiều ngang không giới hạn về mặt lý thuyết trên NEAR.
Cùng nhau, ba giai đoạn này thể hiện sự tiến triển của NEAR từ một blockchain phân mảnh với các phân bổ shard cố định và validator có trạng thái, đến một mạng lưới có khả năng mở rộng động, tự điều chỉnh công suất xử lý của mình mà không yêu cầu tập hợp validator của nó phải tăng trưởng tương ứng về chi phí phần cứng.
Xác thực không trạng thái NEAR: Ý nghĩa đối với Trình xác thực và Người stake
Đối với trình xác thực chunk, xác thực không trạng thái loại bỏ yếu tố chi phí phần cứng lớn nhất trong kiến trúc trước đây của NEAR: yêu cầu duy trì một bản sao cục bộ đầy đủ của trạng thái shard. Điều này có tác động trực tiếp đến kinh tế của hoạt động xác thực và khả năng tiếp cận thực tế của việc tham gia xác thực.
Trước đây, một chunk validator cần dung lượng lưu trữ tỷ lệ thuận với kích thước trạng thái của shard được chỉ định. Yêu cầu này tăng lên khi mạng lưới tích lũy thêm tài khoản, dữ liệu hợp đồng và lịch sử giao dịch. Chi phí hoạt động của một chunk validator bao gồm không chỉ năng lực tính toán và băng thông mà còn cả cơ sở hạ tầng lưu trữ liên tục, có khả năng mở rộng theo sự phát triển của mạng lưới.
Các trình xác thực chunk hoạt động theo cơ chế xác thực không trạng thái không còn cần dự phòng cho việc lưu trữ trạng thái. Yêu cầu phần cứng của họ chuyển sang năng lực tính toán để thực thi giao dịch và băng thông mạng để nhận các bằng chứng trạng thái (state witnesses) và truyền các chứng thực trong thời gian khối. Đây là một cấu trúc chi phí khác biệt về cơ bản: ổn định thay vì tăng trưởng, và thấp hơn ở bất kỳ số lượng shard nào so với mô hình trước đó.
Xác thực không trạng thái thay đổi yêu cầu phần cứng đối với trình xác thực chunk nhưng không làm thay đổi cơ chế hợp đồng Staking cơ bản. Các trình xác thực vẫn stake token NEAR vượt ngưỡng cho phép để tham gia vào cơ chế đồng thuận và vẫn phải chịu slashing vì hành vi sai trái của trình xác thực. Chi phí phần cứng để đáp ứng yêu cầu tham gia này giảm đối với các trình xác thực chunk, qua đó mở rộng phạm vi những người tham gia có thể vận hành một node trình xác thực chunk với chi phí hoạt động kinh tế. Đối với các thông số kỹ thuật phần cứng hiện tại và các ngưỡng ghế Staking, vui lòng xem docs.near.org/validator.
Cần lưu ý rằng các nhà sản xuất khối vẫn yêu cầu toàn bộ trạng thái shard cục bộ để tạo các bằng chứng trạng thái. Việc giảm yêu cầu phần cứng áp dụng cho các trình xác thực khối, đây là vai trò chiếm số lượng lớn nhất trong mạng lưới. Các nhà sản xuất khối giữ nguyên yêu cầu lưu trữ trạng thái của họ, dù chỉ chiếm một phần nhỏ hơn trong tổng số trình xác thực.
Để trở thành trình xác thực (validator) trên NEAR, người tham gia cần đặt cọc token NEAR vượt qua ngưỡng vị trí hiện tại và vận hành phần mềm xác thực. Để có hướng dẫn thiết lập đầy đủ và thông số kỹ thuật phần cứng hiện tại được cập nhật để phản ánh yêu cầu xác thực không trạng thái, hãy tham khảo trực tiếp docs.near.org/validator.
Câu hỏi thường gặp
Giao thức NEAR được sử dụng để làm gì?
NEAR Protocol là một blockchain layer-1 được thiết kế để triển khai các ứng dụng phi tập trung, bao gồm các giao thức DeFi, các nền tảng NFT, các ứng dụng Gaming và công cụ dành cho nhà phát triển. Nó sử dụng sharding Nightshade để xử lý các giao dịch trên nhiều phân đoạn song song, cho phép thông lượng cao với phí giao dịch gần như bằng không. Token NEAR được dùng để thanh toán phí gas cho việc thực thi giao dịch và hợp đồng, và các validator Stake các Token NEAR làm tài sản thế chấp để tham gia vào cơ chế đồng thuận.
NEAR Protocol hoạt động như thế nào?
Về cốt lõi, NEAR vận hành như một Blockchain proof-of-stake được chia thành nhiều phân đoạn (shard), mỗi phân đoạn xử lý các giao dịch song song. Mỗi shard tạo ra một chunk (một khối ở cấp độ shard) trong mỗi khoảng thời gian khối; một nhà sản xuất khối sẽ tổng hợp các chunk này thành một khối chuẩn duy nhất. Các Validator được chỉ định ngẫu nhiên vào các shard mỗi kỷ nguyên (epoch) và có trách nhiệm thực thi cũng như xác nhận các giao dịch trong chunk của shard được chỉ định, với cơ chế xác thực không trạng thái (stateless validation) cho phép các chunk validator thực hiện vai trò này mà không cần duy trì trạng thái shard cục bộ.
Nightshade sharding là gì?
Nightshade là khung phân mảnh (sharding framework) của NEAR Protocol, trong đó trạng thái toàn cầu và quá trình xử lý giao dịch của mạng lưới được chia thành nhiều phân đoạn (shard) song song. Khác với các thiết kế coi mỗi phân đoạn là một blockchain riêng biệt, Nightshade coi tất cả các phân đoạn là các thành phần của một blockchain logic duy nhất, với mỗi khối chứa một mảnh (chunk) cho mỗi phân đoạn đang hoạt động. Nightshade được triển khai qua ba giai đoạn: phân mảnh cơ bản (Giai đoạn 1), xác thực phi trạng thái (Giai đoạn 2) và phân mảnh lại động (Giai đoạn 3).
State witness là gì trong blockchain?
State witness là một cấu trúc dữ liệu mã hóa chứa tất cả dữ liệu trạng thái cần thiết để xác thực một khối hoặc chunk cụ thể, được đóng gói và gửi đến các validator để họ không cần truy cập vào cơ sở dữ liệu trạng thái cục bộ trong quá trình thực thi. Trong Giao thức NEAR, state witness cho một chunk bao gồm số dư tài khoản, các mục lưu trữ hợp đồng và các khóa truy cập được tác động bởi các giao dịch trong chunk đó. Người tạo chunk (chunk producer) tạo ra state witness và truyền dữ liệu này cùng với chunk tới các validator của chunk, những người sẽ thực thi các giao dịch bằng cách sử dụng dữ liệu witness và sau đó xóa bỏ nó sau khi tạo ra chứng thực của mình.
Các validator của NEAR hoạt động như thế nào?
Các validator của NEAR hoạt động theo ba vai trò riêng biệt trong cơ chế xác thực không trạng thái (stateless validation): người tạo chunk (chunk producers), người xác thực chunk (chunk validators) và người tạo khối (block producers). Người tạo chunk xây dựng các chunk (các khối ở cấp độ shard) và tạo ra bằng chứng trạng thái (state witnesses) bằng cách đọc trạng thái liên quan từ bản sao chép trạng thái shard cục bộ của họ. Người xác thực chunk nhận chunk và bằng chứng trạng thái, thực thi các giao dịch chỉ bằng dữ liệu bằng chứng mà không cần lưu trữ trạng thái cục bộ, chứng thực tính hợp lệ của chunk và loại bỏ bằng chứng. Người tạo khối tổng hợp các chunk đã được chứng thực từ tất cả các shard đang hoạt động thành một khối chính tắc duy nhất. Các validator Stake token NEAR trên một ngưỡng tối thiểu (seat threshold) để tham gia vào cơ chế đồng thuận và được phân bổ ngẫu nhiên vào các shard mỗi kỷ nguyên (epoch).
Xác thực không trạng thái cải thiện khả năng mở rộng như thế nào?
Xác thực không trạng thái (Stateless validation) cải thiện khả năng mở rộng bằng cách tách rời số lượng phân đoạn (shard count) khỏi các yêu cầu phần cứng của validator. Trong cơ chế xác thực có trạng thái (stateful validation), việc thêm nhiều phân đoạn yêu cầu các validator được chỉ định cho mỗi phân đoạn mới phải duy trì khả năng lưu trữ cục bộ tương ứng, tạo ra một giới hạn phần cứng về số lượng phân đoạn mà mạng lưới có thể hỗ trợ trên thực tế. Với xác thực không trạng thái, các chunk validator nhận được tất cả dữ liệu trạng thái bắt buộc cho mỗi chunk dưới dạng một state witness và loại bỏ nó sau khi sử dụng, vì vậy việc thêm các phân đoạn không làm tăng yêu cầu lưu trữ đối với mỗi validator, cho phép NEAR mở rộng theo chiều ngang bằng cách tăng số lượng phân đoạn để xử lý nhiều giao dịch song song hơn.
NEAR có phải là một Blockchain tốt cho các nhà phát triển không?
NEAR Protocol cung cấp cho các nhà phát triển các hợp đồng thông minh dựa trên WASM có thể viết bằng Rust hoặc JavaScript, một mô hình storage Staking liên kết chi phí lưu trữ hợp đồng với lượng token NEAR đã được Staking, khả năng tương thích Aurora EVM cho các nhà phát triển Ethereum triển khai các hợp đồng Solidity và tên tài khoản dễ đọc. Stateless validation là một cải tiến cơ sở hạ tầng cấp độ giao thức mang lại lợi ích tự động cho tất cả các hợp đồng đã triển khai mà không yêu cầu bất kỳ thay đổi mã nào. Khi số lượng phân đoạn (shard count) tăng lên, khả năng thông lượng của mạng sẽ tăng và các hợp đồng được hưởng lợi từ việc giảm tắc nghẽn. Các nhà phát triển đang đánh giá NEAR để triển khai dApp thực tế nên tham khảo docs.near.org để biết các thông số kỹ thuật SDK và tài liệu công cụ hiện tại.
Stateless validation của NEAR đã đi vào hoạt động chưa?
Giai đoạn 2 của Nightshade, với tính năng xác thực không trạng thái, đã được kích hoạt trên mainnet của NEAR. Các giai đoạn của giao thức được triển khai dần dần và tài liệu được cập nhật bởi NEAR Foundation khi mỗi giai đoạn đạt đến kích hoạt hoàn toàn. Để biết trạng thái triển khai hiện tại nhất, bao gồm ngày kích hoạt chính xác và bất kỳ ghi chú nào dành riêng cho từng giai đoạn, hãy tham khảo blog của NEAR Foundation) và tài liệu chính thức của NEAR Protocol.