Skip to main content

Glossary

Abstract syntax tree

An abstract syntax tree (AST) is a formal representation of an Approval Rule definition. This is how it's created:

  1. A user defines a new Approval Rule in the Intent-Specific Language.
  2. A tokenizer breaks the Approval Rule into tokens representing the smallest elements of the Intent-Specific Language.
  3. A parser validates the syntactic structure of the definition and represents it as an AST, which is stored on-chain.

Action

An Action is an on-chain action (transaction) on the Warden Protocol:

An Action happens after an Approval is granted according to a user-defined Approval Rule, as specified in an Intent. In the future, we're going to implement off-chain Actions, such as sending a message to a Slack channel.


Approval

An Approval is a permission for an Action to be performed. Approvals are granted according to user-defined Approval Rules.


Approval Rule

An Approval Rule is a set of user-defined conditions under which an Action is performed. For example, a Rule can allow executing a transaction only if 2 of 3 approvers sign it. Rules contribute to Warden's Modular Security.

You can define Approval Rules as part of Intents, using the Intent-Specific Language. Warden's Intent Engine ensures the validity of transactions by checking Rules, represented as abstract syntax trees.


Bonded validator

A bonded validator is an active validator participating in consensus (staking). Bonded validators validate transactions, propose blocks, and earn rewards for their contributions to the network.

See also: Unbonding validator, Unbonded validator.


Bridging

Bridging is a method allowing users to transfer assets across different blockchain networks. This technology utilizes cross-chain bridges – smart contracts that receive and lock tokens on the source chain and then mint a corresponding number of wrapped tokens on the destination chain. Warden currently supports bridging through Axelar.

Learn more: Bridging


Builder incentive

The Warden Protocol is open to third-party contributions: core protocol development or building Omnichain Applications in the Warden ecosystem. We'll reward both types of contributions with builder incentives in WARD. More details will be announced soon.


Chain Abstraction

Chain Abstraction is one of Warden's key features. Instead of managing multiple wallets or accounts for different blockchains, you can aggregate them in one Space within the Warden Protocol. Omnichain Applications allow signing transactions and messages at any destination chain.


Delegator

A delegator is an individual or entity that participates in the staking process by delegating their WARD tokens to a validator. Delegation allows securing the network and sharing rewards with validators without the responsibility of running a node.

All delegators inherit the state from their validator: bonded, unbonding, or unbonded. To avoid risks, delegators should perform due diligence on validators and spread their stake over multiple validators. Delegators can also participate in governance.


Full node

A full node is a server running a software (binary) that maintains a complete up-to-date version of a protocol with full transaction history. You can run a full Warden Protocol node yourself.


Governance

The Warden Protocol supports on-chain governance. It's a mechanism allowing the decentralized community to update the protocol through direct voting that is recorded on-chain. Voting is available for the participants of staking: validators and delegators.

The voting power depends on the validator's weight or the amount of WARD a delegator staked. By default, delegators inherit votes of their validator. Alternatively, a delegator can cast their own vote, which will reduce the validator's voting power.


Intent

An Intent is a user-defined script specifying the following:

  • An Action – any on-chain action on the Warden Protocol
  • An Approval Rule – a set of conditions under which the Action is performed

After an Action is initiated, the Intent Engine checks the Approval Rule. If the conditions are met, an Approval is granted, and the Action is carried out.


Intent Engine

The Intent Engine is an immutable on-chain interpreter of the Intent-Specific Language, acting as a gatekeeper. When a user initiates a transaction (Action), the Intent Engine checks the user's Approval Rule, represented as an abstract syntax tree, and returns true or false – granting or not granting an Approval.


Intent-Specific Language

The Intent-Specific Language (ISL) is a language that allows users to configure Approval Rules (as part of Intents). It's composable, extensive, declarative, human-readable, and English-like. The ISL is interpreted by the Intent Engine.


Key

Keys in blockchain are paired to identify users and secure the ownership of wallets:

  • Public key: A public wallet address
  • Private key: A private code for signing transactions on the wallet

Warden offers Modular Key Management: you can use Keychains to generate key pairs and sign transactions. This is how it works: Key request, Signature request.


