Proof of Space
The proof of space protocol has three components: plotting, proving/farming, and verifying.
Plotting refers to a simple process of dedicating disk space on your computer for storing a big file (100 GB +) called a plot. This file consists of several tables where each cell points to two entries in a different table. There is only one table without any pointers which consists of integers called “x- values”.
The plots contain useless information which has nothing to do with the blockchain data. They are simply a self-verifiable data occupying non-trivial amount of space on your hard drive.
A person who commits to plotting is called a Prover because he is required to produce a proof of storing tables once he receives a challenge from a Verifier. Proving is a simple table look-up process which does not even require internet connection.
Challenges underline the consensus mechanism by producing correct proofs, you can demonstrate that you have actually downloaded the data which makes you a true participant of the network. Provers are rewarded in native currency (Chia), which is why they are also called farmers.
Proving and Security
We will use a plot containing seven tables as an example. Upon receiving a 256-bit challenge, a prover looks up two values in table seven which point to two entries in table six and they bring us to four values in Table five. This goes on until we discover 64 (two to the power of six) pointers to x-values in table one, and these 64 numbers become the proof. This takes around 640 ms and verification is also fast.
Since Chia sends out challenges in a random fashion, nodes with more storage are more likely to receive it as well as the subsequent reward. There is now a security concern – nodes with a lot of storage can be bribed to manipulate the network and change data stored on the blockchain.
To solve this problem, Chia introduces certain discrimination rules for plot proofs so that no prover is 100% sure that he will farm a given block. Instead of finding all 64 x- values, a prover can take just two and learn whether his proof would be good enough for verification. The whole Proof of Space algorithm is now optimised – reading two x- values takes only 70ms and complete reads are required only every couple of minutes.
Proof of Time
In addition to farmers, Chia network has nodes called Timelords. They are responsible for demonstrating passage of time and maintaining the same amount of time between the blocks (~ 10 minutes). As with Solana, this is accomplished via Verifiable Delay Functions (VDF).
Chia uses a repeated squaring procedure where a Timelord keeps squaring a certain value (also called a challenge) taken from a mathematical object called a group. It is impossible to know the final value in advance, which means that a prover will spend actual time finding it. He publishes it together with other values which allow for quick verification of his computations.
A challenge for Timelords is made by combining previous VDF output with a random string. If an adversary tries to alter information in a previous block, he will need to convince 51% of the nodes that his VDF output is correct. Due to a high number of active nodes in Chia, this is practically impossible, which is how the blockchain guarantees security.
PoSpace is a computationally easy procedure. Unlike Proof of Work, PoSpace mechanism is reusable- once downloaded plots remain active for a long time, leading to insignificant electric power consumption.
Chia skeptics, however, are concerned with the amount of hardware used for Chia mining. This May, Chia’s coin launch caused a shortage of hard drives on the markets, driving the prices of regular SSDs to unseen levels.
It is also important to note that discs have limited lifespan which decreases with every new read, and the production of new ones is not totally green.
What makes Chia unique?
Chia is not the first protocol to utilise Proof of Space-like mechanisms. Storj, Burst, SIA and Filecoin also rely on the use of HDDs and SSDs. While each of these projects provides a specific solution, Chia attempts to become a broader network like Ethereum.
Chia has a newly developed smart contract programming language called Chialisp. It is used to build Chia’s own DeFi applications such as decentralised exchanges, as mention in a recent tweet from the CEO.
Having recently hired five VPs for sales, product development and more, Bram Cohen continues to develop Chia Network. The company wants to make cryptocurrencies more user-friendly and sustainable.
Transactions were enabled on May 3, 2021 and mainnet was launched for farming rewards on March 19 2021.
Disclaimer: The views and opinions expressed by the author should not be considered as financial advice. We do not give advice on financial products.