Bài viết này được tạo bởi AI. Vui lòng xác minh thông tin quan trọng một cách độc lập.

Mô hình Tài khoản NEAR: Tên, Khóa & Lưu trữ

Crypto Wiki|Jul 24, 2026|4.5 (500 đánh giá)
Tóm tắt AI

Learn how NEAR's account model works: human-readable names, multi-key permissions, sub-accounts, and storage staking explained for developers and user...

NEAR Protocol là gì? (Giới thiệu ngắn gọn)

NEAR Protocol là một blockchain Layer-1, bằng chứng cổ phần được xây dựng cho khả năng tiếp cận của nhà phát triển, với phí giao dịch thấp và có thể dự đoán được cùng kiến trúc sharding được thiết kế để mở rộng quy mô mà không ảnh hưởng đến khả năng sử dụng. Đồng sáng lập bởi Illia Polosukhin và Alexander Skidanov, NEAR Protocol được thiết kế ngay từ đầu với trải nghiệm nhà phát triển và khả năng tiếp cận của người dùng cuối làm mục tiêu chính, thay vì điều chỉnh khả năng sử dụng cho một kiến trúc được xây dựng cho các mục đích khác.

NEAR mở rộng quy mô thông qua cơ chế phân mảnh Nightshade, một cơ chế phân phối trạng thái tài khoản và tính toán trên các chuỗi xử lý song song, cho phép mạng lưới xử lý khối lượng giao dịch cao mà không làm tăng phí theo tỷ lệ. Giao thức hỗ trợ các hợp đồng thông minh được biên dịch sang WebAssembly và giữ chi phí gas thấp theo thiết kế, trái ngược với các blockchain nơi sự biến động phí tạo ra rào cản cho cả nhà phát triển và người dùng. Việc phát triển hệ sinh thái được giám sát bởi Quỹ NEAR, tổ chức quản trị phi lợi nhuận trước đây đã vận hành ví NEAR chính thức trước khi chuyển giao cho các giải pháp thay thế do cộng đồng quản lý.

Biểu hiện rõ ràng nhất của triết lý ưu tiên nhà phát triển này là mô hình tài khoản của NEAR, một thiết kế tái tư duy cách thức hoạt động của định danh và quản lý quyền hạn trên Blockchain ngay từ những bước đầu tiên.

Tóm tắt nhanh: Sơ lược về Mô hình Tài khoản NEAR

Tóm tắt nhanh cho người đọc lướt:

  • Tài khoản NEAR sử dụng các tên dễ đọc (ví dụ: alice.near) thay vì các chuỗi băm mã hóa như địa chỉ 0x742d35Cc... của Ethereum.
  • Mỗi tài khoản có thể giữ nhiều khóa truy cập cùng lúc, mỗi khóa có mức quyền hạn riêng, từ quyền kiểm soát không giới hạn đến các tương tác hợp đồng có phạm vi hạn chế.
  • Bất kỳ tài khoản NEAR nào cũng có thể triển khai một Hợp đồng Thông minh; không có loại tài khoản hợp đồng riêng biệt như trong Ethereum.
  • Các tài khoản phụ tuân theo một không gian tên phân cấp (ví dụ: contract.myapp.near thuộc myapp.near), hoạt động giống như các tên miền phụ cho các tài khoản Blockchain.
  • Các tài khoản phải duy trì số dư Token NEAR tối thiểu tỷ lệ thuận với mức sử dụng bộ nhớ Trên chuỗi của họ, một cơ chế được gọi là lưu trữ Staking.
  • Hệ thống phân quyền đa khóa gốc của NEAR đạt được nhiều mục tiêu mà Ethereum đang hướng tới với trừu tượng hóa tài khoản (EIP-4337), nhưng thông qua một cách tiếp cận kiến trúc khác được xây dựng ngay từ đầu.

Mô hình Tài khoản NEAR là gì?

Mô hình tài khoản NEAR là kiến trúc định danh và quyền hạn trên chuỗi xác định cách đặt tên tài khoản, trạng thái mà chúng lưu trữ, cách quản lý quyền truy cập thông qua các quyền khóa chi tiết và mối liên hệ của chúng với các hợp đồng thông minh trên Blockchain NEAR.

Trong bối cảnh blockchain, "mô hình tài khoản" đề cập đến hệ thống mà một giao thức sử dụng để đại diện cho những người tham gia trên chuỗi: một tài khoản chứa gì, cách nó được xác định, cách nó cho phép giao dịch và liệu nó có thể thực thi mã hay không. Ethereum sử dụng một mô hình tài khoản; Bitcoin sử dụng một mô hình hoàn toàn khác (mô hình UTXO, nơi số dư được theo dõi dưới dạng các đầu ra giao dịch chưa được chi tiêu thay vì số dư tài khoản). NEAR sử dụng một mô hình dựa trên tài khoản, nhưng cách triển khai của nó khác biệt đáng kể so với Ethereum theo những cách quan trọng đối với cả khả năng sử dụng và phát triển ứng dụng.

Một tài khoản NEAR giữ năm thứ cùng lúc: một ID tài khoản duy nhất, một số dư NEAR Token, trạng thái tài khoản (lưu trữ dữ liệu trên chuỗi), một hợp đồng thông minh tùy chọn đã triển khai được biên dịch sang WebAssembly (WASM, cho phép các hợp đồng được viết bằng Rust hoặc JavaScript), và một hoặc nhiều khóa truy cập với các cấp quyền khác nhau. Cấu trúc thống nhất này có nghĩa là không có sự tách biệt giữa "tài khoản người dùng" và "tài khoản hợp đồng thông minh" như trong Ethereum. Bất kỳ tài khoản NEAR nào cũng có thể tùy chọn lưu trữ một hợp đồng thông minh mà không trở thành một loại đối tượng khác. Các tài khoản không có hợp đồng được triển khai hoạt động như các tài khoản người dùng thông thường; các tài khoản có hợp đồng được triển khai đồng thời là tài khoản người dùng và là nơi lưu trữ hợp đồng.

