Solana’s Proof of History is a Huge Advancement for Block Time
Cryptocurrencies use a consensus algorithm, which is a method of securing the blockchain and ledger of a cryptocurrency. The thousands of cryptocurrencies out there today use a wide variety of consensus algorithms, each with its own advantages and disadvantages. Anatoly Yakovenko, founder of Solana, has designed a unique consensus algorithm for the Solana network, called Proof-of-History.
Anatoly Yakovenko - Medium.com
Solana has created a cryptographically secure and trustless time source – and built a blockchain around it. This allows nodes in the network to verify the time and order of events without witnessing them directly, drastically reducing messaging overhead and unlocking massive network optimizations.
Solana is the world’s first web-scale blockchain. On current iterations of the Solana Testnet, a network of 200 physically distinct nodes supports a sustained throughput of more than 50,000 transactions per second when running with GPUs. Achieving as such requires the implementation of several optimizations and new technologies, and the result is a breakthrough in network capacity that signals a new phase in blockchain development.
The core innovation that underlays the Solana Network is Proof of History, and is exactly what the name suggests — a proof of historical events. Utilizing Proof of History creates a historical record that proves that an event has occurred at a specific moment in time. Whereas other blockchains require validators to talk to one another in order to agree that time has passed, each Solana validator maintains its own clock by encoding the passage of time in a simple SHA-256, sequential-hashing verifiable delay function (VDF).
This differs from the current standard of blockchain infrastructure, which relies on a sequential production of blocks that are hindered by waiting for confirmation across the network before moving forward. Proof of History presents a fundamental move forward in the structure of blockchain networks in regards to speed and capacity.
Solana’s Proof of History
What is Solana? SOL Explained with Animations
Here’s how Proof of History works: The Solana data structure chains messages together. This provides cryptographic proof of the relative order and time of each message in the historical record. This allows the network to ignore local clocks and gradually accommodate all potential network delays as the data structure is eventually delivered and re-assembled.
This is why Solana is able to push the limits of confirmation times so that the network provides as effective of an experience as a centralized system without sacrificing security or decentralization.
However, Proof of History isn’t necessary for a permissionless blockchain. There is plenty of Proof of Stake-based networks being built without it. What Proof of History — or PoH — adds to the network is a source of objectivity. It allows validators on the network to compute the state of the network from the ledger itself.
Based on what validation messages are present in the ledger, a validator can decide if any node is considered up (valid) or down (invalid), and if the network has submitted a sufficient amount of votes for the ledger to be considered valid. Messages are not required to arrive at any given validator in a timely manner. The ledger eventually arrives at every validator, and because the messages are part of the ledger, PoH provides the cryptographic guarantee that the messages were created when they claim.
This property allows us to optimize the network across multiple parameters, particularly in regards to block time, an essential element of blockchain infrastructure in regards to speed and efficiency. In addition to Block Time, PoH allows Solana to optimize for block propagation (log200(n)), throughput (50K-80K TPS)), and ledger storage (petabytes) available on the network.
Block time, more so than raw Transactions Per Second, is a parameter that clearly separates centralized systems from decentralized blockchains. Tendermint has a timeout window of 3 seconds, Libra around 10, Aglorand around 5. Solana’s globally distributed test net is deployed with a block time of 400ms blocks with a leader scheduled for 4 consecutive blocks.
By the time Libra confirms a single block, Solana has confirmed 25 blocks proposed by 25 different validators.
Visa has a requirement of a 2.4 second confirmation time for the entire point-to-point path. Neither Ethereum, Bitcoin or Libra are anywhere close to satisfying that requirement. Solana does.
In general, there are two ways that classical distributed systems have dealt with clocks. Messages are time-stamped by the sender and the timestamp is signed. Nodes drop messages that are either too old or too new. This calculation is based on the difference between the timestamp and the local clock.
The second approach is that every state transition has a local timeout before it expires. On Tendermint, for example, a pre-commit state has a one-second timeout. The next block producer can try to propose the next block, but all the nodes in the network will wait for at least 1 second from the start of the pre-commit state transition before considering the new proposal.
In both approaches, a proposer’s clock cannot be trusted, and each node takes precautions and forces a delay to the progress of the consensus state machine to ensure that the proposer doesn’t cheat. Although these delays are essential for network security, they translate into slower block times.
Nakamoto consensus introduced a third way to deal with clocks. The difficulty adjustment in Bitcoin forces the network to produce a block on average roughly once every 10 minutes. Ethereum difficulty is set such that a block is produced on average once every 15 seconds. The difference between the two networks can be measured in the number of collisions or uncles. The shorter the block time, the higher the likelihood of two nodes producing a block at the same time, and 15 seconds is likely the lower bound of how fast a Nakamoto style chain can produce a block.
The Solana Approach
With Solana, we are introducing a fourth approach that results in a network that is never delayed. The Solana protocol has no dependencies on local computer clocks or local timeouts between state transitions beyond the Verifiable Delay Function. Instead, the VDF ensures that each block producer proves they have waited a sufficient amount of time, and the network moves forward. Unlike Tendermint, the next block producer has to locally generate a portion of the VDF until the scheduled slot.
This means that receiving nodes can begin state transition as soon as the message is received because they have cryptographic proof that the producer obeyed the protocol delays.
Moreover, the messages can arrive out of order and the cost of network delays is gradually accommodated over the delivery of many packets. Once PoH is reconstructed, the entire data structure guarantees that the appropriate delays between all the block producers are correct.
The result of this functionality is that the network is never delayed, and can continue producing at lightning-fast speeds despite variations caused by block producers. Proof of History is a powerful mechanism that unlocks network speeds heretofore unseen in blockchain technology.
Along with innovations like Tower BFT, Turbine, and Replicator nodes, Proof of History makes Solana the first web-scale blockchain with transactional capacity that is akin to the modern internet.
We invite you to take a deeper look at all of the technological innovations the Solana team is implementing and to get involved with the Solana community by joining our Discord or checking out ‘No Sharding: The Solana Podcast.’ For developers, it’s a great chance to get information about the project directly from Solana team members.
Proof-of-History has great potential. But as with any consensus algorithm, there are also drawbacks, and that also applies to PoH. If you want to participate as a validator at Solana, your hardware must meet strict requirements. If you do not meet these requirements, you are excluded from the consensus. This limits Solana's decentralization considerably. Because looking at a Proof-of-Stake validator, any standard computer equipment will do, allowing everyone to participate in the consensus, thus much more decentralized.
Whereas transaction speeds are a major advantage of Solana, they are also a hindrance in some respects. The tens of thousands of transactions generate enormous amounts of data. 1 transaction is about 250kb. 50,000 TPS of 250kb equals about 40 petabytes of data per year. That is a tremendously high amount of data and many companies, let alone private individuals, cannot store this amount of data. So a solution must be found for this in the future.
https://anycoindirect.eu/en/blog/what-is-proof-of-history
https://medium.com/solana-labs/how-solanas-proof-of-history-is-a-huge-advancement-for-block-time- 178899c89723
https://docs.solana.com/cluster/synchronization
https://solana.com/solana-whitepaper.pdf
https://techcrunch.com/2021/05/14/solana-a-blockchain-platform-followed-by-top-crypto-investors- says-its-a-lot-faster-than-ethereum/
No comments:
Post a Comment