With the rise in cryptography adoption, many blockchain developers are in the race to solve the blockchain trilemma – a problem of finding the balance between security, scalability, and decentralization. But none have done better in that aspect than Solana.
Founded by Anatoly Yakovenko in 2017, Solana is a web scalable decentralized blockchain network that is currently able to perform throughput of 50,000 Transactions per second (TPS) with a block time of less than 400ms.
With high throughput and TPS, Solana is able to make transactions fast and fees low. This prominently incentivizes developers to build Dapps (decentralized apps) and marketplaces on top of the Solana network.
Solana also launched its mainnet beta in march 2020, this has worked well to outperform many other layer-1 blockchains in scalability thus far.
Let’s dive deeper to see how Solana stands out from the rest.
How does Solana work?
Consensus mechanism: How Solana keeps itself censorship resistant?
Solana uses a Proof-of-Stake (PoS) consensus mechanism to protect its interest in decentralization. Which in simple terms just means that validators with a stake in Solana have the right to vote when decisions are required to be made on the blockchain. And the weightage of that vote is determined by how much Solana token (SOL) each validator has staked.
This ensures that Solana is kept decentralized and no one party can have the power to decide on anything.
But unlike the normal PoS concept, Solana’s PoS did some upgrades to it. To break it down further, You will need to understand what is delegated staking and a validator.
Solana validator
Anyone or entity who wishes to run a validator node can become a validator (that includes you and me) which further reinforces its censorship resistance.
And their job is to validate and approve transactions on the Solana ledger using their own hardware.
Validators will then get rewarded with SOL tokens when they approve transactions and add them to the blockchain.
After that, they can further stake their SOL tokens back in the network to have a “stake” or voting rights to choose which blocks should be added to the Solana blockchain. If you become a validator, anyone can also stake by delegating their SOL tokens under you to increase your weightage in voting rights.
Once again, consensus voting power is stake-weighted. The more stake a validator has the more voting power he or she has.
If you wish to be a validator, here are the tech specifications you will require.
Delegated staking
A staker in Solana is someone who contributes to the growth of Solana by holding SOL tokens and stake them by delegating them to a validator. Staking with different validators also provides you with slightly different Annual Percentage Yield (APY) rates. See https://solanabeach.io/validators.
So as a validator gets backed by more stakers, their weightage will be higher thus a bigger voice when it comes to making decisions.
A staker does not need to be a validator. Anyone can stake SOL by transferring their SOL tokens to an SOL-supported wallet.
Another point to note the amount of SOL that is staked cannot be used. They will be locked for as long as you stake them.
Here are the currently supported wallets for SOL staking.
- Using SolFlare.com with Ledger Nano
- Exodus Wallet (Instead of letting you choose a validator, they will assign a validator for you.)
- Exchanges such as Binance and FTX. Similarly you cannot choose a validator. They will make that decision for you.
- Using command line tools with paper wallet (this can be very technical for beginners)
If you plan to stake with a validator of your choice, check out https://www.stakingrewards.com/earn/solana to get updates on APYs
Proof of History: Adding verifiable timestamps to the blockchain
One of the biggest problems with a permissionless blockchain is on the agreement on time. Especially when every transaction or event requires verification, syncing uptime requires a lot of resources. This is where Solana’s main feature, the Proof-Of-History is able to solve.
Proof-of-History is a high-frequency Verifiable Delay Function that requires a sequence of evaluation steps for the Solana blockchain to verify itself by creating historical records to prove that an event had occurred during a specific time.
To put things into perspective, Bitcoin’s Proof-of-Work consensus mechanism requires validators to communicate with one another to agree that time has passed resulting in additional resources and time.
This is because each node in the network uses its own local clock to keep track of time. Hence, the source of time between these networks can be inconsistent.
With PoH, Solana blockchain is able to maintain its own decentralized clock that records the time of an event in a simple SHA-256 (sequential-hashing VDF). This enables the blockchain ledger to verify the order of messages and the time is taken between events. Thus safely and securely removing the need for additional validation.
Other Key Solana features: What makes it different from the rest?
Apart from Solana’s key feature: Proof-of-History, there are 7 other key features that allow Solana to achieve high TPS and low block time. Let’s break them down one by one.
Tower BFT: A PoH-optimized version of PBFT
In trustless systems, since there is no central authority, having a reliable source of information and verifying it becomes very difficult. This is what Tower BFT is made to solve.
To understand Tower BFT and what it stands for, you need to first understand both BFT and PBFT.
So very quickly, BFT stands for Byzantine Fault Tolerance while PBFT stands for Practical Byzantine Fault Tolerance.
What is BFT?
BFT is basically a mechanism to prevent complete failure in distributed networks and trustless systems to reach or maintain consensus even when there are irregularities such as malicious nodes and messages inserted into the blockchain.
To dive in deeper, BFT or Byzantine Fault Tolerance is actually derived from the term “Byzantine Generals Problem” which is a problem widely mentioned in computer science. It is an analogy to describe a situation where “generals” from different divisions of a Byzantine army are trying to coordinate an attack on the castle at the same time to secure victory.
However, they face potential communication problems on collaborating the attack at the same time due to having misinformation from spies or traitors from within. This misinformation can be referred to as malicious nodes in a real-world context that is constantly trying to trick the blockchain.
Hence, BFT is a safeguard meant to solve the “Byzantine Generals Problem” by allowing consensus to be made regardless of malicious activities. This involved highly complex programming which we can talk more about in future lessons.
What is PBFT?
As for PBFT (Practical Byzantine Fault Tolerance), it is basically an upgraded consensus algorithm from the original BFT consensus mechanisms that tolerate Byzantine faults.
What is a Tower BFT then?
Tower BFT or Tower Byzantine Fault Tolerance is just another upgraded version of PBFT that uses Proof-of-History as a cryptographic timer. With the time now synchronized, consensus can be reached without high latency in transactions or massive overhead in messaging. In other words, this saves resources hence providing a quicker outcome.
Turbine: A block propagation protocol
As we have discussed earlier, one of the main problems with blockchain is scalability. Take for example, when it comes to propagating huge amounts of data to a large number of peers, there is always not enough bandwidth to accommodate so many connections.
Solana’s Turbine optimizes this by adopting some of BitTorrent’s propagation methodology to create their own multi-layer block propagation mechanism.
While a block is streaming or transmitting data, it breaks up a block into smaller packets as well as their erasure codes. During this streaming process, a random path per packet will be created through the cluster and “fan-out” or broadcast to other neighborhoods.
In layman terms, the Turbine protocol is meant to shred transaction data into smaller chunks then share and propagate parts of it to other random peers in different “neighborhoods”.
Each of these neighborhoods will have leaders and validators to do the same thing, shred/propagate data within its own neighborhood then rebroadcast a portion of these data packets to the next random neighborhood in the next layer and so on.
This is also how the “fanning-out” or rebroadcasting of data can reach a lot more validators in a shorter time period, allowing Solana to increase bandwidth and transmit data a lot faster.
Gulf Stream: Mempool-less transaction forwarding protocol
Gulf stream is Solana’s solution to more effective and faster mempool management. To understand the gulf stream in detail, lets us take a look at mempools
What are mempools?
Memory pool or mempool, in short, is a holding area that stores unconfirmed transactions before it gets confirmed and added into the blockchain as a new block.
For example – when a person transfers 1 BTC, this transaction data will be broadcasted to nodes for simple validation such as ensuring outputs do not exceed inputs or checking signatures to make sure they are correct. Any invalid transactions will be disapproved immediately.
Validated data is then passed on to its peers as it propagates. It will be placed into a memory pool while awaiting miners to collate and add them to a block before the transaction is confirmed.
Bitcoin’s traditional mempool
So the typical mempools of old blockchain such as bitcoin works like this:
Nodes can be run by different people with different hardware hence capacity for every node is different. In other words, the amount of unconfirmed pending transactions and mempool sizes varies between different sources. As too many transactions get piled up, nodes will eventually not be able to handle them resulting in an overload or congestion.
So what does it do when it gets congested?
It sets up a transaction fee threshold and only prioritizes transactions that have a higher fee rate than the threshold. Any fee rate lower than the threshold will be removed from mempool. This also means higher transaction fees for users
Solana’s Gulf Stream
Solana’s gulf stream on the other hand eliminates the need for a mempool. The protocol can handle a memory pool size of 100,000 transactions without having to increase network throughput. So it can process and confirm transactions even before new data is introduced.
It does this by caching and forwarding transactions to validators ahead of time. Thus allowing them to solve congestion and reduce confirmation time.
Sealevel: World’s first parallel smart contracts run-time
Solana enables all states of a transaction to read or write while executing to run smart contracts and transactions in parallel. This creates faster runtime and can process tens of thousands of smart contracts in parallel.
In other words, Solana processing capabilities not only enables transactions that are only reading the same state but to execute at the same time, they are also able to run non-overlapping transactions and execute them synchronously.
Pipeline: Transaction processing unit for validation
To become one of the fastest blockchains in the market, being able to form consensus quickly is just one piece of the puzzle.
Solana needs to find ways to quickly validate blocks of transactions and replicate them throughout the network to make it complete.
And Pipeline is that step up to enable Solana to efficiently increase its performance.
As the name suggests, pipelining is to run input data into a pipeline or a sequence of steps using different hardware. Each hardware is made to perform its best specifically for one task allowing it to maximize process time.
How does Pipeline work?
To maximize the efficiency of each hardware, Solana took the idea from CPU designing and created the “four-stage transaction processor in software” which is also known as Transaction Processing Unit or TPU.
The four processing stages consist of:
- Data Fetching at the kernel level
- Signature Verification at the GPU level
- Banking at the CPU level
- Writing at the kernel space
Without going too much into details, these 4 sequential steps enable Solana to quickly validate blocks of transactions. And when used in conjunction with Turbine, Solana is able to propagate block data fast by breaking them down to other validator nodes.
Cloudbreak: Horizontally scaled accounts database
Cloudbreak is the technology behind Solana’s network scalability. It is an account database structure designed to read and write concurrently across the network.
Traditional open source databases often cause bottlenecks as they do not solve individual problems in the blockchain settings. Cloudbreak on the other hand uses several solutions utilized by operating systems to tackle issues individually.
Archivers: Distributed ledger storage
Archivers is Solana’s storage solution that tackles the problem of network membership limitations.
In a year at full capacity, the Solana network will generate at least 4 petabytes of data.
To put things into perspective, 1 petabyte is equal to 1,024 terabytes (TB), or 1 million gigabytes (GB)
In other words, not every node in the network will be able to support that kind of data storage capacity. This may result in the centralization of membership to a few validators who have the capability to maintain such a huge storage size.
This is where Solana’s Archiver comes into play.
Archivers are basically lightweight clients used to offload data from validators. They are not required to have very high-end specs as their sole purpose is to download and store different pieces of the ledger.
By storing segments of the ledger, they earn rewards. But at the same time, they will be checked to make sure the right data are being stored.
How it works
The replicator network will divide the ledger history into different parts. Archivers will provide signals of their available storage space to the network. Consolidation of total storage space from archivers will be accessed before data assignments are carried out.
From there, archivers will download data from consensus validators with checks to prove data is correct and is being stored. At this point, archivers will have to complete a Proof of Replication or PoRep. Finally, they will be rewarded for their efforts.
SOL Token Explained
SOL is a utility token and a native digital asset to the Solana protocol. The SOL token has a couple of uses:
- Perform micropayments or lamports made by the system.
- Used as transaction fees when making transfers or interacting with the Solana network such as smart contracts.
- Can be passed to nodes in Solana’s cluster to become a validator or run on chain programs.
- Can be staked or delegated staked to earn rewards.
SOL Tokenomics
Now that we understand how powerful Solana is, what about their fundamentals?
Solana (SOL) Tokens in circulation
The total supply of SOL tokens is 489 million. As of the publication of this article (02 August 2021), the amount of SOL tokens in circulation is 272 million.
SOL market cap
- Market Cap as at 02 August 2021: $9,246,547,038.80
- Fully Diluted Market Cap as at 02 August 2021: $16,771,705,672.52
A fully diluted market cap refers to the market cap of SOL when the total supply of their token is in circulation.
SOL token distribution:
- Initial Seed Sale: 16.23%
- Founding sale: 12.82%
- Distributed among members: 12.79%
- Solana Foundation: 10.46%
The remaining tokens are for public release, private sales, or yet to be released.
Is SOL inflationary or deflationary?
In short, SOL is an inflationary utility token that does have a deflationary component in place. This is to burn off a percentage of every transaction fee over time.
This results in a decrease in the inflation rate over a period of time as per Solana’s proposed inflation schedule
Solana’s Inflation Schedule:
- Initial Inflation Rate: 8%
- Dis-inflation Rate: −15%
- Long-term Inflation Rate: 1.5%
Solana (SOL) Investors
In order to know if SOL has a strong prospect in the long term, we will need to do some digging. Understanding who invested in Solana can provide more insights into whether this blockchain protocol will continue to rise in the future.
Here is a list of SOL early investors:
Date | Investor | Amount | Round |
NA | Blockchain Fund Chelyabinsk | N/A | Unverified |
Jun 2018 | Kosmos Capital | N/A | Seed |
Sep 2018 | Blockwall Management GmbH | N/A | Seed |
Jul 2019 | Passport Capital Foundation Capital Slow Ventures Kevin Rose Rockaway Capital Reciprocal Ventures BlockTower Capital Lyndon Rive Multicoin Capital Distributed Global | $20 million | Series A |
Mar 2020 | CoinList | $1.8 million | Seed |
Mar 2021 | OKEx MXC Exchange Block Dream Fund | $40 million | Early VC |
Jun 2021 | Andreessen Horowitz Polychain Capital CoinFund Multicoin Capital Jump Trading Alameda Research ParaFi Capital CoinShares Ventures CMS Holdings Blockchange Ventures Sino Global Capital Collab+Currency Memetic Capital | $314 million | ICO |
One of the prominent names on that list is Andreessen Horowitz also known as a16z crypto investments. Andreessen Horowitz picks a wide range of investments from speculative growth companies to cryptocurrencies and even NFTs. And many of which have taken off to the moon with huge returns.
Popular projects built on Solana
1. Project Serum
Serum is a completely permissionless decentralized exchange or DEX, in short, that is built on top of the Solana blockchain. With Solana as the main network chain, Serum is able to provide fast transactions and settlements at very low gas fees.
2. Raydium
Raydium is an AMM or Automated Market Maker built on the Solana blockchain. It is a liquidity provider for Serum decentralized exchange (DEX).
Conclusion: Is SOL worth investing?
With Solana being one of the top 20 altcoins and ranked as the top contender of Ethereum, their blockchain protocol is definitely worth a good look at.
However as the saying goes, there are no guarantees in life except death and taxes, investing or trading SOL does come as a risk depending on your trading strategy.
In my opinion, there are definitely more upsides than downsides in the long-term game of probability for Solana.
Stay tuned as we will provide a deep dive into Solana as an investment in the next coming weeks.
https://coincentral.com/byzantine-generals-problem/
https://blockonomi.com/practical-byzantine-fault-tolerance/
https://docs.solana.com/cluster/turbine-block-propagation
https://bitcoin.stackexchange.com/questions/81780/at-which-stage-is-a-transaction-validated
https://99bitcoins.com/bitcoin/mempool/
https://blog.kaiko.com/an-in-depth-guide-into-how-the-mempool-works-c758b781c608
https://academy.binance.com/en/glossary/mempool
https://coinyuppie.com/understanding-solana-turbines-gulf-stream-and-sea-level/
https://www.works-hub.com/learn/beginners-guide-to-solana-the-web-scalable-blockchain-1e6f6
https://solana.com/news/cloudbreak—solana-s-horizontally-scaled-state-architecture
https://immunebytes.com/an-introduction-to-solana-is-it-really-faster-than-ethereum/
https://forums.solana.com/t/bounty-archivers/313
https://medium.com/stakin/a-quick-introduction-and-overview-of-solana-c18335bed636
https://academy.binance.com/en/articles/what-is-solana-sol
https://genesisblockhk.com/what-is-solana/#The-Sol-Token
https://medium.com/coinmonks/solana-more-update-for-sol-becb65024877
https://www.reddit.com/r/solana/comments/nbiucn/solana_tokenomics/