Let’s talk about various XRC Tokenization Standards On XDC Network.

ruslan wing
6 min readMay 17, 2022

--

A brief exploration of XinFin token standards like XRC-223, XRC-777, XRC-1155, and XRC-1337.

Summary

An XRC token standard is a framework for programming how a token launched on XinFin will function. XRC-20 is the most widely used XDC Network token standard, but it is far from the only standard in use.

Contents

  • Introduction to XRC Token Standards
  • What Is XRC-223?
  • What Is XRC-777?
  • What Is XRC-1155?
  • What Is XRC-1337?

Introduction to XRC Token Standards

The crypto ecosystem is populated by two main types of blockchain-based digital assets: cryptocurrencies and tokens. Cryptocurrencies are the native assets of particular blockchains, while tokens represent units of value developed on top of pre-existing blockchain networks. For example, the XDC network’s native cryptocurrency is XDC, and the other digital assets the network supports — such as GBEX, SRX, and XSP — are XinFin tokens.

Rather than creating entirely new blockchains from scratch, many new blockchain projects elect to build on top of existing blockchain architecture that is already well-established and suited to their needs. Without a native blockchain to host a native cryptocurrency, the vast majority of blockchain-based digital assets exist as tokens that are supported by underlying networks like XinFin. The vast majority of tokens in existence within the blockchain ecosystem are built on top of the XDC Network.

Tokenization standards outlining rules and technical specifications have developed over time, helping to increase the speed and efficiency with which developers can create new tokens. These standards are essentially templates that provide built-in interoperability with other tokens of the same structure. Interoperability and composability are especially important considerations when building new decentralized finance (DeFi) applications that require compatibility with the existing DeFi ecosystem.

The XRC-20 token standard is by far the most popular and widely used standard interface for creating fungible (or interchangeable) tokens. With it, developers and entrepreneurs can build new tokens that interoperate within XinFin’s ecosystem of decentralized apps (dApps), but despite it being the most popular, other XRC token standards have seen rising popularity and use cases as well, like the XRC-721 tokenization standard, which represents the most prevalent iteration of non-fungible tokens (NFTs).

In addition to XRC-20 and XRC-721, a number of other XRC token standards have emerged to support a variety of different use cases, and are increasing in popularity throughout the XinFin ecosystem. Here, we will discuss some of those lesser-known XinFin tokens, many of which are targeted at improving various functionalities of the XRC-20 standard, and all of which are aimed at furthering the growth and development of the XDC network at large.

What Is XRC-223?

XRC-223 was conceived to help prevent tokens from accidentally becoming permanently lost due to mistakes made when transferring tokens between wallets or smart contracts. The XRC-20 token standard noticeably lacks any sort of recovery mechanism for tokens sent to incompatible addresses or smart contracts. If, for example, XRC-20 tokens are sent to an XRC-721 smart contract, or to any smart contract that isn’t designed to support XRC-20 tokens, the tokens would not be rejected and returned — instead, they would be lost forever. This is because the receiving contract simply would not be able to recognize incoming transactions of XRC-20 tokens. These accidents happen more often than many consider, with several dollars’ worth of tokens permanently lost due to incompatible addresses and other errors made during token transactions.

The XRC-223 standard proposes added token recovery functionality — with a feature called tokenFallback — that would enable XRC-223 smart contracts to recognize incoming transactions and return tokens to their original sender in case they are accidentally sent to incompatible smart contracts. By design, XRC-223 is backward compatible with XRC-20 and therefore would support all existing and functional XRC-20 contracts and services.

What Is XRC-777?

Similarly to XRC-223, XRC-777 is characterized by efforts to improve upon the widespread XRC-20 tokenization standard platform, featuring the addition of several advanced features for token interaction.

First, XRC-777 entails the creation of a new classification of addresses known as operators, which are able to send tokens on behalf of another address. Within the XRC-777 token framework, operators are envisioned to be verified smart contract facilitators such as a cryptocurrency exchange, or an automatic charging system — both of which might accelerate their services by automatically withdrawing or sending funds from a token holder’s wallet (with permission).

