Here are some common questions about QuarkChain

General Questions
1. What is QuarkChain Network?

QuarkChain Network is a high-throughput blockchain that aims to achieve more than hundreds of thousands on-chain transactions per second (TPS). The high-capacity system will solve the scalability problem that current main blockchains are facing.

This problem is so urgent that bitcoin community can't wait to reach an agreement. Different solutions compel the community to split through a controversial hard fork.

2. Why named QuarkChain?

According to Wikipedia: “Quark is a type of elementary particle and a fundamental constituent of matter. Quarks combine to form composite particles called hadrons, the most stable of which are protons, the components of atomic nuclei.” Similarly, we hope QuarkChain can be the foundation of the blockchain world. QuarkChain aims to enable a wide range of applications and to build a versatile blockchain world.

3. What are QuarkChain tokens? How does QuarkChain allocate their tokens?

QuarkChain tokens (QKC) are ERC-20 compatible tokens distributed on the Ethereum blockchain. After our mainnet is launched, the ERC-20 tokens will be converted to mainnet’s token by premining. Future QKCs will be produced by miners. Total supply is 10 billion QKC. Token sale 20%, Team 15%, Advisors 5%, Foundation 15%, Mining, community and marketing 45%. Mining is prone to minor future inflation possibly.

4. What dApps will QuarkChain support?

QuarkChain Network welcomes various dApps, especially those demand high transaction rates: advertisement, IoT (Internet of things), AI and big data, game, peer to peer sharing economy, etc. Today, lots of dApps are waiting for a more reliable and scalable foundation to begin with, QuarkChain Network will become a perfect choice.

5. Why is QuarkChain Network able to achieve such high TPS?

The main reason is QuarkChain Network develops suitable scalability technology (That is sharding, but even there are tons of different implements of sharding.), while maintaining the core value of the blockchain, such as decentralization and security. Thanks to QuarkChain Network development team members coming from Facebook and Google, who have been working on large scale distributed system development and are very familiar with various scalability means in centralized systems.

6. What should I do if I have some additional questions?

Most questions can find the answer from our whitepaper. We will update our website, whitepaper, and this FAQ list from time to time. You are welcome to join QuarkChain Network’s community in telegram and directly ask a question there.

Technical Questions
1. Does QuarkChain Network use PoW? Why?

Yes. QuarkChain Network uses proof of work (PoW) as the consensus mechanism for the root chain, and root-chain first proof of work (rfPoW) for the shards. The explanation of rfPoW can be found in our whitepaper. Briefly, if there are two forks on a shard, to determine which fork to survive, a node would compare their corresponding root chain’s heights before considering the heights of the forks of the shard.

The reason is that Bitcoin (and many others) has been using PoW for many years, and its security and reliability have been well proven. The main innovation of this project is to scale transaction processing greatly. Therefore, we choose a reliable consensus mechanism and put more energy on solving the scalability problem.

2. It seems there are several ongoing projects claim they can achieve high TPS, what makes QuarkChain Network different?

Only looking for a high TPS network is not a new story. Last year, the well-known payment network Alipay already reached 200+K peak TPS. What is more important is the tradeoffs among scalability, decentralization, and security. It is very challenging to be achieved three of them jointly. Thus, what makes QuarkChain stands out is to obtain an extremely high TPS while maintaining the network’s decentralization and security.

3. Why can QuarkChain Network realize this high TPS?

This is a result achieved by several cool features of QuarkChain Network jointly. They are:

1) Reshardable two-layered blockchain: QuarkChain Network consists of two layers of blockchains. We apply elastic sharding blockchains (shards) as the first layer, and a root blockchain as the second layer that confirms the blocks from the first layer. The first layer is flexible to be resharded as needed without changing root layer.

2) Guaranteed security by market-driven collaborative mining: To ensure the security of all transactions, a game-theoretic framework is designed for incentives, where at least 50% of overall hash powers are allocated to the root chain to prevent double spending attack on any transactions.