Bối cảnh thực tế để hiểu tại sao điều này lại quan trọng chính là ứng dụng phi tập trung (dApp), một ứng dụng phần mềm chạy trên mạng lưới Blockchain thay vì các máy chủ tập trung. Kiến trúc tài khoản của NEAR được thiết kế để giúp các tương tác dApp trở nên bảo mật hơn và dễ tiếp cận hơn so với những gì các mô hình tài khoản Blockchain hiện có cho phép. Hệ thống ID tài khoản là nơi triết lý thiết kế này được thể hiện rõ nhất, và đó cũng là nơi hành trình khám phá kiến trúc bắt đầu.

Để xem thông số kỹ thuật đầy đủ, hãy tham khảo tài liệu về mô hình tài khoản NEAR Protocol tại docs.near.org/concepts/basics/accounts/model.


Tài khoản có tên và Tài khoản ngầm định: Cách NEAR Xác định Người dùng

NEAR định danh người dùng và ứng dụng trên chuỗi thông qua hai định dạng tài khoản: tài khoản có tên (named accounts), sử dụng các chuỗi ký tự dễ đọc như alice.near, và tài khoản ẩn định (implicit accounts), là các chuỗi hex 64 ký tự được tạo ra từ một Public Key.

Named Accounts: Danh tính Blockchain dễ đọc

Tài khoản định danh trên NEAR là các định danh tài khoản mà con người có thể đọc được, tuân theo cấu trúc giống như tên miền, kết thúc bằng .near trên Mainnet và .testnet trên testnet, thay thế cho các chuỗi hash mật mã được sử dụng bởi các blockchain như Ethereum.

Sự tương phản là rõ rệt: alice.near so với 0x742d35Cc6634C0532925a3b844Bc454e4438f44e. Cả hai đều là các mã định danh Blockchain hợp lệ, nhưng một cái thì dễ đọc và cái còn lại yêu cầu xác minh sao chép-dán cẩn thận. Hãy coi tài khoản có tên NEAR như một địa chỉ email: dễ đọc và gắn liền với một danh tính, thay vì một chuỗi ký tự ngẫu nhiên yêu cầu so sánh từng ký tự để xác minh.

Các tài khoản định danh tuân theo các quy tắc đặt tên cụ thể: ID tài khoản là các chuỗi ký tự chữ và số, có thể sử dụng dấu chấm làm dấu phân cách, phải có độ dài từ 2 đến 64 ký tự và phải kết thúc bằng .near trên Mainnet hoặc .testnet trên mạng thử nghiệm. Cấu trúc phân tách bằng dấu chấm tạo ra một hệ thống phân cấp tương tự tên miền: myapp.near là một tài khoản định danh Top-level và contract.myapp.near là một tài khoản phụ nằm dưới nó (tìm hiểu thêm về các tài khoản phụ trong phần tiếp theo).

Cơ sở lý luận về UX đằng sau các tài khoản được đặt tên không chỉ dừng lại ở tính thẩm mỹ. Các mã định danh dễ đọc giúp giảm rủi ro gửi giao dịch đến nhầm tài khoản, làm cho các địa chỉ hợp đồng dễ khám phá hơn và giảm bớt gánh nặng nhận thức khi quản lý các danh tính Trên chuỗi. Với bất kỳ ai từng phải kiểm tra kỹ lưỡng địa chỉ MetaMask ba lần trước khi gửi giao dịch, sức hấp dẫn của alice.near so với một chuỗi hex 42 ký tự là một lợi ích cụ thể thay vì trừu tượng. Người dùng đăng ký và quản lý các tài khoản được đặt tên thông qua MyNEARWallet tại mynearwallet.com, giao diện tài khoản chính do cộng đồng duy trì (trang wallet.near.org ban đầu do NEAR Foundation vận hành đã bị ngừng hoạt động).

Tài khoản ẩn: Định dạng tài khoản thay thế

Tài khoản ngầm là định dạng tài khoản thứ hai trên NEAR: các chuỗi thập lục phân (hex) gồm 64 ký tự thường, được suy ra trực tiếp từ Public Key. Chúng xuất hiện ngay khi token NEAR được gửi đến ID tài khoản đó mà không yêu cầu bất kỳ hành động nào từ một tài khoản hiện có.

Tính năngTài khoản được đặt tênTài khoản ngầm định
Định dạng ID tài khoảnChuỗi dễ đọc (ví dụ: alice.near)Chuỗi thập lục phân 64 ký tự (lấy từ Public Key)
Cách tạoĐăng ký qua giao dịch từ tài khoản hiện cóTồn tại ngay khi token NEAR được gửi đến ID tài khoản
Trường hợp sử dụng điển hìnhTài khoản người dùng, hợp đồng dApp, danh tính có thể đọc đượcNạp tiền sàn giao dịch, ngữ cảnh theo chương trình/tự động
Yêu cầu tài khoản hiện có để tạoKhông

Điểm khác biệt thực tế quan trọng: một tài khoản có tên yêu cầu một tài khoản trên chuỗi hiện có để tài trợ cho việc đăng ký của nó thông qua một giao dịch, trong khi một tài khoản ngầm định sẽ tự động tồn tại khi tiền đến ID tài khoản đã được suy ra. Điều này làm cho tài khoản ngầm định trở nên hữu ích trong các bối cảnh cần khởi tạo từ đầu, hoặc nơi tên dễ đọc cho con người không cần thiết. Các sàn giao dịch tiền điện tử thường sử dụng tài khoản ngầm định khi ghi có tiền gửi NEAR cho người dùng, tạo một ID tài khoản duy nhất từ Public Key của người dùng mà không yêu cầu một tài khoản trên chuỗi hiện có.