While, in theory, every XinFin address is responsible for moving its own tokens, separating the concepts of operators and holders could allow for more flexibility in the XinFin ecosystem. This framework is also designed to allow token holders to easily authorize and revoke permission from particular operators who might send and receive tokens on their behalf.

Another advanced feature of XRC-777 tokens is the ability to send and receive hooks, which enable smart contracts, addresses, and operators to be made aware of incoming transactions and control and reject which tokens they send and receive. By deploying hooks to accept or reject certain types of tokens, transaction recipients may limit the occurrence of incompatible token type transfers which might otherwise result in tokens becoming lost.

The XRC-777 tokenization standard is backwards compatible with XRC-20 and builds upon its functionality rather than rendering the standard obsolete. XRC-777 has also been proposed to improve upon perceived shortcomings and vulnerabilities of the older XRC-223 tokenization standard, with hooks reprising the role of XRC-223’s tokenFallback function.

What Is XRC-1155?

The XRC-1155 multi-token standard introduces a powerful smart contract interface that enables smart contracts to manage any amount of fungible and non-fungible token types. Typically, XRC-20 tokens, XRC-721 tokens, and other token types are wholly managed by their own respective smart contracts. XRC-1155, however, is designed to allow for any number of token types to be supported and managed by a single smart contract. This functionality has the potential to greatly reduce computational overhead for decentralized applications (dApps) composed of different types of tokens and smart contracts.

For example, the rise of blockchain-based gaming has introduced the possibility for game developers to create potentially thousands of different token types — both fungible and non-fungible — to fulfill various in-game functionalities. XRC-1155 smart contracts are capable of supporting all major XinFin standards in one convenient location. XRC-1155 also allows for new functionalities such as transferring multiple types of tokens in a single transaction, cutting down on overall transaction costs, and increasing transaction speed and network efficiency.

What Is XRC-1337?

XRC-1337 is a proposed XRC token standard designed to accommodate blockchain-based recurring subscription models, such as monthly subscriptions to access particular content. Monthly subscription models — and other Software-as-a-Service (SaaS) models — are widely used by traditional providers of popular web-based services such as editorial content, streaming platforms, cloud-based storage, and countless other applications. XRC-1337 is designed to help bring the same recurring payment structure to the world of blockchain and decentralized services.

When processing recurring payments, a traditional web merchant will typically store a token that is retrieved from a payment processor that in turn grants them permission to charge a customer’s designated payment method, like a credit card. In this case, the merchant doesn’t actually store the credit card information itself, but only a token (or abstracted representation) of that information that helps retrieve the necessary data from the third-party processing service upon the date of the recurring payment.

XRC-1337 is similarly structured to enable users to sign transaction input data that allows merchants to store the customer’s signature to retrieve recurring payments in the form of pre-signed transactions according to a set schedule. So, for example, a yearly subscription divided into monthly payments would require 12 pre-signed transactions. This system would allow users to make recurring contributions to blockchain-based projects of their choosing with the ability to cancel at any time — a less complex, less committal version of actually purchasing and holding a project’s native token.

Final thoughts

The tried-and-true XRC-20 token standard is still the most widely used as of 2022 — and for good reason. Many believe it presents the narrowest surface area for potential attacks, and that other more complex tokenization standards But as XinFin and its DeFi ecosystem continue to grow exponentially, perhaps the need for more complex, interoperable, and accident-proof tokenization standards might trump the simplicity and ubiquity of established standards like XRC-20.

If you wish to deploy an XRC-20 token or create a new token on XDC Network check out the required tools at https://xinfin.org/xdc-chain-network-tools-and-documents or check out my previous article https://ruslanwing100.medium.com/how-to-create-and-deploy-an-xrc-20-token-on-the-xinfin-blockchain-network-939a300267c4 or you can use XDC Origin where a non-technical person can easily create their own token on XDC Network

For support, let’s connect via XDC Network’s Social media communities on Slack, Twitter, and Discord.

--

--

No responses yet