3) Anti-centralized horizontal scalability: In any blockchain network with a high TPS, a super-full node can be extremely expensive, which encourages centralization. In contrast, QuarkChain Network allows multiple cheap nodes forming a cluster to replace a super-full node.

4) Efficient cross-shard transactions: Cross-shard transactions in QuarkChain Network can be issued at any time, and confirmed in minutes. The speed of cross-shard transactions increases linearly as the number of shards increases.

5) Simple account management: There is only one account needed for the entire blockchains (shards) in QuarkChain Network. All cryptocurrencies from different shards are stored in one smart wallet. Detailed discussions please check the whitepaper.

4. What is sharding?

Sharding technique is from database, which means partitioning a large database into smaller parts, and data can be processed in parallel. It is one of the most common ways in centralized systems to address the scalability problem.

For example, 100 people are shopping at Walmart. If there is only one cashier, customers need wait for long time. But if there are 10 cashiers, customers can divide into 10 lines and thus reduce waiting time.

5. How to perform a cross-shard transaction?

QuarkChain Network fully supports cross-shard transactions (tx). Any user is able to issue a cross-shard transaction at any time. The technical key is the two-layer structure with a root chain. The tx-input shard initializes the process. The tx-output shard waits for the root chain’s confirmation and then realize the transaction. Because tx-input shard does not share the same ledger with tx-output shard, cross-shard transaction needs to wait for root chain’s confirmation before using the result of this transaction.

6. What is QuarkChain’s relationship with DAG or Tangle technology?

The system of QuarkChain Network itself can be treated as a well-structured DAG. This allows QuarkChain to inherit a lot of benefits from both Bitcoin/Ethereum and general DAG technique. For example, the consensus of QuarkChain and its threat model can be easily derived/analyzed following those of Bitcoin/Ethereum, while QuarkChain achieves high throughput similar to general DAG. Given two blockchains/DAGs of QuarkChain, we could easily tell which one should be appended thanks to QuarkChain’s root chain.

7. How could QuarkChain scale from 1K TPS to 100K TPS?

QuarkChain aims to deliver hundreds of thousands or even millions of transactions per second in the next couple of years. Note that these numbers are the capacity of QuarkChain system, i.e., peak performance, rather than average TPS in production, which highly depends on applications. To achieve the peak numbers, we need to consider several bottleneck factors. We would like to share our thoughts and welcome any better suggestions could help us overcome the bottlenecks.

1) CPU: Most consuming part of CPU is validation of the transactions. Our experiment shows that single core could validate several thousands of transactions per second (e.g., AWS EC2 c5 instances), and QuarkChain’s capacity could scale almost linearly as the number of cores increases thanks to sharding (e.g., AWS EC2 c5 instances could have at most 72x cores). In addition, existing research shows that with GPU optimization, the cryptographic operations by GPU could be more than 5x faster than that of CPU. With fully optimization in CPU/GPU, this should enable us to validate 100+K TPS in single node. With clustering feature enabled, QuarkChain Network should be able to achieve 1M+ TPS with more than 10+ machines in the cluster.

2) Network bandwidth: Suppose that a transaction size is about 250 bytes. 1M+ TPS takes about 2 Gbps network bandwidth. This may sound high at this moment, but such network bandwidth will be available soon with new network technologies such as Fiber and other wireless techniques (e.g., WiGig).

3) In addition, another bottleneck of QuarkChain is the block-size limit of root chain. Consider 8MB root block size limit, 256 bytes per transaction, and 1M per block size in shard with 128 bytes of block header, a root block could confirm 8M / 128 * 1M / 256 = 256M transactions. Given that the root block interval is 150 sec, then the maximum transaction per second supported by QuarkChain will be 1.7+ M TPS.

8. Do you support smart contract?

Yes, we support Turing-complete smart contracts. These contracts written by Solidity can be directly deployed on QuarkChain Network. We also plan to continue improving the function of smart contracts in the near future.