Một điểm cần làm rõ một cách thẳng thắn: các tài khoản ngầm định không phải là ẩn danh. Chúng được tạo ra một cách xác định từ một Public Key và hoàn toàn minh bạch trên chuỗi. Từ "ngầm định" đề cập đến cách ID tài khoản được tạo ra (từ chính Public Key, mà không cần bước đăng ký rõ ràng), chứ không phải đề cập đến bất kỳ đặc tính quyền riêng tư nào.

Tài khoản có tên và tài khoản ngầm định thiết lập cách NEAR nhận dạng người tham gia Trên chuỗi. Tài khoản cũng có thể chứa các tài khoản khác dưới không gian tên của chúng, và cấu trúc phân cấp đó là nơi tài khoản phụ xuất hiện.

--- ## Tài khoản phụ: Tổ chức tài khoản theo cấp bậc trên NEAR

Các tài khoản phụ trên NEAR hoạt động tương tự như các tên miền phụ trên web: giống như docs.myapp.comapi.myapp.com là các địa chỉ riêng biệt thuộc tên miền myapp.com, thì token.myapp.nearstaking.myapp.near là các tài khoản Blockchain riêng biệt thuộc không gian tên myapp.near.

Tài khoản phụ (sub-account) là một tài khoản có ID tồn tại dưới không gian tên (namespace) của tài khoản cha. Tài khoản contract.myprotocol.near là một tài khoản phụ của myprotocol.near. Chỉ tài khoản cha mới có thể tạo tài khoản phụ: myprotocol.near có thể tạo contract.myprotocol.near, nhưng không tài khoản nào khác có thể tạo tài khoản dưới không gian tên đó nếu không có sự cho phép của tài khoản cha.

Quan trọng: Tài khoản mẹ không thể truy cập tài sản hoặc trạng thái của tài khoản con sau khi tài khoản con được tạo. Tài khoản con là các tài khoản hoàn toàn độc lập, chỉ chia sẻ một không gian tên, không phải là các đơn vị trực thuộc được quản lý bởi tài khoản mẹ.

Sự độc lập này là một điểm gây nhầm lẫn phổ biến. Mối quan hệ cha-con chỉ áp dụng tại thời điểm tạo. Sau khi contract.myprotocol.near tồn tại, nó có các khóa truy cập riêng, số dư NEAR token riêng và trạng thái Trên chuỗi riêng của nó. Tài khoản cha myprotocol.near không có đặc quyền đặc biệt nào đối với nó.

Đối với các nhà phát triển dApp, tài khoản phụ cung cấp một mẫu cấu trúc thực tế. Vì bất kỳ tài khoản NEAR nào cũng có thể triển khai một Hợp đồng Thông minh (được biên dịch sang WASM), các tài khoản phụ trở thành một cách tự nhiên để cung cấp cho mỗi thành phần hợp đồng một ID tài khoản dễ đọc và có tổ chức. Một giao thức DeFi có thể triển khai token.myprotocol.near cho hợp đồng Token của nó, staking.myprotocol.near cho hợp đồng Staking của nó và governance.myprotocol.near cho hợp đồng quản trị của nó. Mỗi tài khoản là một tài khoản riêng biệt với hợp đồng riêng, trạng thái riêng và quản lý khóa riêng, nhưng không gian tên làm cho mối quan hệ giữa các thành phần trở nên dễ hiểu ngay lập tức đối với bất kỳ ai đọc chuỗi. Để biết hướng dẫn tạo tài khoản phụ từng bước, hãy xem tài liệu về tài khoản phụ NEAR tại docs.near.org/concepts/basics/accounts/model#named-accounts.

Việc hiểu cách đặt tên và tổ chức tài khoản sẽ tạo tiền đề cho lớp kiến trúc tiếp theo: cách chúng được bảo mật và cấp quyền thông qua khóa truy cập.


Khóa truy cập NEAR: Quyền truy cập đầy đủ (Full Access) so với Quyền gọi hàm (Function Call Permissions)

Khóa truy cập NEAR (NEAR access keys) là lớp quyền kiểm soát các hành động có thể được thực hiện trên một tài khoản NEAR, và là tính năng đặc trưng nhất về mặt kiến trúc của hệ thống: một tài khoản NEAR duy nhất có thể nắm giữ đồng thời nhiều cặp khóa độc lập, mỗi cặp khóa có cấp độ quyền hạn riêng.

Hệ thống đa khóa của NEAR hoạt động như thế nào

Không giống như hầu hết các tài khoản blockchain, nơi một Private Key duy nhất kiểm soát mọi thứ, một tài khoản NEAR duy nhất có thể chứa nhiều cặp khóa độc lập, mỗi cặp được gán một loại quyền cụ thể, từ quyền kiểm soát không hạn chế đến các tương tác hợp đồng có phạm vi hẹp.

Các khóa truy cập NEAR sử dụng các cặp khóa Ed25519 theo mặc định (với secp256k1 cũng được hỗ trợ để tương thích với chuỗi công cụ Ethereum). Hệ thống phân quyền được xây dựng trên Top các cặp khóa này là điều làm cho mô hình của NEAR trở nên khác biệt về mặt kiến trúc. Hãy coi nó giống như một chùm chìa khóa: một Khóa Quyền truy cập Đầy đủ là chìa khóa vạn năng mở được mọi ổ khóa; một Khóa Quyền truy cập Gọi Hàm là một chìa khóa chuyên dụng chỉ mở một cánh cửa cụ thể. Mỗi giao dịch được ký bởi bất kỳ khóa truy cập nào trên một tài khoản đều tiêu tốn gas được thanh toán bằng token NEAR, nhưng phí giao dịch của NEAR thấp và có thể dự đoán được theo thiết kế, trái ngược với mức định giá gas biến động lịch sử của Ethereum.

Để biết chi tiết về cách thêm và quản lý các khóa truy cập bằng lập trình, hãy xem tài liệu tham khảo về khóa truy cập NEAR tại docs.near.org/concepts/basics/accounts/access-keys.

Khóa truy cập toàn quyền: Kiểm soát tài khoản không giới hạn

