Trilemma, scalability, and L2s - oh my!
The blockchain trilemma is the idea that blockchains have to pick 2 of 3 properties to optimize for: decentralization, security, and scalability.
If you buy in to the promise of blockchain, decentralization is at the center of that. There's no point in building a blockchain that isn't decentralized. That's called a company.
Security is also required. If your blockchain is insecure due to bugs/vulnerabilities in your code or due to someone successfully pulling off a 51% attack, then your whole network is forever untrustworthy. No one wants to use an insecure blockchain.
This leaves scalability. Sure, you can sacrifice decentralization (aka be Visa) or security to get a really high transaction throughput, but don't. If blockchains are going to achieve mass adoption, they need to be able to support significantly more transactions. Work to improve scalability is happening at L1 and L2 (definitions).
At L1, there are two main strategies for scalability:
- don't use proof-of-work (it's slow)
- "shard" the database so computers on the network don't have to keep all the data all the time
At L2, there are three main competing approaches:
- state channels - peers work together off-chain and then submit the result to the blockchain (requires trusting peers)
- rollups - handles transactions and smart contracts on its own service, then periodically submits all the results to the blockchain
- plasma - basically the same as rollups, but stores the data on its own service and backs it up with assets on the blockchain (only supports transfers, not smart contracts)
Regardless of which L2 flavor you use, you still benefit from the security and decentralization of the L1. Even if the L2 isn't decentralized itself. L2s still have to pay blockchain fees for that security, so they split the bill between users and charge a small markup.
Koinos is fee-less, but it still needs to care about scalability to support mass adoption. I expect new scaling strategies to emerge over time. We're only scratching the surface.
P.S. Koinos mainnet won't launch with sharding, but this and other L1 scaling approaches can be upgraded through governance without a hard fork. L2s can be built as microservices and separate Koinos-based blockchains.