logo

Near

What is NEAR?

NEAR is a carbon-neutral, user-friendly blockchain designed for high performance, security, and scalability. As a layer one, proof-of-stake blockchain, NEAR excels in usability for everyone. It offers human-readable accounts, web-based wallets, and an efficient Access Key system. NEAR's environmental friendliness is evident in its fast, low-cost transactions and minimal energy consumption. This network has a great developers experience with support for JavaScript and Rust, comprehensive documentation, and daily office hours. The network's decentralized nature is maintained by validators following a Proof-of-Stake consensus, ensuring network security and integrity.
NEAR Protocol features several networks, including mainnet, testnet, and localnet, each with independent validators and states. Mainnet is for production-ready smart contracts, testnet for final testing, and localnet for independent development.

NEAR Token Overview

Native Token: The NEAR token is the foundational cryptocurrency within the NEAR Protocol ecosystem.

Multifaceted Use Cases:

Network Security: Vital for securing the network through the mechanism of staking.
Unit of Account: Functions as a standard for transaction processing and data storage.
Medium of Exchange: Facilitates various exchanges within the NEAR ecosystem.
Securing the Network with NEAR Token

Proof-of-Stake Network:

NEAR Protocol operates on a proof-of-stake (PoS) basis. This means the network's defense against attacks and its integrity rely significantly on the staking of NEAR tokens.

Decentralized Infrastructure Contribution

Staked NEAR tokens symbolize a commitment to the network's decentralized server infrastructure. This infrastructure is essential for maintaining the network and executing transactions for both applications and users on NEAR.

Rewards System

Participants who stake their NEAR tokens and contribute to network maintenance are compensated in NEAR, aligning incentives with network performance and security.

Overview of NEAR Protocol Nodes

NEAR Protocol operates on a network of publicly maintained computers, known as "nodes." These nodes uniformly run the 'nearcore' codebase, the latest versions of which are accessible on GitHub. This documentation delineates three distinct types of nodes within the NEAR Protocol.
While all nodes execute the same foundational code, they differ in their configurations, leading to the categorization of node types. Each node type's operational guide is sectioned accordingly for clarity.

Type of nodes

RPC Node

Purpose and Service: RPC nodes serve as RPC service providers, offering public RPC endpoints for developer utilization.
Public RPC Endpoint: The NEAR Foundation maintains a free-for-use public RPC endpoint at http://rpc.mainnet.near.org/.
Community Involvement: Participants are encouraged to operate their own RPC nodes. The NEAR Foundation supports this initiative through Open Source & Public Goods grants.

Archival Node

Data Storage Function: Archival nodes are repositories of the blockchain's complete data, meticulously archiving historical states.
Utility: These nodes are particularly valuable for block explorers, chain analysis, and infrastructure providers, offering in-depth historical blockchain data access.

Validator Node:

Role and Importance: Validator nodes are pivotal in operating the NEAR blockchain, crucial for maintaining the network's health.
Functions: These nodes engage in consensus processes and are responsible for block and chunk production.
Real-Time Monitoring: The current status and activities of NEAR network validator nodes can be viewed live on the NEAR Explorer.

Hardware Requirements

This segment focuses on the hardware prerequisites for running a validator node on the NEAR platform, detailing recommended specifications.

Recommended Hardware Specifications:

CPU: x86_64 processor (Intel or AMD) with a minimum of 8 physical cores.
CPU Features: Must support CMPXCHG16B, POPCNT, SSE4.1, SSE4.2, AVX.
RAM: At least 24GB DDR4.
Storage: 1TB SSD (NVMe SSD preferred; HDD suffices for localnet).
To verify CPU feature compatibility on Linux, execute:
javascript
lscpu | grep -P '(?=.*avx )(?=.*sse4.2 )(?=.*cx16 )(?=.*popcnt )' > /dev/null && echo "Supported" || echo "Not supported".

NEAR Protocol Staking Mechanics

Staking Process: In the NEAR Protocol, staking involves sending a StakeTransaction. This transaction signifies the node's intent to become a validator in upcoming epochs. It must include a public key and the staking amount. Post-transaction, the corresponding node awaits two epochs to qualify as a validator.
Minimum Staking Requirement: To qualify as a NEAR validator, the staking amount must surpass the 'seat price,' a dynamically calculated threshold based on overall NEAR tokens staked by other validators.
Current seat price details can be found on the NEAR Explorer page: NEAR Explorer Validators.

Smart Contract-Based Staking in NEAR

Delegation Mechanism: Unlike some PoS networks, NEAR does not implement delegation at the protocol level. Validators may attract delegators through customized staking pool contracts, defining commission fees and reward distribution.
Safety and Integration: NEAR utilizes a staking pool factory with a whitelisted staking smart contract, enhancing fund security for delegators. Validators must deploy a staking pool to a NEAR account and integrate it with their validator node.

Direct Staking via NEAR CLI

Option for Validators: Validators can choose to stake directly without a staking pool, a decision that excludes potential delegators and reduces commission possibilities. For this method:

Install the near-cli.

Utilize the following commands:
To Stake:
javascript
near stake <accountId> <publicKey> --amount <amount>
To Unstake:
javascript
near stake <accountId> <publicKey> --amount 0

Delegating Stakes on NEAR

Process Overview: NEAR token holders can delegate their tokens to validators' staking pools to earn rewards and contribute to network security.
Choosing a Validator
: Delegators should assess validators' performance and commissions before delegating.