Khóa Quyền truy cập Toàn phần trên NEAR là một cặp khóa có thể thực hiện bất kỳ hành động nào trên tài khoản mà nó được liên kết: chuyển token, triển khai hợp đồng thông minh, tạo tài khoản phụ, thêm hoặc xóa các khóa khác và xóa chính tài khoản đó.

Bởi vì Khóa truy cập toàn quyền kiểm soát toàn bộ tài khoản, nó mang hồ sơ rủi ro tương đương với mật khẩu chính. Khóa truy cập toàn quyền không bao giờ được chia sẻ với các ứng dụng của bên thứ ba và nên được lưu trữ trong ví lạnh (ví cứng hoặc lưu trữ ngoại tuyến) cho bất kỳ tài khoản nào nắm giữ số dư đáng kể. Nếu Khóa truy cập toàn quyền bị xâm phạm, kẻ tấn công sẽ có toàn quyền kiểm soát tài khoản mà không có cơ chế khôi phục gốc trừ khi một cơ chế đã được cấu hình trước đó.

Việc so sánh với Ethereum ở đây mang lại nhiều thông tin hữu ích. Trong Ethereum, Private Key duy nhất của bạn cho một Tài khoản được sở hữu bên ngoài (EOA) hoạt động như một Khóa Quyền truy cập đầy đủ (Full Access Key): nó kiểm soát mọi thứ và không có cách thức tích hợp sẵn nào để cấp cho dApp một khóa có quyền thấp hơn cho một tương tác hợp đồng cụ thể. Mọi kết nối dApp thông qua MetaMask đều để lộ toàn bộ khóa tài khoản của bạn cho quy trình ký giao dịch. Hạn chế về một khóa duy nhất đó chính xác là vấn đề mà việc trừu tượng hóa tài khoản EIP-4337 được thiết kế để giải quyết trên Ethereum. Trên NEAR, giải pháp này đã được xây dựng ngay trong mô hình tài khoản cơ sở.

Khóa truy cập gọi hàm (Function Call Access Keys): Quyền hạn có phạm vi để bảo mật dApp

Khóa Truy cập Lời gọi Hàm (Function Call Access Key) là một khóa bị hạn chế, chỉ có thể gọi các phương thức được chỉ định trên một Hợp đồng Thông minh nhất định, với hạn mức phí gas tùy chọn giúp giới hạn tổng chi phí trả phí.

Trong khi Full Access Key không bị giới hạn, thì Function Call Access Key được giới hạn một cách chính xác. Khóa này chỉ định rõ: một ID tài khoản hợp đồng mà nó được phép gọi, các phương thức trên hợp đồng đó mà nó có thể thực thi (hoặc tất cả các phương thức công khai nếu không bị giới hạn thêm), và một hạn mức NEAR Token tùy chọn để giới hạn lượng gas mà khóa có thể chi trả trước khi cần được bổ sung. Một khi hạn mức đã cạn kiệt, khóa không thể ký thêm các giao dịch cho đến khi được nạp thêm hoặc thay thế.

Trường hợp sử dụng xác thực dựa trên phiên là nơi Khóa Truy cập Cuộc gọi Hàm thể hiện giá trị thực tế của chúng đối với việc phát triển dApp. Khi bạn kết nối dApp với tài khoản NEAR của mình, dApp sẽ yêu cầu một Khóa Truy cập Cuộc gọi Hàm được giới hạn cho hợp đồng của chính nó. Khóa này được lưu trữ trong phiên trình duyệt của bạn. Từ thời điểm đó, dApp có thể gửi giao dịch thay mặt bạn (phê duyệt một giao dịch, tạo (minting) một NFT, tương tác với một hợp đồng trò chơi) mà không yêu cầu bạn ký từng hành động riêng lẻ. Khóa Truy cập Toàn quyền của bạn không bao giờ rời khỏi ví bảo mật của bạn. Nếu dApp bị xâm phạm hoặc độc hại, thiệt hại sẽ được giới hạn: kẻ tấn công chỉ có thể gọi các phương thức hợp đồng cụ thể mà khóa được giới hạn, và chỉ trong phạm vi hạn mức cho phép. Một Khóa Truy cập Cuộc gọi Hàm hoạt động giống như một token phiên trong ứng dụng web: nó cấp quyền truy cập tạm thời, có phạm vi cho các hành động cụ thể mà không tiết lộ toàn bộ thông tin đăng nhập tài khoản.

Tính năngKhóa truy cập đầy đủKhóa gọi hàm
Phạm viTất cả hành động tài khoảnChỉ các phương thức hợp đồng được chỉ định
Chuyển khoản TokenCó (không giới hạn)Không (trừ khi được bật cụ thể)
Triển khai hợp đồngKhông
Quản lý khóa/tài khoảnCó (thêm khóa, xóa tài khoản)Không
Giới hạn cho phép GasKhông giới hạnGiới hạn cho phép tùy chọn
Vị trí lưu trữ điển hìnhVí phần cứng / lưu trữ lạnhPhiên duyệt web / dApp
Rủi ro nếu bị xâm phạmMất toàn bộ tài khoảnGiới hạn trong phạm vi cho phép và hợp đồng được chỉ định
Tương tự nhưMật khẩu chính / chìa khóa tổng của ngôi nhàMã token phiên / thẻ khóa truy cập giới hạn

Các khóa truy cập kiểm soát những hành động mà một tài khoản có thể thực hiện. Staking lưu trữ quy định những gì một tài khoản phải nắm giữ để tồn tại trên chuỗi.


Lưu trữ Staking: Tại sao tài khoản NEAR cần số dư tối thiểu

Staking lưu trữ trên NEAR là cơ chế mà theo đó mọi tài khoản phải duy trì một số dư NEAR Token tối thiểu tỷ lệ thuận với lượng lưu trữ trên chuỗi (trạng thái) mà tài khoản đó sử dụng.