Key request

A key request is a request asking a Keychain to generate a pair of private and public keys. Keychain operators can charge key request fees for doing it. This is how such requests are processed:

  1. A user sends a key request with a Keychain ID identifying the preferred Keychain.
  2. The Intent Engine checks the user's Approval Rule, specified in an Intent.
  3. If the Approval Rule is met, the Keychain generates a key pair and stores the private key. A Keychain Writer publishes the public key to the Warden Protocol.

Learn more: Key request flow


Key request fee

Keychain operators can set fees in WARD for key requests. The Keychain collect fees to its ID, and then the Keychain operator can manage these funds. Key request fees are indicated in uWARD.


Keychain

Every Omnichain Application has at least one Keychain – a custodian that generates and stores keys and signs transactions. Keychains contribute to Warden's Modular Key Management and Modular Security.

The Warden Protocol allows users or external organizations become Keychain operators. They can onboard their own Keychains and charge fees for key requests and signature requests. Note that Keychain operators typically use MPC networks to generate keys and signatures. To build a Keychain, you can use the Keychain SDK.


Keychain ID

Keychain ID identifies a Keychain in key requests and signature requests and collects fees from users.


Keychain Writer

A Keychain Writer is an account that publishes signatures and public keys on behalf of a Keychain. It happens when the Keychain responds to a key request or a signature request. The Keychain operator can create multiple Writers, each with its own address.


Keychain SDK

The Keychain SDK is a Go SDK that abstracts the communication with Warden Protocol nodes, facilitating the development of Keychains. You can find the available functions here: Keychain SDK functions.


Modular Key Management

Modular Key Management is a flexible approach to managing keys in Warden. Instead of relying on a single provider for key management, users can manage different keys with different Keychains. It reduces the risk of single points of failure and gives users greater control over their keys.


Modular Security

Modular Security is one of Warden's key features. Thanks to modularity, the same Omnichain Application can combine different security models:

  • OApp users can set and manage their own application security settings with the help of Approval Rules and Keychains.
  • Each OApp is collectively secured by all the tokens staked on the protocol.

By decoupling application-layer and protocol-layer security, Warden takes the best from monolithic and isolated security systems and reducing the risks of both.


Omnichain Application

An Omnichain Application (OApp) is a powerful evolution of traditional smart contracts. It allows signing transactions at any chain, while traditional smart contract applications only target users of a single chain.

OApps contribute to all Warden's key features: Chain Abstraction, Modular Security, and Omnichain Interoperability.


Omnichain Contract

An Omnichain Contract is a smart contract that allows signing transactions and messages at any destination chain. It's the main part of any Omnichain Application. Omnichain Contracts contribute to Warden's Chain Abstraction.


Omnichain Interoperability

Omnichain Interoperability is one of Warden's key features. It refers to the possibility of communication between different blockchain networks.

While most interoperability providers focus on particular ecosystems, Warden's goal is connecting different ecosystems. Omnichain Applications not only provide cross-chain swapping and bridging but also are able to exchange information with each other. This allows overcoming the fragmentation of the blockchain landscape.


Oracle service

An oracle is a third-party service that enables smart contracts access real-life data feeds: prices, stock marked data, weather conditions, etc. Warden is integrated with Skip:Connect – an oracle service provided by Skip Protocol and offering mostly price data. Connect's data is validated by Warden's network and written on-chain.

Learn more: Oracle services


Signature request

A signature request is a request asking a Keychain to sign a transaction with a private key. Keychain operators can charge signature request fees for doing it. This is how such requests are processed:

  1. A user sends a signature request with a Keychain ID identifying the preferred Keychain.
  2. The Intent Engine checks the user's Approval Rule, specified in an Intent.
  3. If the Approval Rule is met, a Keychain Writer publishes a signature to the Warden Protocol.

Learn more: Signature request flow


Signature request fee

Keychain operators can set fees in WARD for signature requests. The Keychain collect fees to its ID, and then the Keychain operator can manage these funds. Signature request fees are indicated in uWARD.


Space

A Space is a hub allowing its owner (or multiple owners) to manage keys. Spaces contribute to Warden's Chain Abstraction: they aggregate accounts for different blockchains and provide access to Omnichain Applications.


