Doing the Math on Solana NFTs
That title may have already cost me the intended audience for this article, because reading footnotes and doing math isn’t nearly as fun as joining an innumerate online mob bent on environmental virtue signaling. For those actually looking for data to form their own educated opinion about NFTs on the Solana blockchain, here’s the TLDR: people are right to be incensed about the environmental damage being done by Bitcoin and Ethereum mining. But there are blockchain systems that don’t require mining at all, and are more efficient than the online payment methods you’re using in every game you play.
Let’s start with some basic assumptions about blockchains that I hope aren’t in dispute.
I think we all agree that (1) blockchains involve computers doing something with data, (2) that computers doing anything with data consumes electricity, and (3) generating electricity by burning fossil fuels contributes to our horrifying global climate crisis. I’m less confident we can all agree on one more foundational point, but it’s nevertheless provable a priori: (4) we’re all using computers right now, and we do so quite a bit throughout the day — from work and school to playing games, chatting with friends, shopping, banking, making media, consuming media, etc. All of those activities also involve computers doing something with data.
AHA, you say. But blockchains and NFTs consume WAY MORE electricity than those other things — like WAY WAY WAY more. The stuff I do with computers is practically nothing compared to what blockchains do!
Not exactly. What you do on your phone, PC, or Playstation is practically nothing compared to what some blockchains do. Specifically, proof-of-work blockchains like Bitcoin and Ethereum. Other blockchains work very differently, as we’ll see, and the computational resources they require are actually pretty comparable to the everyday computing you do on your phone.
Let’s prove that out then. To do that, we first have to understand exactly what computers do with blockchains that requires so much computing power. Let’s start with Bitcoin as an example. The short technical answer is that computers trying to add a new block to the Bitcoin chain are performing cryptographic hash functions. The short non-technical answer is that they’re trying to break a coded message using the hardest method imaginable.
Imagine you’re a spy trying to crack an enemy code. The enemy uses an encryption box that takes any message up to a certain size, runs it through its mysterious innards, and spits out a block of seemingly random characters. To make it even harder to break the code, the block of random characters is always the same length no matter how long the message is, so the input and output would look something like this:
You’ve intercepted an encrypted message from the enemy, and miraculously you have one of the enemy’s encryption boxes. But there’s a problem: the box only scrambles messages; it doesn’t unscramble them. So you just have this:
You can’t make the box work in reverse, so the only way to decode the message is to GUESS what the message might be, feed your guess into the box, and see if what comes out looks like the code you intercepted. That’s the plan — just keep putting in every possible combination of letters until the box spits out something that looks like the code you intercepted.
What a nightmare. That would take forever! You‘d need a powerful computer that could try zillions of different possibilities every second and it would STILL take forever.
But what if you held a contest? Anyone with a computer could make a copy of the black box and try throwing guesses at it until someone hit it. With millions of computers all making random guesses, it should only take a few seconds for somebody to get lucky and hit the right answer. You could give that person a prize… something like, say, a Bitcoin. Once people realize the prize for guessing the message first is pretty sweet, they’ll want to get more computers, the fastest possible, to improve their odds of winning.
That’s a pretty close analogy to what happens every time a new block is written to the Bitcoin blockchain — which is about every 10 minutes. Millions of very fast processors churn through possible answers and put them through the algorithm, trying to guess what input will produce a particular cryptographic hash. This is what’s meant by “mining” Bitcoin. The lucky winner gets some Bitcoin, everyone else throws away all the wasted processing work they did, and the race starts over.
Of course, as the value of Bitcoin increases, more and more people want to mine it, using the most powerful computers possible. Simultaneously, with more people trading and using Bitcoin, more blocks need to be written to its chain… and the power consumption increases exponentially. It’s insane. The Bitcoin network generates more than 150 quintillion guesses to those cryptographic puzzles every second, and all but one are unnecessary. All of that wasted computation, all of the fossil fuel burned to power it.
It would make a lot more sense to write new entries to the blockchain without having to solve a ridiculously difficult puzzle, and to designate one trusted computer to do it. You could probably run the whole validation network on one smartphone if you had a fast enough internet connection. Who could be trusted to do that, though? I mean sure, the blockchain is public and everyone can see what’s written to it, but that single validator would have immense power over an entire currency. Even if you created a network of highly trusted people and had them all keeping an eye on each other, what would stop a few of them from getting together and colluding to manipulate blockchain entries to their advantage?
The answer to that problem is proof-of-stake validation. Anyone can put themselves forward as a potential validator on the blockchain if they want to, but only if they put up their own money as a guarantee that they won’t cheat. Anybody who uses that currency can also put up money to vouch for trustworthy validators. Because the blockchain is always visible and a lot of people are incentivized to monitor it very closely, any attempt to make erroneous entries is going to be immediately obvious, and that validator — along with everyone who vouched for them — will lose the money they staked on that validator.
The result is that new entries to the blockchain are validated by individual processors instead of millions, and the entries themselves require much less computational horsepower. The validators who get to make those entries are chosen based on two things: how many other people deem them trustworthy, and how much they have to lose if they try something sneaky. We know exactly how many validators there are at any particular time, and we have a pretty good idea of WHERE they are — so we know how their electricity is generated. A validator in Norway is going to be operating on an electrical grid drawing two-thirds of its power for renewable sources. A validator based where most electricity is still generated by fossil fuel is going to have more environmental impact. Because the blockchain is public and all of this information is available from multiple independent sources, there is much more transparency in Solana’s environmental impact than that of, say, Mastercard or Paypal.
This is usually the point where anti-blockchain crusaders acknowledge that ok, proof of stake solves the environmental problem, BUT… and deflect the argument into theories of how PoS systems perpetuate economic inequality because the biggest stakes have the largest voice in choosing the validators. As if the current systems for online payments — with one central validator (your bank or credit card company) holding all the power and no transparency is somehow better than a distributed network based on transparency and trust. Their case detours from environmental hysteria into a social justice argument that’s even more tenuous, and I may take that up in a future article. For now, though, let’s stick with environmental concerns and the comparison to existing online payment methods.
I know this isn’t a popular viewpoint, but the difference in energy consumption for the ~1200 validators on the Solana network versus the online payment methods we’re all currently using is a matter of math, not opinion. Proof of stake blockchains done right will always be more efficient than credit card networks for the simple reason that transactions don’t have to go through multiple intermediaries so all of them can skim a fee and sell your data. Don’t believe me? Let’s compare. Here’s what a typical online credit card transaction looks like (source):
Every arrow represents one network processing encrypted data and passing it to another. Fourteen separate data processing/transfer events, some of which involve multiple steps and require more computation than others. Let’s compare that to a Solana transaction (source):
I’m sorry, but making a purchase or minting an NFT on Solana (and similar systems) is just flat out much more efficient than other online payment methods. Plus you can look at the validation network and the nodes running and verify all this for yourself — banks won’t let you do that. Solana is targeting verified carbon neutrality by the end of 2021. PayPal is targeting 2040.
Of course the comparison to Bitcoin and Ethereum is much more dramatic. In the simplest terms possible, here’s how much energy each consumes per year (source source source source source):
Ethereum also depends on a proof-of-work system, and unfortunately it happens to be where NFTs emerged and became popular; creating an additional use-case for Ethereum that requires more transactions to be validated on its blockchain. Ethereum uses a different system for compensating miners that results in less wasted computation per transaction, but it’s still an insane amount of electricity consumption and environmental impact. There are ways to mitigate this by batching transactions or even “wrapping” an Ethereum blockchain in a layer that allows it to operate on other, more efficient systems, but I won’t go into those because they’re not how most NFTs are generated.
To sum up: based on numbers commissioned by both entities from independent auditors, as well as research by academics and watchdog organizations like Digiconomist, the Solana network uses less energy than online platforms like the VISA network on both a per-transaction and an annual burn rate basis.
That could be the mic drop right there: NFTs on the Solana network use less energy to mint than online payments, and about as much as two Google searches. For purposes of defending WildWorks’ commitment to green game development, that ought to pretty much do it: Cinder is moving us to an e-commerce model that’s better for the environment than the ones we’re using now.
One final point bears mentioning, however. Participating in uninformed cross-network online mobs entails far more energy consumption than Solana NFT transactions. At the end of the day, our path to global decarbonization requires all of us to individually examine where our electricity comes from and how much of it we use for everyday tasks. WildWorks is looking for innovative ways to reduce our games’ carbon footprint, and NFTs will be one way we do that in 2022. What are you doing?
Further reading:
https://digiconomist.net/a-solution-to-bitcoins-environmental-impact/