Chromia protocols
Chromia offers a set of protocols that help you manage accounts, tokens, and communication between blockchains on the network. These protocols work together to create a strong foundation for your digital assets.
- FT4 (Flexible Tokens, version 4): The backbone of account and token management in Chromia.
- Originals: Chromia's feature-rich protocol for minting composable and mutable NFTs.
- ICMF (Inter-chain Messaging Facility): Enables communication between blockchains within a dapp cluster.
- ICCF (Inter-chain Confirmation Facility): Enables communication between blockchains running in different dapp clusters.
Let's look at each of these in more detail.
FT4 protocol
The FT4 protocol governs account creation and management, token registration, ownership, and transfers. It supports both fungible tokens and simple non-fungible tokens. One of its significant features is cross-chain transfer capability, which allows the movement of tokens across dapps and blockchains on the Chromia network.
Asset and account management
FT4 ensures secure asset (token) registration and account management. Users can register assets with unique identifiers and properties, enabling precise control over digital assets. The protocol also facilitates comprehensive account management, linking accounts to specific assets and managing user sign-up through a flexible authentication server.
FT4 user accounts can be identified with EVM account addresses, meaning that dapp developers can allow users to authenticate using an existing EVM wallet, such as MetaMask. Alternatively, Chromia provides a native wallet solution, the Chromia Vault.
Secure transfers and cross-chain capabilities
Asset transfers in FT4 are streamlined and secure. The protocol offers tools for minting, verifying, and transferring assets. Assets can be transferred between accounts on the same blockchain, or across blockchains on the Chromia network. They can also be bridged to and from EVM chains external to the Chromia network using Chromia's bridging framework.
For more detailed information, visit the Chromia FT4 documentation.
Originals protocol
The FT4 protocol allows you to register both fungible and non-fungible token assets, but the data you can associate with a pure FT4 NFT is limited. This is where the Originals protocol comes in. Originals builds on top of FT4 and allows you to register and mint NFTs with extensive metadata, mutability, and composability.
NFTs are unique digital assets widely used for digital art and collectibles. Ethereum's ERC-721 and ERC-1155 are the prevailing standards for NFTs. Still, they have limitations, such as high on-chain data storage costs and reliance on centralized services for hosting metadata and images.
Chromia offers a solution by enabling more extensive metadata and on-chain storage of NFT files. While FT4 manages ownership of tokens, Originals defines the characteristics of those tokens. Originals NFTs can be compared to classes in object-oriented programming; they can have multiple data properties, own other Original NFTs, and have methods that allow them to change over time in a secure and structured way. Everything associated with an Original (including images and other files) is stored on-chain. This ensures complete decentralization, making NFTs on Chromia self-reliant.
Cross-chain communication protocols
Inter-Chain Messaging Facility (ICMF)
By default, blockchains running in a single dapp cluster can't communicate with each other. In this context,
communication means that one blockchain can read another's data and act accordingly. To enable this functionality, a
developer must implement the ICMF, which acts as an event-based service where
blockchain_#1
emits events while blockchain_#2
subscribes to those events, reads them, and invokes the corresponding
functions based on their content. For more information about the protocol and integration, refer to the
ICMF documentation.
Inter-Chain Confirmation Facility (ICCF)
Blockchains running in different dapp clusters also can't exchange messages directly. While the ICMF protocol only
handles communication within a single dapp cluster, the ICCF enables communication for blockchains running in completely
separate dapp clusters. The ICCF is a client application that acts as an intermediary between blockchain_#1
and
blockchain_#2
. It submits transactions on blockchain_#1
, waits for validation, and then presents the proof of the
validated transaction to blockchain_#2
. This proof allows for constructing a valid transaction on blockchain_#2
to
update the account balance.
Suppose a user wants to transfer assets from their account on blockchain_#1
to their account on blockchain_#2
. The
ICCF client initiates the asset transfer, which is validated on blockchain_#1
. Then, the ICCF constructs the proof
based on the validated transaction and submits it as a transaction to update the account balance on blockchain_#2
. For
more information about the protocol and integration, refer to the ICCF documentation.
Next up
Next, we'll look at Generic Transaction Protocol (GTX) that Postchain uses for sending and receiving transactions. GTX is encoded into the base protocol GTV.