Who we are
x
Goals for the Class
Schedule:
Arrival:
Resources
Slides / Extended Learning:
Contact:
Crypto Bootcamp
Blockchain Basics
The problem blockchain solved
Blockchain has fundamentally enhanced how we interact on the internet.
The problem blockchain solved
Have you ever thought about how the internet really works?
The Internet is simply a platform that connects peoples devices allowing them to interact
How people connect over the internet without �Blockchain technology
How people connect over the internet without �Blockchain technology
2. Decentralized Systems
Centralized Systems
It is the most popular way the internet connects people together
Centralized Systems
It is the most popular way the internet connects people together
Connections are made through one central computer (white dot)
Centralized Systems
Examples of Centralized Systems: Facebook, Google, Instagram, etc.
Centralized Systems
Are they Safe?
They are safe ONLY when people are able to depend on the central computer (white dot)…
Problem With Centralized Systems: Dependency
Problem With Centralized Systems: Dependency
Problem With Centralized Systems: Dependency
Problem With Centralized Systems: Dependency
Problem With Centralized Systems: Dependency
Centralized Systems are fragile because they are dependent on a central computer
Problem With Centralized Systems: Dependency
Example:
In Fall 2021 Facebook’s servers broke... We could not connect with our friends/family on Facebook until the servers were fixed
Problem With Centralized Systems: Dependency
Pros of Communication in Centralized Systems
The central figure can create agreement amongst all network participants
Pros of Communication in Centralized Systems
There can be disagreement between blue, green, purple, red of what is true...
The central authority can establish what is true
Pros of Communication in Centralized Systems
Pros of Communication in Centralized Systems
Overview How We Connect on the Internet
Centralized System | | |
Heavily Dependent on Central Figure | | |
Can Agree on Common Truth | | |
Overview How We Connect on the Internet
Centralized Systems
2nd Way of Communication: Decentralized Systems
Centralized Systems
Decentralized Systems
Decentralization is another way people are connected on the internet
Decentralized systems, unlike a centralized system, do not rely on a central computer (white dot)
Pros of Decentralized Systems - Not Dependent on Central Figure
Pros of Decentralized Systems - Not Dependent on Central Figure
Pros of Decentralized Systems - Not Dependent on Central Figure
Decentralized Systems
When you hear “decentralized” think freedom from dependency…
Decentralized Systems
When you hear “decentralized” think freedom from dependency…
Example: Bikes Around NYC
People do not depend on any central bike rack to ride city bikes.
Bike stations are decentralized and are spread
across the city
People will always be able to ride bikes no
Matter if one bike-station is broken
Pros of Decentralized Systems
There is no single point of failure!
Cons of Decentralized Systems
Are they Safe?
Use of decentralized systems are relatively safer than centralized systems because they have no single point of failure
Cons of Decentralized Systems
Are they Safe?
BUT....
DECENTRALIZED SYSTEMS ARE NOT PERFECT
Cons of Decentralized Systems
Can’t agree on on a single common truth
Cons of Decentralized Systems
There can be disagreement between what blue, green, red, purple, and white thinks is true
There is no central authority to establish what is true
Cons of Decentralized Systems
The inability for participants in a decentralized system to find common truth is a big con of decentralized systems
Cons of Decentralized Systems
Byzantine’s General Problem
This problem has a formal name: Byzantine Generals’ Problem
Suppose you are a general in decentralized system, but want to plan a coordinated attack against an enemy with your other generals
Activity: Act out BGP
Witness how agreeing on a common truth in a decentralized system is difficult
[End of Lecture I]
Lecture 1 Review
Lecture 1 Review
Blockchain Solves the “Byzantine General Problem!”
... In other words, the inability to come to a common truth in a decentralized system!
Without Blockchain… Trust Issues / Can’t agree on common truth
With Blockchain… Common truth and clear communication
Without Blockchain… Trust Issues / Can’t agree on common truth
Overview How We Connect on the Internet
Centralized System | Decentralized Systems | Blockchain |
Heavily Dependent on Central Figure | Decentralized (Not Dependent on Central Figure) | |
Can Agree on Common Truth | Can’t agree on common truth | |
Overview How We Connect on the Internet
Centralized System | Decentralized Systems | Blockchain |
Heavily Dependent on Central Figure | Decentralized (Not Dependent on Central Figure) | |
Can Agree on Common Truth | Can’t agree on common truth | |
Centralized System | Decentralized Systems | Blockchain |
Heavily Dependent on Central Figure | Decentralized (Not Dependent on Central Figure) | Decentralized (Not Dependent on Central Figure) |
Can Agree on Common Truth | Can’t agree on common truth | Can Agree on Common Truth |
?
Overview How We Connect on the Internet
Key Principle #1:�Blockchain Technology is a way of connecting on the internet that �1. is decentralized (does not require a central computer), but �2. can still agree on a common truth
Now that we know what Blockchain does...��What does a blockchain look like?
A Blockchain is structured as “chain of blocks”
Why does a Blockchain look this way?
Decentralized Systems can’t agree on on a single common truth
Decentralized Systems can’t agree on on a single common truth
This makes transferring money in a decentralized system impossible
Decentralized Systems can’t agree on on a single common truth
This makes transferring money in a decentralized system impossible
Decentralized Systems can’t agree on on a single common truth
This makes transferring money in a decentralized system impossible
Decentralized Systems can’t agree on on a single common truth
This makes transferring money in a decentralized system impossible
Decentralized Systems can’t agree on on a single common truth
This makes transferring money in a decentralized system impossible
Decentralized Systems can’t agree on on a single common truth
This makes transferring money in a decentralized system impossible
I never spent the money!
Yes you did!
Decentralized Systems can’t agree on on a single common truth
This makes transferring money in a decentralized system impossible
Now I can double spend!
Now I can double spend!
Without common truth...
Lots of double spending / fraud
Centralized Systems do not have “double-spending problem” because can agree on a common truth
Centralized Systems do not have “double-spending problem” because can agree on a common truth
Centralized Systems do not have “double-spending problem” because can agree on a common truth
How can we stop “double spending” in a decentralized system?
How can we stop “double spending” in a decentralized system?
Use Block + Chain structure!
The blockchain is public list of data “blocks” which include...
7/7/2022
7/8/2022
7/9/2022
7/10/2022
The blockchain is public list of data “blocks” which include...
7/7/2022
7/8/2022
7/9/2022
7/10/2022
Purple sends $100 to Green for shoes
Green sends $50 to red for ice cream
Green sends $50 to blue for a video game
Red sends $50 to purple for dinner
The blockchain is public list of data “blocks” which include...
7/7/2022
7/8/2022
7/9/2022
7/10/2022
Purple sends $100 to Green for shoes
Green sends $50 to red for ice cream
Green sends $50 to blue for a video game
Red sends $50 to purple for dinner
7/11/2022
Purple sends $100 to blue for a bicycle
+
The blockchain is public list of data “blocks” which include...
7/7/2022
7/8/2022
7/9/2022
7/10/2022
Purple sends $100 to Green for shoes
Green sends $50 to red for ice cream
Green sends $50 to blue for a video game
Red sends $50 to purple for dinner
7/11/2022
Purple sends $100 to blue for a bicycle
+
The blockchain is public list of data “blocks” which include...
The “Public” / Network Participants
7/7/2022
7/8/2022
7/9/2022
7/10/2022
Purple sends $100 to Green for shoes
Green sends $50 to red for ice cream
Green sends $50 to blue for a video game
Red sends $50 to purple for dinner
7/11/2022
Purple sends $100 to blue for a bicycle
+
The “Public” / Network Participants
The blockchain is public list of data “blocks” which include...
7/7/2022
7/8/2022
7/9/2022
7/10/2022
Purple sends $100 to Green for shoes
Green sends $50 to red for ice cream
Green sends $50 to blue for a video game
Red sends $50 to purple for dinner
7/11/2022
Purple sends $100 to blue for a bicycle
+
The “Public” / Network Participants
Bonus if time: What are the links?
7/7/2022
7/8/2022
7/9/2022
7/10/2022
Purple sends $100 to Green for shoes
Green sends $50 to red for ice cream
Green sends $50 to blue for a video game
Red sends $50 to purple for dinner
7/11/2022
Purple sends $100 to blue for a bicycle
+
The “Public” / Network Participants
Hash functions!
Centralized System | Decentralized Systems | Blockchain |
Heavily Dependent on Central Figure | Not Dependent on Central Figure | Not Dependent on Central Figure |
Can Agree on Common Truth | Can’t agree on common truth | Can Agree on Common Truth |
Overview How We Connect on the Internet
How do we prevent network “forks”? How do we prevent one chain from becoming many?
Proof of Work | Proof of Stake |
Network participants complete “work” to add blocks to the chain. | Network participants “stake” funds to add blocks to the chain. |
Has worked in networks like Bitcoin for decades, results in stable BFT can guarantee safety as long as <51% of nodes are adversarial. | In 2022, Ethereum moved from Proof of Work to Proof of Stake. PoS is much more energy efficient while providing similar safety guarantees. |
Extremely energy intensive. On a list of energy consumption by country, Bitcoin is ~25. | Staking requirements are very high resulting in significant re-centralization. |
Consensus / Byzantine Fault Tolerance Mechanisms
Activity: Act out Consensus to solve Byzantine Generals
[End of Lecture II]