Cơ chế hoạt động như sau: NEAR phân bổ bộ nhớ Trên chuỗi theo đơn vị byte. Với mỗi byte trạng thái được lưu trữ trong một tài khoản (bản ghi số dư, mã hợp đồng, dữ liệu đã lưu trữ, khóa truy cập), một lượng tương ứng token NEAR phải được giữ trong số dư tài khoản. Các token đó không bị chi tiêu hay phá hủy; chúng được dành riêng dưới dạng số dư bị khóa để bù đắp cho dung lượng lưu trữ. Nếu bạn giảm dung lượng lưu trữ của tài khoản bằng cách xóa trạng thái hoặc dữ liệu hợp đồng, các token tương ứng sẽ được mở khóa và trả lại vào số dư khả dụng của bạn. Storage Staking hoạt động như một khoản đặt cọc bảo mật có thể hoàn lại: bạn khóa một lượng token NEAR tương ứng với dung lượng lưu trữ mà tài khoản của bạn sử dụng, và bạn sẽ nhận lại các token đó nếu bạn giảm dung lượng lưu trữ của mình.

Mục đích của thiết kế này là về kinh tế: nó ngăn chặn tình trạng phình to dữ liệu (state bloat) bằng cách đảm bảo rằng bên hưởng lợi từ việc lưu trữ trên chuỗi chịu chi phí cho việc lưu trữ đó. Nếu không có cơ chế như thế này, một mạng lưới blockchain có thể tích lũy một lượng lớn dữ liệu "chết" không giới hạn từ các tài khoản hoặc hợp đồng bị bỏ rơi, làm suy giảm hiệu suất cho tất cả người tham gia.

Cụ thể, tỷ lệ staking lưu trữ là khoảng 1 Token NEAR cho mỗi 10 KB dung lượng lưu trữ trên chuỗi và một tài khoản NEAR mới tạo, trống sẽ yêu cầu số dư tối thiểu khoảng 0,00182 NEAR để bù đắp cho dấu chân trạng thái cơ bản của nó. Hãy xác minh các số liệu hiện tại so với tài liệu staking lưu trữ của NEAR tại docs.near.org/concepts/storage/storage-staking trước khi dựa vào các con số này để lập kế hoạch phát triển, vì các thông số giao thức sẽ thay đổi theo các bản nâng cấp.

Đối với các nhà phát triển hợp đồng thông minh, hàm ý của việc sử dụng dung lượng lưu trữ liên quan đến Staking đòi hỏi kế hoạch chủ động. Khi một tài khoản NEAR triển khai một hợp đồng, bản thân mã hợp đồng chiếm dung lượng lưu trữ trong trạng thái tài khoản. Một tệp nhị phân hợp đồng lớn hơn yêu cầu một số dư dự trữ lớn hơn tương ứng. Nếu hợp đồng của bạn lưu trữ dữ liệu quan trọng (hồ sơ người dùng, số dư Token, phiếu bầu quản trị), tài khoản lưu trữ hợp đồng đó phải duy trì số dư đủ lớn để chi trả cho cả mã hợp đồng và trạng thái tích lũy. Đây là một yêu cầu về vốn tăng theo mức sử dụng ứng dụng, và nó cần được tính toán trong mô hình kinh tế của bạn trước khi triển khai.

Storage staking tạo ra yêu cầu khóa vốn thực sự. Một số nhà phát triển thấy điều này gây hạn chế so với các chuỗi không yêu cầu số dư lưu trữ dự phòng. Sự đánh đổi này là có chủ đích: sự hạn chế này ngăn chặn trạng thái mạng lưới tăng trưởng không giới hạn và các token có thể khôi phục được. Tuy nhiên, sự hạn chế này là có thật và cần được lập kế hoạch thay vì chỉ được phát hiện ra sau khi triển khai.

Storage staking với validator staking: Đây là hai cơ chế riêng biệt trên NEAR. Storage staking khóa các token NEAR dựa trên dấu chân dữ liệu trên chuỗi của tài khoản của bạn; những token đó đóng vai trò là số dư dự phòng tỷ lệ thuận với dung lượng lưu trữ được sử dụng. Validator staking khóa các token NEAR đối với cơ chế đồng thuận, nơi các validator stake token để tham gia vào quá trình sản xuất khối và nhận phần thưởng staking. Bài viết này chỉ đề cập đến storage staking. Đừng nhầm lẫn giữa hai cách sử dụng từ "staking" này.

Phí gas (chi phí thực thi giao dịch) tách biệt với storage staking. Phí gas được tiêu thụ cho mỗi giao dịch và thanh toán bằng token NEAR tại thời điểm ký; storage staking là số dư dự phòng được duy trì cùng với tài khoản chừng nào trạng thái liên quan còn tồn tại.

Việc tìm hiểu về storage staking giúp hoàn thiện bức tranh về cách các tài khoản NEAR hoạt động độc lập. Câu hỏi tiếp theo là kiến trúc này so sánh với Ethereum như thế nào.

Mô hình tài khoản NEAR với Ethereum: So sánh trực tiếp

NEAR và Ethereum có những cách tiếp cận khác biệt căn bản đối với kiến trúc tài khoản trên chuỗi, và những sự khác biệt này có ảnh hưởng quan trọng đến cách các nhà phát triển xây dựng các ứng dụng phi tập trung cũng như cách người dùng quản lý danh tính trên chuỗi của họ.

Hệ thống Hai Tài khoản của Ethereum so với Mô hình Tài khoản Hợp nhất của NEAR

Bảng dưới đây so sánh hai mô hình tài khoản trên tám khía cạnh kiến trúc. Sự khác biệt đáng kể nhất là Ethereum tách biệt các tài khoản người dùng (Tài khoản thuộc sở hữu bên ngoài, hay EOA) khỏi các tài khoản hợp đồng thông minh thành hai loại riêng biệt, trong khi NEAR sử dụng một loại tài khoản thống nhất duy nhất cho cả hai.

