Part of this article has been published in SIGBPS 2018 Workshop on
Blockchain and Smart Contract. Read the full paper here.
In the previous article, I examined the fundamental value of the tokens in a Token-curated Registry (TCR) by considering the ecosystem of the registry. One critical factor that determines the token value is whether the community can maintain the quality of the entries through challenging and voting. This problem is discussed in the original TCR whitepaper by Mike Goldin, in which the quality will be maintained due to the incentive from token holders: A candidate will not propose a poor data entry because it will be rejected and result in a financial loss, and token holders will challenge and vote for rejection for poor data entries to prevent decrease in token value. This conjecture is debated and challenged by researchers and practitioners, and I am going to review several articles regarding this topic.
A series of articles published by Julian Martinez discussed the incentive scheme and the potential pitfall of a TCR . One interesting issue on voters’ behavior he showed is the “vote-to-win” strategy, where voters will vote for the majority even if they do not agree with the majority. Unlike the typical herding behaviors, the “vote-to-win” strategy is in fact an optimal choice for a voter. Suppose there is a low-quality entry that will reduce the token value from v0 to v1 is under challenge with quorum * total token supply votes supporting the candidate. In other words, the challenge will fail regardless of the future votes on this poll. So even if a voter votes for rejection or does nothing, the total value she will have after the poll is v1 * number of holding token instead of v0 * number of holding token (For TCR 1.1, the voters who lost a poll even got a penalty). However, if the voter votes for acceptance, her total value will become v1 * (number of holding + polling reward). Therefore, it is economically rational for a voter based on the majority rather than the data quality.
A recent paper published by Aditya Asgaonkar and Bhaskar Krishnamachari also found a similar pattern , where the equilibrium outcomes they found is either all players vote for accept for a high-quality entry and all player vote for reject for a low-quality entry, and when the quality of the candidate’s entry is adequate but not high enough, it is still possible to have every voters to vote for rejection. However, one issue of this analysis is they assume the polling will be happened at the beginning. When the majority favors acceptable, the challenger will not have incentive to challenge; otherwise, the candidate will not have incentive to propose a new entry. With these rational expectations, the voters’ undesirable strategy will not help them to earn because no polls will be opened for them.
Following the rational expectation argument, the equilibrium outcome should be candidates with high-quality data propose entry without being challenged, and those with low-quality data will not propose. In other words, there should not be any challenges and polls in equilibrium. Here, potential challengers are only served as a deterence mechanism similar to law — an ideal world with rational entities should have no one violating the law. Of course, the ideal case is unrealistic because different people may perceive the data quality differently, which complicates the expectation process. Therefore, it is not easy to maintain the quality of TCR with practical limitations such as costly quality assessment .
Incentive to Challenge
In general, a candidate entry with a quality that is lower than the current average quality or certain reference level will be challenged. However, if the quality is not too low and the cost of challenge such as the transaction fee is sufficiently high, token holders may not want to initiate a challenge, or simply wait for other holders to challenge. Attackers can exploit this property to drive down the quality of the list by repeatedly proposing slightly lower quality entries. This is similar to the case of boiling frog, where token holders will tolerate small downgrades. Hence, even if the majority of token holders is willing to vote out the poor entries, if no one is willing to challenge, the poor entries can still have chance to get in to the registry.
Incentive to Vote
Suppose the cost of challenge is not that high so that someone is willing to initate a poll for a questionable entry. Instead of voting for the truth, voters will simply maximize the chance of winning. In order to follow the “majority”, the voters also need to observe which side is the majority. Without knowing the majority, it is reasonable to vote according to the assessed quality of the entry (unless the voter believes her belief is not mainstream). The current TCR design uses partial-lock commit/reveal (PLCR) contract for voting, which simulates a sealed voting. However, it is easy for anyone to publish the vote before the reveal phase. One can even write a smart contract to automatically commit and reveal the vote, converting a sealed voting to an open voting. In the extreme case, if there is one public vote, people may start follow this “majority” and that side will become the majority .
Another intriguing way of manipulating the poll is to set up a delegate for voting. William Entriken from 0xcert called this trick as Borg attack . The delegate can even change the payoff scheme with a new smart contract. Suppose TCR 1.1 is implemented and the minority voters got a penalty. Instead of directly voting on a poll from TCR, voters cast a vote to the delegate, and the smart contract will decide which side is the majority and cast all of the collected votes to the poll. Once the contract receives a reward, it can distribute to the winning side without penalizing the losing side, or equally distribute to every voters, or randomly draw a winner to claim all rewards for risk-seeking voters. Therefore, a simple way to tackle with the “vote-to-win” strategy is to reward all voters. But then will voters just vote randomly? If they also hold tokens (which is required for voting), then they should be serious about the token value and vote according to quality.
In sum, the ideal case of a TCR is only the high quality entries will be proposed and the low quality entries will not be proposed because of the threat of challengers. Similar to the design of Augur, the tasks should be completed by a single entity for efficiency and the remaining entities are served as a backup to correct inappropriate behaviors . But when the participants have different views in the candidate’s quality or the distribution of the tokens are not even, inefficiency such as challenging a high quality entry may be introduced.
About the Author
Dr. Ke Ping Fan, Zetta
Research Engineer at Blocksquare Limited
Ph.D. in Information Systems, Hong Kong University of Science and Technology, focuses on economics of information security and blockchain related research and applications. Visiting Scholar in HKUST and the lecturer of “Blockchain Entrepreneurship For Social Impact” course.
- Julian Martinez (2018) “Token Curated Registries: An Experiment in Game Theory, Part 3”
- Aditya Asgaonkar and Bhaskar Krishnamachari (2018) “Token Curated Registries — A Game Theoretic Approach”
- Aleksandr Bulkin (2018) “Curate This: Token Curated Registries That Don’t Work.”
- 0xcert (2018) “Token-Curated Registries”
- Moshe Praver (2018) “TCRs Are Not Work Tokens”