Chromia (CHR)

From CryptoWiki

"Relational blockchain, a class of blockchain platforms that combine the power and flexibility of mature relational database systems with the secure collaboration and disruptive potential of blockchain"

Basics

  • Based in: Sweden
  • Started in / Announced on: early 2019
  • Testnet release:
  • Mainnet release: “Currently, CHR is an ERC20 token. However, when the Chromia mainnet is launched, there will be a transition from an ERC20 token to a native one.” (31-1-2023)

History

Audits & Exploits

Bugs/Exploits

Governance

Admin Keys

From their whitepaper (20-5-2019):

"The initial launch of Chromia MVP will likely not have a sufficient quantity of independent providers. Thus at the initial stage governance will be centralized: all decisions will be made by ChromaWay in consultation with system stakeholders. Transition to proper decentralized governance will happen when the system is ready from a technical perspective and the provider ecosystem is healthy.

System-level governance covers the following topics:

  1. System updates, that is, updates to system blockchain structures, their rules and so on.
  2. Tuning parameters such as the price of running a dapp according to economic realities.
  3. Acceptance of new members into the system.
  4. Exclusion of bad actors.

Obviously, governance must be decentralized, a single entity shouldn’t have control over the system. We believe that providers are in the best position to perform governance duties:

  1. They can professionally review the proposals.
  2. hey are motivated to keep Chromia interesting both for users and for application developers. A bad governance decision will affect revenues and profits collected by providers.

Thus we can require ⅔ of providers to vote in favor of a governance proposal to approve it."

DAO

Treasury

Token

Launch

Token Allocation

  • 1B. According to their website (31-1-2023):
  1. "Ecosystem Fund 38.06%
  2. Promotional Fund 25%
  3. Private Sale 17.94%
  4. Founders 4.5%
  5. IEO 4%
  6. Auto Conversion Contract 3%
  7. Advisors 3%
  8. Team 2.5%
  9. System Node Compensation Pool 2%

The circulating supply got reduced after the burn of 22M CHR in May 2020."

  • From their whitepaper (20-5-2019):

"One billion tokens will be created upon launch of the system. That constitutes the token supply limit, no tokens will be created in the future. Initial distribution of tokens:

● 70% owned by ChromaWay through its subsidiary Chromia Devcenter Oü to be sold, awarded to team members, invested or used in any other way

● 3% put into an automatic conversion contract on Ethereum blockchain to enable Chroma<->ETH conversion

● 2% put into system node compensation pool

● 25% is allocated for promotional use: to be given to users to try applications hosted on Chromia

Within the ChromaWay allocation, up to 25% (of all tokens) will be sold initially to select partners. The rest will be locked and released slowly over time. Up to 17% will be unlocked during the first year after launch, then up to 12% per year. ChromaWay and its subsidiaries will hold tokens for at least three years. This creates long-term incentive for Chromia development. After three years Chromia development and governance must transition to a decentralized model. Promotional tokens will also be initially locked, and unlocked at a rate of 0.5% per month.

Thus percentage of tokens in circulation changes over time: 1. At start: up to 30% 2. After 1 year: up to 53% 3. After 2 years: up to 71% 4. After 3 years: up to 89% 5. After 4.5 years: 100%"

Utility

  • From their whitepaper (20-5-2019):

"Chromia will provide mechanisms which balance the interests of developers and users. Essential to this is the Chromia meta-token called Chroma. Dapp tokens can be automatically backed with Chroma, providing liquidity and value which is independent of investment into the dapp in question. Dapp investors can be compensated in Chroma through a profit-sharing contract.

To summarize, the Chroma token has the following roles in Chromia:

  1. It is used by dapps to pay hosting fees, thus compensating the nodes.
  2. It is used as a “standard” currency within the Chromia economy, as dapps can collect it as fees, or use as reserves to peg their own tokens, etc.
  3. It is used to make sure that providers have a stake in Chromia ecosystem thus offsetting incentives to collude."

Other Details

Coin Distribution

Technology

  • Whitepaper or docs can be found here (20-5-2019).
  • Code can be viewed here.
  • Consensus mechanism: PBFT-style consensus, from their whitepaper (20-5-2019): "Chromia’ PBFT-style consensus is further hardened by anchoring Chromia chains to a Proof of Work (PoW) blockchain, likely Bitcoin or Ethereum."
  • Algorithm:
  • Virtual Machine: JVM (Java Virtual Machine)
  • Development language used: from their whitepaper (20-5-2019): " Rell (Relational language). Chromia dapp backends are written in a specialized language which is deeply integrated with the relational model. This model increases programmer productivity and ensures application consistency."