Tính năngNEAR ProtocolEthereum
Loại tài khoảnLoại thống nhất (mọi tài khoản đều có thể là hợp đồng)Hai loại: EOA (người dùng) và Tài khoản Hợp đồng (mã code)
Định danh tài khoảnTên dễ đọc (ví dụ: alice.near)Mã băm mật mã (ví dụ: 0x742d...)
Quản lý khóaNhiều khóa cho mỗi tài khoản với quyền được giới hạn phạm viKhóa Private Key duy nhất cho mỗi EOA
Lưu trữ hợp đồng thông minhMọi tài khoản đều có thể triển khai một hợp đồngYêu cầu một Tài khoản Hợp đồng riêng biệt
Giới hạn phạm vi quyềnKhóa truy cập gọi hàm giới hạn quyền truy cập của dApp một cách tự nhiênKhông có giới hạn phạm vi quyền tự nhiên (EIP-4337 thêm lớp này)
Mô hình lưu trữTài khoản giữ token NEAR theo tỷ lệ với trạng thái (lưu trữ staking)Phí Gas bao trả tính toán; không có phí nạp lưu trữ cho mỗi tài khoản
Hỗ trợ tài khoản phụCó (không gian tên phân cấp: contract.myapp.near)Không có hệ thống tài khoản phụ tự nhiên
Trừu tượng hóa tài khoảnĐược thiết kế sẵn tự nhiên (nhiều khóa và quyền giới hạn phạm vi)EIP-4337 được thêm vào như một lớp giao thức riêng biệt

Sự tách biệt giữa EOA và Tài khoản Hợp đồng của Ethereum tạo ra những rào cản trong thực tế. Hầu hết các tương tác dApp đều yêu cầu một EOA để gọi một Tài khoản Hợp đồng, có nghĩa là người dùng phải quản lý cả hai loại này dưới dạng các thực thể riêng biệt. Một EOA được kiểm soát bởi một Private Key duy nhất mà không có cách thức mặc định nào để phân quyền: bất kỳ dApp nào kết nối với tài khoản MetaMask đều có thể yêu cầu chữ ký, điều này làm lộ toàn bộ khóa tài khoản trong luồng giao dịch. Mô hình của Ethereum có cơ sở thiết kế rõ ràng và đã phục vụ tốt các mục tiêu ban đầu, nhưng hạn chế của việc sử dụng một khóa duy nhất đã trở nên rõ ràng khi các tương tác dApp ngày càng trở nên thường xuyên và đa dạng hơn.

Loại tài khoản hợp nhất của NEAR loại bỏ sự phân tách EOA/hợp đồng. Mỗi tài khoản NEAR có khả năng là một máy chủ hợp đồng, và hệ thống đa khóa với Khóa Truy cập Gọi Hàm (Function Call Access Keys) giải quyết hạn chế khóa đơn mà không yêu cầu một lớp giao thức riêng biệt. Cả NEAR và Ethereum đều hoạt động theo mô hình dựa trên tài khoản, trái ngược với mô hình UTXO của Bitcoin, nơi số dư được theo dõi dưới dạng các đầu ra giao dịch chưa chi tiêu (UTXO) thay vì trạng thái tài khoản; sự khác biệt giữa NEAR và Ethereum nằm ở cách các tài khoản đó được cấu trúc và cấp phép, chứ không phải ở mô hình cơ bản.

Mô hình Tài khoản của NEAR và Khả năng Trừu tượng Hóa Tài khoản Ethereum (EIP-4337)

EIP-4337 (trừu tượng hóa tài khoản) là nỗ lực của Ethereum nhằm cung cấp cho các EOA loại quyền hạn có thể lập trình và các khả năng của khóa phiên mà mô hình tài khoản của NEAR vốn đã được thiết kế để tích hợp ngay từ đầu.

EIP-4337 là một tiêu chuẩn Ethereum chính thức (không phải là một đề xuất lý thuyết) cho phép các ví Hợp đồng Thông minh hoạt động như những đối tượng ưu tiên, hỗ trợ xác thực giao dịch có thể lập trình, khóa phiên (session keys), khôi phục xã hội (social recovery) và các giao dịch được tài trợ. Nó yêu cầu cơ sở hạ tầng bundler cụ thể để vận hành và đang được triển khai tích cực trên toàn hệ sinh thái Ethereum, mặc dù đây không phải là một bản nâng cấp chung được áp dụng tự động cho tất cả các tài khoản.

Sự tương đồng với Function Call Access Keys của NEAR là có thật: cả hai phương pháp đều giải quyết vấn đề cấp cho dApp quyền truy cập có phạm vi và giới hạn cho các tương tác cụ thể mà không làm lộ khóa tài khoản đầy đủ. Một nhà phát triển đã quen thuộc với các khóa phiên EIP-4337 sẽ thấy Function Call Access Keys của NEAR quen thuộc về mặt khái niệm. Sắc thái quan trọng là đây là các cách triển khai khác biệt về mặt kiến trúc của các ý tưởng chồng lấp, chứ không phải là các hệ thống giống hệt nhau. Mô hình phân quyền đa khóa của NEAR là tính năng gốc của giao thức cơ bản; EIP-4337 xếp lớp logic ví Hợp đồng Thông minh lên Top mô hình EOA hiện có của Ethereum. Các vấn đề mà chúng giải quyết chồng lấp đáng kể; các cơ chế thì khác nhau. Để biết thông số kỹ thuật EIP-4337 đầy đủ, hãy xem thông số kỹ thuật trừu tượng hóa tài khoản EIP-4337 tại eips.ethereum.org/EIPS/eip-4337.

Đối với các nhà phát triển Ethereum đang đánh giá NEAR, có hai cầu nối hệ sinh thái đáng chú ý. Aurora tại aurora.dev, một môi trường tương thích EVM được xây dựng trên NEAR, cho phép các nhà phát triển Ethereum triển khai các hợp đồng Solidity trên cơ sở hạ tầng của NEAR trong khi các tài khoản NEAR đóng vai trò là lớp định danh cơ bản. Các nhà phát triển làm việc trên cả hai hệ sinh thái có thể sử dụng Rainbow Bridge tại rainbowbridge.app để chuyển tài sản giữa các tài khoản NEAR và địa chỉ Ethereum mà không cần dựa vào lưu ký tập trung.

