July 2018

Solana and Proof of History

arrow pointi
Proof of History, the consensus algorithm underpinning the Solana blockchain offers a novel approach to blockchain scalability without the need for sharding. By using Proof of History, Solana aims to run thousands of times faster than Ethereum.

The multi-billion-dollar success of Ethereum has led to the creation of competing smart contract platforms. These competitors are looking to improve upon Ethereum, with the most pressing area of improvement being the speed of the network or more specifically, its transaction throughput. If a network can increase the number of transactions per second that it can handle, then it can host more data intensive applications as well as a greater number of concurrent applications. This could be the difference between running a lagging game of CryptoKitties and running a responsive decentralized version of Facebook. This month we will be exploring a new smart contract platform called Solana, which is promising transaction throughputs that are 50,000 times faster than Ethereum. We will dive into the technology that powers Solana and explore its Proof of History (PoH) consensus algorithm.

 

The sluggish performance of networks like Ethereum can be largely attributed to the slow consensus algorithm that it runs. A consensus algorithm is the mechanism by which all of the nodes come to agreement as to transactions that may change the state of the network, such as how many tokens are in each user wallet. In the case of Ethereum, the network relies upon the Proof of Work (PoW) model of consensus, which requires every node on the network to perform significant computation. By contrast, the team behind Solana has created a consensus algorithm known as Proof of History (PoH), which utilizes new techniques to dramatically improve transaction speeds. PoH solves a further issue surrounding the exact ordering of transactions.

 

To understand PoH, it helps to first understand that in PoW systems, like Bitcoin and Ethereum, transactions are grouped together into blocks. Each block contains a reference to the previous block as well as other pieces of information in the block header. Transactions can be seen as ordered by block, as an individual transaction in “block n” comes before an individual transaction in “block n+1”. However, within a specific block (block n),individual transactions are not ordered but are settled at the same time. This leads to a problem with short term transaction ordering, making a system like Ethereum a poor choice for applications that require trusted ordering, such as high frequency trading on decentralized exchanges.

 

PoH takes a different approach that granularizes transaction ordering down to individual transactions. One way to think about PoH is that every transaction exists inside its own block. Rather than transactions being grouped together, as in PoW, every transaction is hashed and becomes an input for the next transaction. Therefore, every transaction has its own place in the sequence of history, meaning that the ledger stores a verifiable passage of time as there is a set duration between events and message ordering.

In the case of PoW, the first implementation of it was Bitcoin.Since the release of Bitcoin, we have witnessed many different implementations of the PoW consensus algorithm, with alterations such as different block times and mining parameters. In the case of PoH, Solana is the first and we believe it to be the only implementation today. In the Solana system, a single “Leader”(similar to a miner in Bitcoin) receives and assembles all transactions in order to generate the proof of history. Incredible scalability is achieved as amore centralized Leader is taking control of the ordering of transactions and so the speed of the network equates to the speed of the computing hardware of the Leader.

While the Leader is a single entity, the system has been designed to remain decentralized. The Leader executes transactions on the current state (stored in RAM) and publishes these transactions and a signature of the final state to replication nodes called “Verifiers”. Verifiers utilize parallelization to execute sections of the same transactions on their copies of the state in order to verify that the Leader has acted honestly. In Solana’s system, the PoH mechanism is augmented with Proof of Stake, whereby the Verifiers come to consensus as to whether the Leader is acting truthfully or maliciously. If a failure is detected by a two thirds majority of Verifiers, then the Leader is stripped of its role and the Verifier with the largest voting power takes on the position of the Leader.

 

Solana’s PoH has a number of benefits over the traditional PoW used in networks like Ethereum:

·       Speed and scalability. The architecture designed by Solana makes the system extraordinarily fast. While there are many parallelizedVerifiers to keep the system in check, state generation is being run by a single machine. The speed of the system will therefore scale with Moore's Law, meaning that it will scale as computing hardware itself becomes faster. Solana believes that their network can achieve 710,000 transactions per second with off-the-shelf hardware.

·       Transaction ordering: PoH interlaces a standardized timestamp into the blockchain meaning that nodes in the network can verify the time and order of events without witnessing them directly. This enables new use cases such as high frequency trading on decentralized exchanges and distributed ad exchanges similar to Google, which serves up 340,000 ads per second.

·       No sharding: Most existing smart contract platforms are looking to scale their system through sharding, where the network is partitioned into smaller shards in order to speed up processing. This is a security risk, as each shard has fewer nodes making it less secure and prone to a single-shard takeover attack.The architecture behind Solana’s PoH does not include the need to shard the network.

·       Fast finality: Verifiers are required to submit their signatures of the state within 500ms. This means that the Verifiers are agreeing to the Leader’s transaction ordering and providing finality on a transaction in under a second.

 

Solana is one of CMCC’s newest portfolio protocols. The team behind Solana has expertise in distributed networks, with high caliber management coming from senior engineering positions at Qualcomm and Dropbox. The architecture behind their technology is simple and elegant, drawing on the team’s experience in hardware and distributed systems. The Solana team has been in Hong Kong withMartin in July and Charlie and Dieter will be visiting the team’s offices inSan Francisco in August. We are excited to support them as they develop and roll out their network.

blocks