Transaction Details

  • Capacity (TPS): from their whitepaper (20-5-2019): ">500 TPS per sidechain. Overall rate in the whole system is unlimited"
  • Latency: from their whitepaper (20-5-2019): "Transactions can be confirmed within seconds" however later it claims "Confirmation time: ~1 second (necessary for good UX, real-time user interactivity…)" and once again later: "transfers can be confirmed within 2 seconds which should be enough to support in-person payments"

How it works

  • From their whitepaper (20-5-2019):

"The concept of nodes is sufficient for designing a fault tolerant network, but to target proper Byzantine fault tolerance we must account for conscious provider entities with the potential to coordinate multiple nodes. Crucially, to keep a dapp decentralized we need to make sure that the nodes which run its blockchain(s) belong to different and non-colluding providers. In that case the application can tolerate a subset of providers experiencing failures, being compromised or performing hostile actions. In practice, provider distinctness will be achieved as follows:

  1. Initially, ChromaWay will select a set of distinct providers. We believe that our extensive knowledge of blockchain and IT industry will allow us to choose well, and we are incentivized to select providers that the users will accept. Users who are concerned about provider uniqueness are welcome to do their own research and contribute to the decision making process.
  2. Eventually, once the system has a sufficiently diverse set of providers, we will allow providers themselves to vote to add new providers and the system will no longer depend on ChromaWay as a gatekeeper.

Dapps require computational resources and storage and should be able to pay providers for them. Providers should be incentivised to offer high quality services to dapps at competitive prices. Chromia will establish a marketplace where dapp developers and node providers can buy and sell resources. ChromaWay will act as a key node provider in the very early stages.

The overall system consists of a number of “system” blockchains which are essential for Chromia functionality and a number of application blockchains which are specific to particular applications.

  1. System chains: Root chain. Validators: root nodes. Purpose: keep track of the list of root nodes. Description: The root chain is needed for thin clients to be able to validate any data within Chromia without downloading the entire blockchain.
  2. Directory chain. Validators: root nodes. Purpose: keep track of all providers, nodes, application blockchains and their validators. Description: The directory chain is responsible for keeping track of all critical information and orchestrating the operations of the system.
  3. Token root chain. Validators: as defined in directory. Purpose: keep track of Chroma tokens. Description: The token root chain keeps track of token distribution between other chains.
  4. Anchoring chain. Validators: as defined in directory. Purpose: Defend against attacks on a subset of nodes. Description: The anchoring chain records hashes of blocks of other chains. This makes it possible to detect consensus failures. In case of a consensus failure, blocks anchored in the anchoring chain take precedence over other versions of blocks. The anchoring chain is itself anchored in Bitcoin & Ethereum blockchains."

Postchain

  • From their whitepaper (20-5-2019):

"The main difference between Postchain and other blockchain frameworks is that Postchain is designed to store blockchain data (both raw blockchain contents and application state) in a relational database. Not only that, Postchain allows transaction logic and consensus to be fully aligned with a relational database; e.g. transactions which violate constraints in the database are rejected and excluded from consensus, they do not result in fatal errors of any kind. Postchain is implemented largely in Kotlin and runs on the Java Virtual Machine (JVM). The JVM is one of the most commonly used virtual machines, it’s geared towards server use cases and has a large number of libraries available. The JVM provides inherent protection against vulnerabilities such as buffer overruns/underruns, data leaks and so on -- it controls access to objects, performs array bounds checking and does not expose error-prone features such as raw pointers. Thus apps implemented on the JVM are usually free of problems such as remote code execution even when they contain bugs. This is very important for blockchain software as remote code execution can lead to huge losses. Kotlin further tightens type checks and particularly ensures null safety within the code written in Kotlin. We believe that use of a modern programming language designed for safety can reduce the number of defects and help to make sure remaining defects do not lead to drastic consequences. Postchain allows multiple blockchains to be hosted in a single database and allows one blockchain to “see” data belonging to another blockchain when that data is final (committed). This simplifies implementation of inter-blockchain interaction, as blockchains can refer to shared data without any additional overhead or complexity. In particular, this can be used for inter-blockchain asset transfers."

Fees

  • From their whitepaper (20-5-2019):

"The dapp pays to nodes hosting fees. Fee is paid from dapp token account on a daily basis and depends on computational resources requested by the application and used data volume"

