Everything Everywhere Daily: History, Science, Geography & More - How Blockchains Work
Episode Date: September 26, 2023One of the biggest innovations in computing over the last several years has been the blockchain. There have been a host of companies that have hyped products using a blockchain. Blockchains are the ...basis of all cryptocurrencies and non-fungible tokens. Despite all the talk about blockchains, most people still aren’t totally sure what a blockchain is or how it works. So, learn more about what blockchains are and how they work on this episode of Everything Everywhere Daily. Sponsors Draft Kings Step into the thrilling world of sports and entertainment with DraftKings, where every day is game day! Join the millions of fans who have already discovered the ultimate destination for fantasy sports and sports betting. Download the DraftKings Sportsbook app and use code EVERYTHING to score two hundred dollars in bonus bets instantly when you bet just five dollars! Newspapers.com Newspapers.com is like a time machine. Dive into their extensive online archives to explore history as it happened. With over 800 million digitized newspaper pages spanning three centuries, Newspapers.com provides an unparalleled gateway to the past, with papers from the US, UK, Canada, Australia and beyond. Use the code “EverythingEverywhere” at checkout to get 20% off a publisher extra subscription at newspapers.com. Noom Noom is not just another diet or fitness app. It’s a comprehensive lifestyle program designed to empower you to make lasting changes and achieve your health goals. With Noom, you’ll embark on a personalized journey that considers your unique needs, preferences, and challenges. Their innovative approach combines cutting-edge technology with the support of a dedicated team of experts, including registered dietitians, nutritionists, and behavior change specialists. Noom’s changing how the world thinks about weight loss. Go to noom.com to sign up for your trial today! ButcherBox ButcherBox is the perfect solution for anyone looking to eat high-quality, sustainably sourced meat without the hassle of going to the grocery store. With ButcherBox, you can enjoy a variety of grass-fed beef, heritage pork, free-range chicken, and wild-caught seafood delivered straight to your door every month. ButcherBox.com/Daily Subscribe to the podcast! https://link.chtbl.com/EverythingEverywhere?sid=ShowNotes -------------------------------- Executive Producer: Charles Daniel Associate Producers: Peter Bennett & Cameron Kieffer Become a supporter on Patreon: https://www.patreon.com/everythingeverywhere Update your podcast app at newpodcastapps.com Discord Server: https://discord.gg/UkRUJFh Instagram: https://www.instagram.com/everythingeverywhere/ Facebook Group: https://www.facebook.com/groups/everythingeverywheredaily Twitter: https://twitter.com/everywheretrip Website: https://everything-everywhere.com/ Learn more about your ad choices. Visit megaphone.fm/adchoices
Transcript
Discussion (0)
One of the biggest innovations in computing over the last several years has been the blockchain.
There have a host of companies that have hyped products using a blockchain.
Blockchains are the basis of all cryptocurrencies and non-fundable tokens.
Yet, despite all the talk about blockchains, most people still aren't totally sure what a blockchain is or how it works.
So learn more about what blockchains are and how they work on this episode of Everything Everywhere Daily.
What if your perceptions about the past were wrong?
ThruLine is a podcast that takes you back.
back in time to uncover the parts of the story that may have gone unnoticed.
It effectively turned day into night.
And how it shaped the world now.
Time travel with us every week on the Thuline podcast from NPR.
If you've paid any attention to technology or computer news in the last few years,
you've probably heard a lot about blockchains.
Blockchains are the technology behind cryptocurrencies and non-fungible tokens or NFTs.
However, I've noticed that while there have been many mentions of blockchains, there hasn't been a lot in the way of explaining what a blockchain actually does.
My goal in this episode is to provide a high-level understanding of what a blockchain is and how it works.
I'm not going to get into the specifics of any particular use of blockchains.
Also, I know I have a wide variety of people who listen to the show, so there will be some people who are very familiar with what I'm talking about,
and there are some who might not even know what a blockchain is.
This episode is intended for the latter group, who may have heard the term but otherwise don't really know much about it.
So with that, let's start with what problem a blockchain is trying to solve.
So let's create a hypothetical example and say that I'm going to allow people to vote on if I should do an episode on tomatoes.
So I'll create a Microsoft Word document and make it available for download.
A bunch of people download that Microsoft Word file and then vote in the Word file.
I've distributed the file, but there's an obvious problem.
No one else, including myself, can see what changes you made.
The file is distributed, but it's not connected.
So if everyone sent me their copy of the Word document,
no one else would be able to see what the votes were.
Some of the votes might get stuck in my spam folder.
Even if I re-uploaded the results,
there's no guarantee that what I post is actually correct.
So let's solve that problem by creating a document in Google Docs
that anybody can access online.
Now, everyone can see and edit the same document, but this introduces a new problem.
Let's say someone out there really doesn't want me to do an episode on tomatoes.
So when people start adding their names to the pro-tomato list, the anti-tomato people start deleting them.
This document is public and distributed, but it's inherently untrustworthy.
We could solve this problem by making me some sort of admin, where I can see all the edits that everyone makes.
So, again, someone votes on the tomato episode.
But I secretly don't want to do a tomato episode, so I edit the document to delete pro-tomato votes.
The entire system has now been condensed into trust in a single person, me who has a vested interest in the outcome.
So to solve that problem, instead of me being the admin, we'll let some third-party admin at Google handle everything.
However, the problem is still there.
We now have to trust that person, and we don't know.
if they're pro or anti-tomato.
Even if we removed all the admins and created some sort of automated system,
we would still have to deal with the issues of hackers hacking into a database to change the results,
hackers who really love or hate tomatoes.
This is a seemingly intractable problem.
An episode about tomatoes is a trivial example, of course,
but you can see how this might be a huge problem if we are talking about money or other important data.
The problem of achieving consensus among groups of distributed,
and possibly faulty actors in the presence of unreliable communication channels is known as the
Byzantine general problem. For most things, a centralized database is fine, but any centralized
system is also a centralized point of failure. Almost weekly, you'll hear news stories about
some company that had their data stolen by hackers. A blockchain can solve many of these problems.
The idea behind blockchains was first proposed in 1982 by the cryptographer David Chalm and his
dissertation titled Computer Systems Established Maintained and Trusted by Mutually Suspicious
Groups. Further work was done in the early 90s by cryptographers with attempts to create
timestamps that couldn't be altered. But the first working blockchain system was developed in 2008
by an unknown person who was known only by the pseudonym Satoshi Nakamoto. His system was used to
create the cryptocurrency known as Bitcoin. However, soon after the release of Bitcoin, people realized
that the blockchain technology that was at the foundation of it could be used for a wide variety
of things. The key to understanding blockchains has to do with something called a hash function.
And I'm not going to get into the weeds on the mathematics of it, but a hash function is a type
of function known as a trap door or one-way function. They are very easy to calculate,
but almost impossible to reverse. In the case of a hash function, you can put anything
into it and what comes out is a number of a fixed length.
One of the most popular hash functions is known as SHA2.
SHA stands for Secure Hash Algorithm and it was created by the United States National Security
Agency in 2001.
There are different variants of it, but the most common is SHA 256.
That means whatever you put into the function, it can create a binary number that is 256
digits long or a 64 digit hexadecimal number in base 12. For example, if you put in a single character,
it will output a binary number of 256 bits. If you put in the complete works of Shakespeare,
you still get a 256-bit number as an output. A 256-bit binary number is really big. If you were to
convert it into a number in base 10 like we're used to, it would be a number
with 77 digits.
That is a number so large
that it's greater than all of the atoms
in our galaxy.
The thing about a hash function
is that if you change even one number
or character in your input,
you get a completely different output.
The output doesn't change by one digit.
In theory, every digit could change.
Moreover, if you know the 256-bit output
that's created by a hash function,
it's almost impossible to figure out
the input that created that output.
That's why it's known as a trapdoor or one-way function.
It's very easy to calculate and very, very hard to reverse.
In fact, the only known way to find out what the original input was on a hash function,
assuming that you know the output, would be to guess randomly.
You'd probably win the lottery a billion times before you could figure out the correct
input to get the same output from a hash function.
So what does this have to do with a blockchain?
The first part of a blockchain is the block.
Using the original example of people voting on tomato or not tomato,
let's assume that each vote will be a block.
The first person voting will enter tomato.
Entering tomato in the hash function will then create a very long string of numbers
that is unique to the word tomato.
I'm now going to chain the second block to the first block,
hence a block chain.
The second block will be the output of the first block
plus whatever the second vote is.
This creates a very new, very long number
as the output of the second block.
Now remember what I said,
if you change even one number or one character
in the input of a hash function,
you get a completely different output.
That means if anybody were to tamper with the first vote
and try to change it to not tomato,
it would radically change the output,
which itself was part of the input of the second block.
Changing the input anywhere along the chain
changes everything that comes after it
because everything is chained together.
You can chain hundreds, thousands, or millions of blocks together
and you will in the end get a unique result,
a result that can only appear if every link in the chain is valid.
Moreover, this verification in the chain can be done by anyone.
There doesn't have to be a single computer.
that does all of the computations.
Because every link on the chain needs to be verified.
In theory, everyone could have a copy of the blockchain
and verify every step in the chain themselves using the same hash function.
Because everyone using the same hash function can get the exact same result,
and everyone has a copy, this is known as a distributed public ledger.
It is public, transparent, distributed, tamper-proof,
and it requires no trust in a single individual.
Now, the example I gave of the tomato voting is trivial, obviously, but it illustrates the point.
A blockchain is a chain of blocks.
A hash function creates each block with an output that is nearly mathematically impossible to tamper with without ruining the entire chain.
Real-life blockchains are much more complicated than this.
For starters, each block isn't necessarily a single entry.
It could be a collection of entries.
One issue with real blockchains, like with Bitcoin, is the creation of very.
new blocks. Because multiple transactions are in a single block, creating new blocks isn't done
willy-nilly. Creating a new block is difficult. It's so difficult that the process is literally called
mining. To create a new block, you have to find a value that when run through the hash function
starts with a long string of zeros. How many zeros will depend on the difficulty of the setting.
Because there's no way to predict what number will come out of a hash function, the only way to
find such a number is by just testing random numbers at massive scales. And this is called hashing.
As of the time of this recording, there are about 424 million terra-hashes conducted every second
for the Bitcoin blockchain. That's 424 million trillion hashes every second, just trying to find
a number that could start a new block. Even with all of these mathematical guesses, only one new
block is created about every 10 minutes. This difficulty in creating new blocks is known as
proof of work. So what's the point of all this? The biggest use today is for cryptocurrencies. The
blockchain literally tracks every single transaction that has ever occurred. A few years ago,
in an effort to learn more about all this Bitcoin stuff I was hearing about, I went and started my
own Bitcoin note on a tiny Raspberry Pi computer. When I first turned it on, it took a week to verify every
single transaction in history, and the entire blockchain now takes up about 500 gigabytes of storage.
However, there are other uses beyond cryptocurrencies. There's a service called PodPing that
actually uses a blockchain to inform services when podcasts have been updated. It cuts down on the
tremendous bandwidth costs that are incurred, constantly checking to see if a podcast has been
updated. Rather than checking the RSS feed for every single podcast over and over and over,
you just need to follow the updates of a single blockchain to know when a show has been updated.
blockchains allow non-fungible tokens to be assigned to a single user.
Many of the current uses of NFTs have just been for collectibles,
but it also works on anything digital that you want to be something that can't be infinitely copied.
Blockchains have been proposed for other types of data that need to be secured and potentially available anywhere.
Real estate deeds are an example of something that could be stored in a blockchain
to ensure that records aren't lost and are accessible by anyone.
It could also potentially remove many of the intermediaries required for a real estate transit.
action. Likewise, there are many things that do not make sense to put on a blockchain. I've heard
many proposals for things that are really just large databases that would require a large data
center that would never work well on a distributed blockchain. What I've covered in this episode is a
very cursory overview of blockchains and how they work. And if my explanation didn't sufficiently
explain how blockchains work, I suggest visiting blockchain demo.org. There, they have a sample
tool that you can mess around with to see how hash functions work when you input data and how
different blocks can chain together. Blockchains do have a lot of potential uses. It solves one of the
trickiest problems with electronic communications. How can you verify data in a decentralized
manner? But at the same time, it isn't a panacea, and it isn't designed to be used with everything.
The executive producer of Everything Everywhere Daily is Charles Daniel. The associate producers
are Peter Bennett and Cameron Kiefer. Today's review comes from listener Alicia from Denver
over on Apple Podcasts in the United States.
They write,
Great way to learn about a variety of topics.
Gary's podcast covers a wide variety of topics,
from historic events to geographic facts to cultural heritage.
In 15 minutes, you can get educated on a topic in-depth and in detail.
And Gary's voice is very pleasant.
Love it.
Thanks, Alicia.
I appreciate your kind words,
and I'm always glad to hear from listeners up in the Mile High City.
Denver is one of my favorite cities,
and I always look forward to returning.
Remember, if you leave a review more, send me a boostogram,
you two can have it right in the show.
