Loading AI tools
Type of consensus algorithm From Wikipedia, the free encyclopedia
Proof of space (PoS) is a type of consensus algorithm achieved by demonstrating one's legitimate interest in a service (such as sending an email) by allocating a non-trivial amount of memory or disk space to solve a challenge presented by the service provider. The concept was formulated in 2013 by Dziembowski et al.[1][2] and (with a different formulation) by Ateniese et al..[3][4] Proofs of space are very similar to proofs of work (PoW), except that instead of computation, storage is used to earn cryptocurrency. Proof-of-space is different from memory-hard functions in that the bottleneck is not in the number of memory access events, but in the amount of memory required.
After the release of Bitcoin, alternatives to its PoW mining mechanism were researched, and PoS was studied in the context of cryptocurrencies. Proofs of space are seen as a fairer and greener alternative by blockchain enthusiasts due to the general-purpose nature of storage and the lower energy cost required by storage.
In 2014, Signum (formerly Burstcoin) became the first practical implementation of a PoS (initially as proof of capacity) blockchain technology[5] and is still actively developed. Other than Signum, several theoretical and practical implementations of PoS have been released and discussed, such as SpaceMint and Chia, but some were criticized for increasing demand and shortening the life of storage devices due to greater disc reading requirements than Signum.[6][7]
A proof-of-space is a piece of data that a prover sends to a verifier to prove that the prover has reserved a certain amount of space. For practicality, the verification process needs to be efficient, namely, consume a small amount of space and time. For security, it should be hard for the prover to pass the verification if it does not actually reserve the claimed amount of space.
One way of implementing PoS is by using hard-to-pebble graphs.[2][8] The verifier asks the prover to build a labeling of a hard-to-pebble graph. The prover commits to the labeling. The verifier then asks the prover to open several random locations in the commitment.
A proof of storage (also proof of retrievability, proof of data possession) is related to a proof-of-space, but instead of showing that space is available for solving a puzzle, the prover shows that space is actually used to store a piece of data correctly at the time of proof.[citation needed]
A proof of capacity is a system where miners are allowed to pre-calculate ("plot") PoW functions and store them onto the HDD. The first implementation of proof of capacity was Signum (formerly burstcoin).[9]
The Proof of Capacity (PoC) consensus algorithm is used in some cryptocurrencies. Conditional Proof of Capacity (CPOC)[10] is an improved version of PoC. It has a work, stake, and capacity system that works like the PoW, PoS, and PoC algorithms. By pledging their digital assets, users receive a higher income as a reward. Additionally, CPOC has designed a new reward measure for top users. In this algorithm, miners add a conditional component to the proof by ensuring that their plot file contains specific data related to the previous block. This additional condition enhances the security and decentralization of the consensus mechanism beyond traditional proof-of-capacity algorithms.
A proof of space-time (PoST) is a proof that shows the prover has spent an amount of time keeping the reserved space unchanged. Its creators reason that the cost of storage is inextricably linked not only to its capacity, but to the time in which that capacity is used. It is related to a proof-of-storage (but without necessarily storing any useful data), although the Moran-Orlov construction also allows a tradeoff between space and time.[11] The first implementation of PoST is with the Chia blockchain.
Proofs of space could be used as an alternative to proofs of work in the traditional client puzzle applications, such as anti-spam measures and denial of service attack prevention. Proof-of-Space has also been used for malware detection, by determining whether the L1 cache of a processor is empty (e.g., has enough space to evaluate the PoS routine without cache misses) or contains a routine that resisted being evicted.[12][13]
The first blockchain to use hard disk based blockchain validation, established in 2014. Signum Proof of Capacity consumes disk space rather than computing resources to mine a block. Unlike PoW, where the miners keep changing the block header and hash to find the solution, proof of capacity (as implemented by Burstcoin, and developed further by Signum) generates random solutions, also called plots, using the Shabal cryptographic algorithm in advance and stores it on hard drives. This stage is called plotting, and it may take days or even weeks depending on the storage capacity of the drive. In the next stage - mining, miners match their solutions to the most recent puzzle and the node with the fastest solution gets to mine the next block.[14][15]
In 2015, a paper proposed a cryptocurrency called SpaceMint.[16] It attempts to solve some of the practical design problems associated with the pebbling-based PoS schemes. In using PoS for decentralized cryptocurrency, the protocol has to be adapted to work in a non-interactive protocol since each individual in the network has to behave as a verifier.[16]
In 2018, a proposed cryptocurrency Chia presented two papers presenting a new protocol based on proof of space[17] and proof of time.[18]
In February 2021, Chia published a white paper outlining its business and has since launched its mainnet and Chia coin (XCH) using the Proof of Space Time concept. The spacetime model of Chia also depends on "plotting" (generation of proof-of-space files) to the storage medium to solve a puzzle.[19]
Unlike many proof-of-storage cryptocurrencies, Chia plots do not store any useful data. Also, Chia's proof-of-time method for plotting has raised concerns over shortened lifespans of solid-state drives due to the intensity of write activity involved in plot generation (typically, plotting occurs on an SSD and then the finished plots are transferred to a hard disk drive for long-term storage).[7]