SpaceWard

SpaceWard is an Omnichain Application functioning as the front-end interface for Warden. It provides a user-friendly platform where you can create Spaces, manage wallets and Intents, and interact with decentralized applications (dApps) and other components of the Web3 ecosystem.

Learn more: SpaceWard documentation


Staking

Staking is the process of participating in the proof-of-stake (POS) consensus mechanism. Validators and delegators stake their WARD tokens for a chance to validate blocks and transactions and earn staking rewards.

The consensus mechanism chooses validators based on their weight. If a validator is successful, its delegators will earn rewards too. If a validator is slashed, the delegator’s stake will be slashed. Staking also allows validators and delegators to participate in governance.


Validator

A validator is an individual or entity that participates in the staking process by running a full or pruned Warden Protocol node and validating blocks and transactions.

Validators act on behalf of their delegators and earn commissions. Each validator has a certain weight and state: bonded, unbonding, or unbonded. Validators can also participate in governance.


Validator's commission

A validator’s commission is the percentage of staking rewards earned by a validator's pool that the validator retains. The rest is distributed to delegators. Validators can configure their own commissions, but only once, when initially declaring candidacy. The following parameters are available:

  • An initial commission
  • A maximum daily commission change rate
  • A maximum commission

Validator's weight

Each validator has its own WARD tokens and tokens bonded by its delegators. The total amount of tokens determines the validator's weight.

The consensus mechanism selects validators to propose blocks based on validators' weight, so a validator with more tokens bonded can propose blocks more frequently and generate more rewards. Weight also determines the validator's voting power in governance.


Unbonded validator

An unbonded validator is an inactive validator that isn't signing blocks. Unbonded validators can't be slashed and can’t earn rewards.

See also: Bonded validator, Unbonding validator.


Unbonding validator

An unbonding validator is a validator that is transitioning from bonded to unbonded.

Validators enter this state either when they decide to stop participating in staking or when they are slashed for misbehavior. During the unbonding period, validators aren't participating in the consensus process and aren't earning rewards.


WARD token

WARD is the native utility token integral to the Warden Protocol ecosystem. It facilitates various operations such as governance, staking, protocol fees and acts as a medium of payment for operators, such as Keychain operators.

Learn more: WARD token


Warden Protocol node

A Warden Protocol node is a server running the software (binary) of the Warden Protocol. To run a blockchain node in Warden, build and run the chain binary called wardend. To interact with a node, use the Node API.

Reasons for running a node include the following:

  • Accessing archive data
  • Providing services: RPC, GRPC, API, etc.
  • Becoming a validator

WARP token

WARP is a dynamic counterpart to WARD, adding liquidity and gamification to the Warden Protocol ecosystem. It fuels engagement and participation through innovative tokenomics.

Learn more: WARP token


YieldWard

YieldWard is an Omnichain Application functioning as a smart yield generator that automates and optimizes your earnings across multiple protocols. YieldWard simplifies your yield and staking experience, letting you enjoy effortless management, decentralized security, and optimal yields.

Learn more: YieldWard documentation


Coming soon

tip

We're currently implementing a breaking update to the Warden Protocol. Omnichain Application developers will be able to build and integrate AI-driven Agents – autonomous trainable programs independently managing complex processes. Below you'll find the key terms related to this update.

Agent

An Agent is an autonomous trainable program driven by artificial intelligence. Agents execute advanced smart Workflows, seamlessly managing complex processes without the need for direct human intervention.

This is a new feature that is coming soon.


Trigger

A Trigger is an event listener that watches for a data update starting a Workflow. There are two types of Triggers:

  • On-chain Trigger: It can listen to such events as changes in a price feed from an oracle.

  • Off-chain Trigger: It can track messages in Slack, updates in a Google spreadsheet, etc. You can implement off-chain Triggers through webhooks and API calls.

This is a new feature that is coming soon.

Workflow

A Workflow is a sequence of actual steps executed by an Agent and defined by an Intent. Each Workflow includes at least one of the following steps, not necessarily coming in the same order:

This is a new feature that is coming soon.