Nexa’s Scaling Strategy - How We Will Enable Over 100,000 TPS
Nexa’s Scaling Strategy - How We Enable Over 100,000TPS
Join us in showcasing the cryptocurrency revolution, one newsletter at a time. Subscribe now to get daily news and market updates right to your inbox, along with our millions of other subscribers (that’s right, millions love us!) — what are you waiting for?
Overview
There are a number of bottlenecks to allowing blockchain scaling on a PoW and UTXO-based network but they can be summarised as:
- Bandwidth: how much data can be sent between nodes.
- Speed: at validating transactions.
- Storage: space to store the blockchain.
If any of these are constrained then massive scaling on-chain is impossible. In this article I’ll discuss Nexa’s strategy for opening up each of these bottlenecks and achieving a scale that will allow the world’s financial system to use Nexa as the backbone.
Bandwidth
There are two main components to bandwidth usage on Nexa:
- Initial Blockchain Download: This is when a node downloads the entire history of the blockchain all the way back to genesis.
- Receiving new transactions: This is what allows the network to continually process new transactions as they are produced by wallets.
Initial Blockchain Download
This IBD (initial blockchain download) is why it normally takes a long time to start up a new cryptocurrency full node. This process only increases in time as the blockchain gets longer and longer in a never-ending process. This historical blockchain data only increases in size as the number of transactions happening on the network increases. This creates a problem as it can mean it becomes impossible to ever download the full history of the network with even the fastest bandwidth connection. As of writing this, Nexa only has a blockchain of 107MB, which is of course very small as it has only just launched. Bitcoin by comparison has a blockchain size of 442GB and Ethereum is now over 1TB. Ethereum can only handle about 15 transactions every second and Bitcoin only 4. So, how to solve this?
By only ever needing the UTXO set and headers going back to the genesis Nexa is able to remove this huge bandwidth roadblock. The UTXO set is the set of all unspent transaction outputs. These are essentially the equivalent to coins, or rather ‘nuggets of value’ as I like to think of them. The UTXO set is every coin ever created on Nexa.
A header is a chunk of data embedded into each block listing some important details about that block. Each block header must reference the ID hash of the previous block, this therefore creates a chain of blocks connecting all the way back to the genesis block . You might even call it a…blockchain. Thanks to the data in each header, this also proves the total amount of Proof-of-Work it took to build that chain. This makes it easy to compare to other competing chains by simply comparing how much PoW was done in total on each.
There is a missing piece to this puzzle though. How will Nexa be able to get by with miners only ever needing the UTXO set instead of needing to download the full history first, as is the case with other UTXO-based blockchains? Well, this is where ‘UTXO Commitments’ technology comes into play. I’ll discuss how this works later in this article.
Receiving New Transactions
So essentially all bandwidth becomes sending transactions between nodes. 100,000 tps is about 20MB/sec which is trivial on a business data connection. Bandwidth speeds are also increasing all the time exponentially.
Speed
SHA256 Hashing
SHA256 hashing is a key technology underlying most cryptocurrencies, including Nexa. A hash is a digital cryptographic fingerprint for a specific piece of information. There are a number of places in Nexa that hash functions are used, including in transactions and in the mining algorithm. The change in the financial and energy cost between now and the launch of Bitcoin is the key concept behind Nexa’s scaling strategy.
These custom ASICs can be used to improve the speed of doing a SHA256 hash on your desktop computer 10 billion times, and nodes must do this operation for every transaction and often many times per transaction. By using customised hardware to speed up this operation, this bottleneck is also removed.
Signature Verification
Signature verification is another compute-heavy operation that Nexa nodes must do at least once for every transaction. Cryptographic signatures are a key part of transactions and smart contracts on Nexa but they are a big bottleneck.
UTXO Lookup
Storage
UTXO Commitments
A Nexa Monetary System
In the future we’ll do a much deeper dive into what a fully established Nexa monetary system would look like, but let’s have a little peek now.
Hardware will become available that will allow miners and businesses to operate a node at an initial hardware cost of less than $1000 and on a standard business internet connection. This will enable 100,000TPS using current technology and potentially much higher with future advances.
Not only will this allow the global population to access standard P2P payments, but it will unlock a whole new economy using our scalable smart contact technology…but that is a large topic for another article in the not too distant future.
Hopefully I’ve been able to provide some clarity on Nexa’s scaling strategy, a key component in our plans to finally bring crypto to the masses.