Tech-savvy users can get more involved in a blockchain protocol than the general community usually does - by running nodes that boost the network's security, robustness, diversity, and decentralization. In this guide, I will introduce the various types of nodes you can run on Oasis, with an overview of the distinctive roles they play in the protocol.
Validator Node
Oasis is a proof-of-stake (PoS) protocol, which makes the validator node the single most critical component of the network. If you are running such a node, your responsibilities will range from verifying transactions to proposing new blocks to be added to the blockchain.

Since Oasis has a modular architecture separating the consensus and the execution layers, where this node operates is an important indicator of its role in the network. Operating from the consensus layer, the validator node functions by staking the network's native token, ROSE. When you run this node, you participate in the consensus process by validating transactions, signing blocks, and ensuring the integrity of the blockchain.
Compute Nodes
As mentioned, the execution layer is separate in Oasis's architecture, and there are multiple parallel runtime instances possible, known as paratimes. So, compute nodes are those that participate in executing smart contracts and processing related transactions in the network.

If you are running such a node, your responsibilities will include handling computations, running decentralized applications (dApps), data processing, and executing privacy-preserving smart contracts.
Currently, there are three types of compute nodes on Oasis, based on operational paratimes.
Sapphire Compute Node - If you are running this node, you are helping execute privacy-preserving smart contracts and process transactions on Oasis's confidential EVM runtime, Sapphire. This type of node is crucial to maintaining the confidentiality of sensitive data that is run through trusted execution environments (TEEs). As a result, data remains encrypted and confidential while being processed, and enhanced security is enabled throughout.
Cipher Compute Node - Its role and functionality are the same as Sapphire, with only one exception: it is run on Oasis's WASM runtime, Cipher.
Emerald Compute Node - This pertains to Oasis's original, non-confidential EVM runtime, Emerald. The function of this node is limited to executing smart contracts, validating transactions, and other operations within the paratime. There is no privacy-preserving component here.
Client Nodes
The role of a client node is to enable an interface for users or other applications to interact with the network.

It is functionally different from compute nodes. If you are running such a node, your responsibilities will include performing blockchain queries, submitting transactions, and retrieving other data from the network.
There are half a dozen different types of client nodes on Oasis that you can run at the moment.
Non-Validator Node - This type of client node supports network operations and decentralization instead of taking part in the consensus process of validating and proposing new blocks.
Sapphire Client Node - This type of client node interacts specifically with the Sapphire runtime and its EVM-compatible privacy functionality.
Cipher Client Node - This type of client node interacts specifically with the Cipher runtime and its WASM-compatible privacy functionality.
ROFL Node - It is a specialized Sapphire client node that supports TEEs and can host ROFL apps integrating the runtime off-chain logic (ROFL) framework.
Observer Node - It is a specialized client node for confidential paratimes like Sapphire and Cipher. So, if you run this node, you help with confidential smart contract queries.
Stateless Node - It is a specialized client node that can operate without maintaining state, enabling instant bootstrapping, which makes it valuable for ROFL development.
Archive Node & Seed Node
These are a couple of specialized nodes on Oasis. The archive node stores the entire blockchain history. This is a critical function for in-depth analysis and development of the protocol, where you help ensure that all the past iterations of the network state remain accessible.
The seed node is like an address book for the network. By running this node, you ensure crucial support for other nodes so that they can discover peers and join the network. Like the non-validator node, it has no part to play in the consensus process.
Key Manager Node
Decentralized key management is an essential primitive on Oasis. This makes the Key Manager Node a highly specialized node on the network.

If you are running such a node, your responsibilities center around securely managing cryptographic keys used in confidential computing. As a result, the node becomes vital for the network's secure, decentralized, and privacy-focused operations. It helps maintain the myriad privacy-preserving features as well as ensure secure encryption and decryption of data processed within the TEEs.
Services
Sometimes the nodes you run come with optional add-on services or interface layers sitting on top of the nodes. Let's look at the services that you can bundle with your nodes.
Rosetta Gateway
The Rosetta Gateway is a specialized service that connects to a non-validator node. It implements the Rosetta API and provides a simplified, standardized interface to interact with the blockchain. If you opt for this service, it will ease the integration between Oasis and various external platforms, including exchanges, wallets, custodians, and blockchain-based applications.
Public gRPC
As a specialized service, this is a helpful management tool for developers that is not scoped to any single node type. The Oasis gRPC protocol provides an efficient, real-time, and cross-platform communication channel between the Oasis node and the network. As each node opens a gRPC socket, the public endpoints run a proxy exposing a small, safe subset of that API publicly. It thus acts as a filtering layer standing guard on what the node's raw gRPC socket would otherwise expose.
Web3 Gateway
The Web3 Gateway is a specialized service that connects to a compute or a client node with EVM compatibility. It interacts with Oasis via the standard Web3 protocol, thereby opening a bridge to external Web3-based applications. It enables developers to access and leverage the tools, libraries, and practices in line with Ethereum development while also benefiting from Oasis's features and functionalities of privacy and confidential computation.
This concludes the overview of the nodes you can run on Oasis. It is by no means comprehensive, as the prerequisites and the steps to run the nodes are too detailed to include here. So, I will follow this up with subsequent guides that cover them in the detail they warrant. Stay tuned.
For technical specs, APIs, architecture, and integration guides, the Oasis documentation is your starting point.
For direct support on specific issues, the Oasis engineering team and other node operators are available in the node-operators channel on the official Discord.
Top comments (0)