Giờ đây khi kiến trúc đã rõ ràng, đây là những gì việc tạo và quản lý tài khoản NEAR thực sự bao gồm trên thực tế.

Bắt đầu: Tạo và Quản lý Tài khoản NEAR của bạn

Bạn có thể tạo tài khoản NEAR đầu tiên của mình thông qua MyNEARWallet tại mynearwallet.com, giao diện chính do cộng đồng duy trì để đăng ký tài khoản và quản lý khóa NEAR. Hãy xác minh đề xuất ví chính thức hiện tại tại thời điểm bạn đọc nội dung này, vì hệ sinh thái ví NEAR vẫn đang tiếp tục phát triển; các ứng dụng ví tương thích khác cũng tồn tại song song với MyNEARWallet.

Nếu bạn đến từ Ethereum và MetaMask, sự khác biệt về khái niệm này đáng để tìm hiểu trước khi bạn bắt đầu. Ví MetaMask chủ yếu là một trình quản lý khóa và trình ký giao dịch cho các EOA của Ethereum: nó lưu trữ Private Key của bạn và cung cấp nó cho các dApp để ký giao dịch. Tài khoản NEAR là một danh tính đầy đủ trên chuỗi với tên có thể đọc được, lưu trữ trạng thái trên chuỗi, quyền khóa có thể lập trình và lưu trữ hợp đồng tùy chọn. Ứng dụng ví (MyNEARWallet) là giao diện; tài khoản NEAR là đối tượng trên chuỗi. Đây là những điều khác nhau, và sự khác biệt này quan trọng đối với cách bạn suy nghĩ về quản lý khóa.

Việc tạo tài khoản NEAR yêu cầu một số dư NEAR Token ban đầu nhỏ để đáp ứng yêu cầu staking lưu trữ cơ bản (khoảng 0,00182 NEAR cho một tài khoản trống, như đã nêu trong phần Lưu trữ Staking ở trên). Số dư ban đầu này chi trả cho dấu chân trạng thái cơ bản của một tài khoản mới.

Ba rủi ro cần biết trước khi bạn bắt đầu. Thứ nhất, nếu bạn mất Khóa Truy cập Toàn quyền mà không thiết lập cơ chế khôi phục nào, tài khoản sẽ không thể khôi phục. Lưu trữ Khóa Truy cập Toàn quyền của bạn trong bộ nhớ lạnh và thiết lập bất kỳ Quyền chọn khôi phục nào có sẵn trước khi bạn cần đến chúng. Thứ hai, các token NEAR được dành cho Staking lưu trữ sẽ bị khóa miễn là trạng thái liên quan còn tồn tại; đây là một khoản cam kết vốn, không phải là một khoản phí. Thứ ba, việc xóa tài khoản trên NEAR là không thể đảo ngược. Để xem hướng dẫn chi tiết từng bước tạo tài khoản, tham khảo tài liệu dành cho nhà phát triển NEAR tại docs.near.org/concepts/basics/accounts/model

https://docs.near.org/concepts/basics/accounts/model).

Các câu hỏi thường gặp nhất về mô hình tài khoản NEAR được giải đáp bên dưới.

Câu hỏi thường gặp: Mô hình Tài khoản NEAR

Các câu hỏi dưới đây giải đáp những điểm gây nhầm lẫn phổ biến nhất về mô hình tài khoản của NEAR, kèm theo các tham chiếu chéo đến các phần liên quan ở trên dành cho những người đọc muốn tìm hiểu đầy đủ.

Bất kỳ tài khoản NEAR nào cũng có thể triển khai một Hợp đồng Thông minh phải không?

Đúng vậy. Trong NEAR, bất kỳ tài khoản nào cũng có thể tùy chọn triển khai một Hợp đồng Thông minh được biên dịch sang WebAssembly (WASM). Không có loại tài khoản hợp đồng riêng biệt, không giống như Ethereum nơi việc triển khai một hợp đồng yêu cầu tạo một Tài khoản Hợp đồng riêng biệt. Một tài khoản không có hợp đồng được triển khai sẽ hoạt động như một tài khoản người dùng tiêu chuẩn; một tài khoản có hợp đồng được triển khai sẽ hoạt động đồng thời như cả hai. Hãy xem phần Mô hình Tài khoản NEAR là gì? ở trên để biết giải thích đầy đủ về kiến trúc.

Các khóa truy cập của NEAR giúp các dApp an toàn hơn khi sử dụng như thế nào?

Khóa truy cập Gọi hàm giới hạn một dApp vào các phương thức hợp đồng cụ thể với giới hạn cho phép gas tùy chọn. Khi bạn kết nối với một dApp bằng Khóa truy cập Gọi hàm được giới hạn cho hợp đồng của dApp đó, Khóa truy cập Toàn quyền của bạn (và toàn bộ số dư tài khoản của bạn) sẽ không bao giờ bị lộ cho ứng dụng của bên thứ ba. Nếu dApp bị xâm phạm, thiệt hại sẽ được giới hạn trong phạm vi cho phép và hợp đồng được chỉ định. Xem Mục Khóa truy cập NEAR để biết chi tiết đầy đủ.

Điều gì xảy ra nếu tôi mất Khóa truy cập Toàn quyền của mình?

Việc mất Khóa Quyền truy cập đầy đủ mà không có cơ chế khôi phục được thiết lập trước sẽ khiến tài khoản không thể khôi phục vĩnh viễn. Bạn không thể Reset hoặc khôi phục Khóa Quyền truy cập đầy đủ theo cách bạn Reset mật khẩu, bởi vì không có cơ quan trung ương nào kiểm soát tài khoản. Hãy luôn lưu trữ Khóa Quyền truy cập đầy đủ trong kho lưu trữ lạnh an toàn và cấu hình mọi quyền chọn khôi phục tài khoản hiện có thông qua ứng dụng ví của bạn trước khi bạn cần đến chúng. Một số ví cung cấp các cấu hình khôi phục qua mạng xã hội hoặc khôi phục đa khóa.

