Skip to main content

Terminology

Account ID

An Account ID is a unique identifier for an account on the Chromia blockchain. It is generated by hashing a public key or EVM address, depending on the account type.

How Account IDs are generated

  • For native Chromia accounts: Account ID = hash(public_key)
  • For EVM-compatible accounts: Account ID = hash(evm_address)

When you create a keypair using chr keygen, your public key is derived from your private key. The Account ID is then automatically calculated from that public key.

Example flow

Private Key → Public Key → Hash(Public Key) → Account ID

See Key Pair Management for how to generate keys, and FT4 Account Management for how accounts work with authentication.

Auth Descriptor

An auth descriptor defines who can access an account and what they can do with it. Think of it as a sophisticated permission system for blockchain accounts.

Unlike traditional blockchains where one private key = one account, Chromia allows multiple users to control the same account through different auth descriptors, each with different permissions.

Example

  • Alice has an auth descriptor with "Transfer" rights (can send tokens)
  • Bob has an auth descriptor with "Account" rights (can manage the account)
  • Both control the same account, but with different capabilities

Learn more in FT4 Auth Descriptors.

Block

Blocks contain the actual data of the blockchain. Each block is linked to the previous one, creating a continuous chain of blocks.

Blockchain

The decentralized applications (dapps) store their data on blockchains hosted by various nodes. For example, the dapp HorseDapp uses the blockchain HorseBC to store its data while also accessing information from the AllSpeciesRepo blockchain, which is managed by a different dapp.

Blockchain Configuration (BC-Config)

The blockchain configuration defines all aspects of the blockchain's behavior. Signer and replica nodes must understand this configuration to create and verify blocks effectively.

Blockchain RID (BRID)

The global reference ID (BRID) serves as a common identifier for a blockchain across all nodes.

When you need it

  • Running queries with chr query --blockchain-rid <BRID>
  • Connecting clients to your dapp
  • Identifying which blockchain to interact with

Where to find it

  • After running chr node start, look for "Blockchain RID:" in the terminal output
  • In your blockchain configuration
  • In the block explorer

Think of a BRID like a phone number - you need it to "call" (query or interact with) your blockchain.

Chain ID

The Chain ID is a local identifier for the blockchain. It may differ across different nodes.

Command Line Interface (CLI)

A CLI is a non-graphical, text-based interface that allows users to input commands into the computer, which then executes those commands.

Chromia Command-line Interface (Chromia CLI)

The Chromia CLI simplifies the development cycle and deployment of Rell dapps by consolidating all necessary capabilities into a single interface.

Chromia Explorer

The Chromia Explorer is a fully decentralized blockchain explorer that enables users to visualize transactions and activities across various chains.

Chromia Vault

Chromia Vault allows users to manage their tokens and dapps on the Chromia blockchain.

Cross-Chain Communication Subsystem (ICMF)

The Interchain Messaging Facility (ICMF) enables seamless communication and sharing of assets between chains and dapps within the Chromia network.

Decentralized Application (dapp)

A decentralized application, or dapp, is an application designed to operate on a blockchain network. It features a distributed architecture where the backend runs on nodes and the frontend is managed by client software.

Dapp Containers

Dapp Containers provide a framework for resource allocation on provider nodes, enabling dapps on Chromia to run in a decentralized manner, thus eliminating reliance on services like Amazon Web Services (AWS).

Flexible Tokens (FT)

Flexible Tokens is a Chromia token standard that accommodates all fungible, non-fungible, and native CHR tokens within the Chromia network.

Key Pair

A key pair refers to a set of cryptographic keys used to secure and authenticate transactions and communications within the network. It consists of a private key and a public key, which are mathematically related but serve different purposes.

The relationship

Private Key (secret) → Public Key (shareable) → Account ID (your blockchain identity)

How it works

  1. Generate a private key (keep this secret!)
  2. Derive the public key from your private key
  3. Your Account ID is calculated by hashing the public key
  4. Sign transactions with your private key
  5. Others verify your signature using your public key

Generate a key pair using chr keygen - see Key Pair Management for details.

Management Chain (bc0)

The Management Chain (bc0) is a dapp designed to manage the settings for all blockchains in the network. It streamlines the synchronization of configuration changes between nodes, which would otherwise require time-consuming manual updates. bc0 oversees all blockchains in the network, including itself.

Node

A node is a machine that runs the blockchains.

Operation

An operation is a function that modifies blockchain state. When you want to change data on the blockchain (like transferring tokens, creating an account, or updating records), you call an operation.

Key characteristics

  • Modifies data: Operations change the blockchain state
  • Requires signing: Must be signed with a private key
  • Part of transactions: Operations are executed within transactions
  • Costs resources: May require fees or rate limiting

Examples

  • transfer() - Transfer assets between accounts
  • register_account() - Create a new account
  • create_post() - Add a new post to a social dapp

Operations are defined in Rell and executed as part of transactions. See Build dApps to learn about operations vs queries.

Postchain MC (PMC)

Postchain MC is a command-line tool used for submitting transactions to the management chain.

Private Key

The private key is one half of a key pair, used for signing transactions and access control. Keep this secret! Anyone with your private key can control your accounts.

Your private key is used to generate your public key, which in turn is used to create your Account ID. See Key Pair for the full relationship.

Providers

Providers are individuals or organizations responsible for operating the nodes.

Public Key

The public key is the public half of a key pair, used for validating transactions. Unlike the private key, your public key is safe to share - others need it to verify your signatures.

Your public key is derived from your private key, and your Account ID is created by hashing your public key. See Key Pair for the full relationship.

Query

A query is a function that reads data from the blockchain without modifying it. Unlike operations, queries are free and don't require signing.

Key characteristics

  • Read-only: Queries never modify blockchain state
  • No signing required: Anyone can run queries without a private key
  • Free: Queries don't cost fees or consume rate limits
  • Instant: Return data immediately without waiting for block confirmation

Examples

  • get_account_balance() - Check an account's token balance
  • get_user_posts() - Fetch posts from a social dapp
  • hello_world() - Return a simple message

You can test queries using: chr query --blockchain-rid <BRID> query_name

See Build dApps to learn about queries vs operations.

Rell

Rell is the custom programming language specific to the Chromia blockchain. It is designed to resemble modern programming languages, enabling developers to utilize familiar relational programming concepts.

Replica

A replica is a node that verifies data blocks but does not create them.

Signer

A signer is a node that is responsible for verifying and creating data blocks.