"Fees (collected to maintain nodes) are paid by the dapp as a whole, not by end-users directly Consequently, dapps are free to implement their own resource management policies, which can be aligned with economic rather than technical needs. Every blockchain needs an anti-spam mechanism, but this mechanism doesn’t have to be tied to fees. For example, a dapp might allow only 1 action from a user each 15 seconds, thus a single user won’t be able to spam the blockchain with billions of transactions. A dapp can also mitigate Sybil attacks through limiting new user registration to some reasonable rate and/or requiring invitation or a deposit."

Upgrades

Staking

"Stake (freeze) CHR tokens at least for 2 weeks to participate in programs which require staking and earn rewards. Staked tokens currently receive governance reward of 25% APR. This rate might change in future."

  • From their whitepaper (20-5-2019):

"To encourage providers to secure their nodes they will be required to put Chroma tokens into a separate account which represents the provider’s stake in the Chromia economy and is used as collateral which is forfeited when nodes owned by a provider misbehave."

Validator Stats

Liquidity Mining

Scaling

"Horizontal scaling: Each dapp has its own blockchain(s). Because each blockchain is run by a subset of nodes, it is possible to increase total throughput by increasing the number of nodes"

Interoperability

Other Details

Public Good Account

  • From their whitepaper (20-5-2019):

"In certain situations tokens need to be “sacrificed” (irreparably destroyed or burned) to avoid a conflict of interest or the possibility of abuse. These situations include Sybil control mechanisms, punishment of misbehaving parties or a “neutral action” in a case of a disagreement between two or more parties. Chromia offers an alternative to irreparable destruction in the form of a public good account. This is a virtual account which automatically distributes received tokens into 4 different accounts:

  1. ● 25% of tokens are burned; burning tokens indirectly benefits all Chroma token holders as tokens are permanently removed from circulation
  2. ● 25% of tokens are put into the “System node compensation pool”
  3. ● 25% of tokens are put into the “Future development pool”
  4. ● 25% of tokens are put into the “Charity pool”

Thus all Chromia users indirectly benefit from the public good account in the long term. It’s very unlikely for the public good account to be abused as control funds in it are collectively controlled and aren’t easily accessible. It is therefore a viable and productive alternative to simple “burning”.

Funds will be sent to the public good account in following cases:

  1. A user would need to send 10 Chroma tokens to the public good account to become a “Chromia citizen”. This confirms the user’s commitment to Chromia and gives certain perks such as the ability to vote, priority services, the ability to participate in “lucky request” reward program, etc. (Details about this program are covered in the Appendix.)
  2. The lost stake of misbehaving nodes is sent to the public good account.
  3. 0.1% of application hosting fees are sent to the public good account"

Oracle Method

Privacy

  • From their whitepaper (20-5-2019):

"Chromia plans to offer privacy-enhancing features (for use in dapps) in future."

Their Other Projects

Roadmap

Usage

Projects that use or built on it

Competition

Pros and Cons

Pros

Cons

  • Hasn't delivered a mainnet after 4 years, founders control 95% of the supply, will launch centralized.
  • From their whitepaper (20-5-2019):

"The relational model might have the following disadvantages:

  1. Performance is hard to predict and depends on the query planner. This is not a significant disadvantage in the context of Chromia because each dapp will be run in an isolated manner; slow queries will affect only the dapp which performs them rather than the system as a whole.
  2. It is impossible to impose hard bounds on query execution time. Again, this is not a problem in Chromia because it affects only the performance of the application which issues slow queries.
  3. Parallelization of SQL databases is a complex area of active research. As far as we know, no blockchain platform offers 100% fully automatic parallelization on a massive scale [as of 2024 there are multiple]. Thus there is no evidence that a relational model is worse than other models. In addition, we believe that the relational model will make logical sharding and sidechain mechanisms easier to implement."

Team, Funding and Partners

Team

  • Full team can be found [here].

Funding

According to their website (31-1-2023):

21M Capital, Arrington XRP Capital, Bitscale Capital, ByteSize Capital, FactBlock, GEM Capital and NGC

Partners

(:

Knowledge empowers all and will help us get closer to the decentralized world we all want to live in!

Making these free wiki pages is fun but takes a lot of effort and time.

If you have enjoyed reading, tips are appreciated :) This will help us to keep expanding this archive of information.

ETH tip address: 0x83460bE5F218b1520B69D702cE60A1DE37dD8E31