Phí gas có giống với storage Staking không?

Không. Phí gas là chi phí thực thi cho mỗi giao dịch được tiêu thụ tại thời điểm giao dịch được ký; chúng được thanh toán bằng NEAR Token và không còn tồn tại sau khi giao dịch hoàn tất. Storage staking là số dư NEAR Token dự trữ tối thiểu được duy trì cùng với tài khoản chừng nào trạng thái trên chuỗi liên quan còn tồn tại. Cả hai đều liên quan đến NEAR Token, nhưng chúng hoạt động như các cơ chế hoàn toàn riêng biệt. Xem phần Storage Staking để xem giải thích đầy đủ.

Mô hình tài khoản của NEAR liên quan như thế nào đến trừu tượng hóa tài khoản (account abstraction - EIP-4337) của Ethereum?

Hệ thống ủy quyền đa khóa gốc của NEAR đạt được nhiều mục tiêu mà EIP-4337 được thiết kế để bổ sung cho Ethereum, bao gồm quyền dựa trên phiên có phạm vi cho các tương tác dApp và logic khóa có thể lập trình. Hai giải pháp này là các triển khai khác biệt về kiến trúc của các ý tưởng chồng chéo: Cách tiếp cận của NEAR là gốc của giao thức cơ sở, trong khi EIP-4337 thêm lớp logic ví hợp đồng thông minh trên mô hình EOA hiện có của Ethereum. Chúng giải quyết các vấn đề tương tự thông qua các kiến trúc khác nhau. Xem phần So sánh NEAR với Ethereum để phân tích chi tiết.

Sự khác biệt giữa tài khoản có tên và tài khoản ngầm định trên NEAR là gì?

Tài khoản được đặt tên là các định danh dễ đọc cho con người (ví dụ: alice.near) được đăng ký thông qua một giao dịch từ một tài khoản hiện có, kết thúc bằng .near trên mainnet và .testnet trên testnet. Tài khoản ngầm định là các chuỗi thập lục phân gồm 64 ký tự bắt nguồn trực tiếp từ một public key, chúng tự động tồn tại khi token NEAR được gửi đến ID tài khoản đó, mà không yêu cầu giao dịch đăng ký nào. Xem phần Tài khoản được đặt tên và Tài khoản ngầm định để biết bảng so sánh đầy đủ.

Một tài khoản NEAR có thể chứa bao nhiêu khóa truy cập?

Một tài khoản NEAR có thể giữ nhiều khóa truy cập cùng lúc, với mỗi khóa được gán loại quyền riêng (Khóa Truy cập Toàn phần hoặc Khóa Truy cập Gọi Hàm) và, đối với Khóa Truy cập Gọi Hàm, phạm vi hợp đồng và hạn mức gas riêng. Không có giới hạn cứng nào được ghi nhận về số lượng khóa cho mỗi tài khoản. Khả năng đa khóa này là điểm khác biệt mô hình quyền của NEAR so với cách tiếp cận mỗi EOA chỉ có một khóa của Ethereum. Xem phần Khóa Truy cập NEAR để biết chi tiết.

Staking lưu trữ có nghĩa là tôi sẽ mất token NEAR của mình không?

Không. Các token NEAR được dự trữ cho việc staking lưu trữ sẽ bị khóa nhưng không bị mất đi. Chúng vẫn ở trong tài khoản của bạn dưới dạng số dư dự trữ và sẽ được giải phóng trở lại số dư khả dụng nếu bạn giảm dung lượng dữ liệu trên chuỗi của tài khoản bằng cách xóa trạng thái. Các token này là một khoản nạp để đối ứng với việc sử dụng lưu trữ, không phải là một khoản phí. Xem phần Storage Staking để biết cơ chế và các số liệu hiện tại.

--- ## Kết luận: Mô hình Tài khoản NEAR có ý nghĩa gì đối với Nhà phát triển và Người dùng

Mô hình tài khoản NEAR phản ánh một loạt các lựa chọn kiến trúc có chủ đích: tên tài khoản dễ đọc giúp hạ thấp rào cản gia nhập và giảm thiểu lỗi giao dịch; hệ thống phân quyền đa khóa giúp giảm thiểu rủi ro bảo mật cho các tương tác dApp bằng cách giới hạn phạm vi truy cập của Bên thứ ba mà không làm lộ khóa chính; staking lưu trữ tạo ra sự tương thích về mặt kinh tế giữa việc sử dụng tài nguyên và chi phí; và cấu trúc tài khoản-hợp đồng thống nhất giúp loại bỏ sự phân tách giữa EOA/hợp đồng vốn gây ra trở ngại cho việc phát triển trên Ethereum.

Yêu cầu về số dư tối thiểu để lưu trữ khi Staking là một ràng buộc thực tế cần lên kế hoạch, chứ không phải là một chi tiết nhỏ. Nếu ứng dụng của bạn lưu trữ trạng thái đáng kể trên chuỗi, yêu cầu về số dư dự trữ sẽ tỷ lệ với trạng thái đó. Hãy lên kế hoạch ngân sách cho vấn đề này trong mô hình kinh tế của ứng dụng trước khi triển khai, thay vì sau đó.

Các bước tiếp theo theo vai trò:


Thông số kỹ thuật trong bài viết này phản ánh NEAR Protocol tại thời điểm viết bài. NEAR Protocol đang được phát triển tích cực; hãy xác minh các số liệu hiện tại với docs.near.org trước khi dựa vào các giá trị số cụ thể cho việc lập kế hoạch phát triển hoặc vận hành. Nội dung này chỉ dành cho mục đích thông tin và không cấu thành lời khuyên tài chính hoặc đầu tư.