TLDR: Generalized TCRs lower the costs of construction and deployment of TCRs. This optimization can spawn a large number of use cases where the community is empowered to decide which information should be listed in a fair and transparent way.

Most apps we use are lists. Messages, videos, torrents, pictures, news and search results are pieces of information ordered and displayed as lists according to a set of rules.

Some list apps accrue so much influence that item listing rules become tools of economic and political warfare, steering public opinion and elections results by simply hiding or displaying certain items.

This became clear in the 2016 US Election, when personal data was mined on Facebook to display targeted ads which allegedly swayed voter opinion. Controlling the list of which information is (and isn't) displayed on Facebook is a phenomenal tool to influence public opinion.

Furthermore, the use of closed-source, black box algorithms (such as YouTube's content ID) for content curation makes it impossible to properly understand how content makes it to the trending topics or the criteria that determines which pieces will get flagged for removal. Users are expected to simply trust the middleman despite past breaches of that trust.

The power of centralized listing became evident again at the end of 2019, when Google removed a number of crypto related apps (including MetaMask) from its app store.

In the information age, whoever controls the list, controls the power. If we want the power to be in the hands of the people, we need a decentralized and transparent method to empower the community decide which items should be accepted in the list.

This is precisely the problem that Token Curated Registries seek to resolve. Decentralized arbitration coupled with the right economic incentives can create a powerful tool for community curated information.

Kleros' Token Curated Registries

In 2019, Kleros deployed six TCRs related to token listings, which were used to ensure code quality, exchange compliance and fraud detection. The T²CR and its badges demonstrated that the space can self-regulate and punish projects which attempt to violate listing rules.

An interface of Kleros' Token² Curated Registry, where the community decides which tokens should be accepted into the list.

Over $350.000 dollars moved through Kleros’s contracts, as projects participated on the decentralized listing process of the Ethfinex (now Deversifi) and uniswap.ninja exchanges.

The Uniswap.Ninja exchange, displaying tokens with the ERC20 Badge.

Since the list is public, other Dapps can simply plug into it to benefit from this community curation process. Examples of this are:

Kleros Escrow. This Dapp uses three TCRs powered by Kleros: The T²CR for token information, the ERC20 badge and the Stablecoin badge to display and sort tokens for payment.

The Kleros Escrow Dapp displays tokens with the Stablecoin Badge first in the list.

DutchX: To simplify and speedup its token listing process, the DutchX exchange simply plugs into the already populated T²CR of ERC20 tokens. No one needs to ask for Kleros or dxDAO permission to get their tokens listed or open pull requests. Likewise, there is no one that can be compelled to censor or prevent a token from making it into the exchange. Additionally, a token token that complies with the DutchX listing criteria can request the DutchX badge to be displayed first in the exchange.

The DutchX Auction UI pulling tokens with the ERC20 Standard Badge.

Moving Forward: Generalizing the Token Registry

The Kleros Token² Curated List brought remarkable results, and also a lots of questions from our community:

Politics : “Could you make a token curated list of politicians that have no history of involvement with corruption?”

: “Could you make a token curated list of politicians that have no history of involvement with corruption?” Business Ethics : “Please make a curated list of companies that don’t use sweat shops? That are eco friendly? Can we do badges for companies that lobby congress and spread false information on CO2 and climate change?”

: “Please make a curated list of companies that don’t use sweat shops? That are eco friendly? Can we do badges for companies that lobby congress and spread false information on CO2 and climate change?” News Media : “Can you please make a TCR of news articles that do not contain fake news? Actually could we make a decentralized YouTube?”

: “Can you please make a TCR of news articles that do not contain fake news? Actually could we make a decentralized YouTube?” Government Transparency : “How hard would it be to make one that accepts evidence of dubious actions by governments? Like a Wikileaks that only accepts legit evidence? Could we deploy a DAO to reward successful submitters?”

: “How hard would it be to make one that accepts evidence of dubious actions by governments? Like a Wikileaks that only accepts legit evidence? Could we deploy a DAO to reward successful submitters?” Content Addressing : “What if we make a torrent registry of malware free files? Torrents on the blockchain would be quite hard to take down right? Could we make one that accepts IPFS links for other Dapps as well? Also how about a TCR of TCRs to make navigating the whole thing easier?”

: “What if we make a torrent registry of malware free files? Torrents on the blockchain would be quite hard to take down right? Could we make one that accepts IPFS links for other Dapps as well? Also how about a TCR of TCRs to make navigating the whole thing easier?” App Discovery: “Can we make a list of open-source, safe apps? Like a Google Play or App Store that is resistant to centralized hammers?”

Imagination was running wild. However, it is not our job at Kleros to build the whole stack of software for each specific case. Our job is to build the tools which empower the governance of communities. In this case, by providing them the infrastructure to address the use cases they need.

This is the goal of Kleros' Generalized Token Registry: a way for anyone to easily deploy a curated list with any combination of fields, listing criteria and deposit values.

We set out to build a protocol such that a smart contract adhering to a set of rules rules could be displayed by a user interface that did the same. This way, users can have a single UI to view, submit, challenge items, consume evidence and so on.

A screenshot of Kleros' TCR Factory.

A TCR of TCRs makes it easier for users to navigate.

The submission form for a TCR of torrent magnets.

Special care was taken to follow the best coding practices and provide an improved user experience for users when compared to the T2CR. At the time of publication, the mobile-friendly UI does not require a wallet connection to view data, but supports five different wallet options out of the box for users that want to send transactions.

Current wallet options to connect to the GTCR.

So at what point are we on development of this? When GTCR?

The project is already at an advanced stage:

Construction and deployment of new TCRs;

Viewing and searching for TCRs items;

The whole request-challenge protocol, including crowdfunded appeals and evidence submissions with attachments and all.

But there's still a few critical components to be built:

The notification system: It is critical to let users know about changes on the status of an item with a request they are involved in on a timely manner. This includes emails, and other bots.

It is critical to let users know about changes on the status of an item with a request they are involved in on a timely manner. This includes emails, and other bots. Security: At Kleros, security is a priority. Though the contracts are scrutinized by the team thoroughly, we do not put any contracts live without first setting a bug bounty for white hat hackers.

At Kleros, security is a priority. Though the contracts are scrutinized by the team thoroughly, we do not put any contracts live without first setting a bug bounty for white hat hackers. More field types: At the moment, the stack supports short text fields, numbers boolean fields and ethereum addresses. This limits the possible applications of the TCR so we must add support for images and long texts.

At the moment, the stack supports short text fields, numbers boolean fields and ethereum addresses. This limits the possible applications of the TCR so we must add support for images and long texts. Tests, tests and tests.

Keep an eye out for updates! Follow the blog and our telegram group for more advancements. Want to see the code? Follow the developments at:

We're really excited about our upcoming TCR and look forward to all the interesting ways the community will find to use the protocol and grow the ecosystem!

Where Can I Find Out More?

Join the community chat on Telegram.

Visit our website.

Follow us on Twitter.

Join our Slack for developer conversations.

Contribute on Github.

Download our Book