Bitcoin
Bitcoin
was one of the first protocols to use this revolutionary technology called "blockchain". Satoshi Nakamoto released Bitcoin's white paper, and it outlined how bitcoin can be used to make peer-to-peer transactions in a decentralized network. This network is powered by cryptography
. It allows people to engage in censorship-resistant finance in a decentralized manner. Because of some of bitcoin's characteristics, many people regard it as a superior store of value to other assets such as gold.That's why it is commonly referred to as "digital gold." Similar to gold, there's a scarce and set amount of it on the planet, and people use it to buy and sell, similar to other assets. You can read more about the original vision in the [white paper] (https://bitcoinwhitepaper.co/).
Ethereum
Some people saw this technology and thought that they could do even more. A few years later, a man named Vitalik Buterin
released a white paper describing a new protocol called Ethereum, which used the same blockchain infrastructure but with an additional feature. In 2015, they released this project called Ethereum
. He and several other co-founders took this blockchain technology and applied it in ways that allowed people to make entirely decentralized applications, decentralized organizations, build smart contracts, and engage in agreements without a third-party intermediary or centralized governing force. Their idea was to take the same pieces that made bitcoin great and add smart contracts to them. Technically, this was not even a new idea. Back in 1994, a man named Nick Zabo proposed a technology called Smart Contracts
.
Smart Contracts
A Smart Contract is a self-executing set of instructions that is executed without a third-party intermediary. They come to life on a blockchain, and these smart contracts are really going to be a core thing that we're going to be working with and we're going to be developing. Smart contracts are similar to regular traditional contracts that people make between each other, but instead of writing these contracts down on pen and paper or typing them on the computer, they're entirely written in code. The terms of the agreement are written in code and automatically executed by the decentralized blockchain network. These are the main differentiators between the Ethereum protocol and the Bitcoin protocol.
Bitcoin Vs Ethereum
Technically, Bitcoin also has smart contracts; however, they're not Turing Complete
: they don't have the full range of capabilities as a Turing-complete application like Ethereum. This is actually an intentional move by the Bitcoin developers. They view the bitcoin network as an asset, whereas the Ethereum and Ethereum developers view that asset as an asset and also a utility for people to build these smart contracts. These smart contracts are revolutionary technologies, but they actually come with a fatal flaw with what's known as The Oracle Problem
.
Oracle Problem & Solution
These blockchains are deterministic systems, and we'll learn very soon. This determinism means they are a walled garden, meaning that everything that happens in these smart contracts and on this blockchain happens in this little box. Now, of course, if you want these smart contracts to actually be these digital superior agreements, then they need to interact with the real world and get real data and external outside the blockchain computation. This is where oracles
come into play. Oracles are the devices that bring data into a blockchain or execute some type of external computation. Great, so oracles are the solution. Now blockchain can talk to the real world, right? Well, not quite. Our blockchains and smart contracts are these decentralized applications, and in order for them to stay decentralized, that means they also need to get their data and external computation in a decentralized manner as well. Your on-chain logic will be decentralized on the blockchain, but you'll also need your off-chain data and your external computation decentralized as well.
Hybrid Smart Contracts
Combining on-chain logic settlement layers with this off-chain data and external computation builds what are called Hybrid Smart Contracts
. A large majority of defi applications
in the largest applications today are these hybrid smart contracts. This is where the protocol chain link comes into play.
Chainlink
Chain Link
is a decentralized modular oracle network that allows you to bring data into your smart contracts and do external computation. These hybrid smart contracts can have this on-chain settlement and interact with the real world in some meaningful way. Chain link is an incredibly powerful oracle network because it allows us to get data, get randomness, do some type of update or really customize our smart contracts in any way we want and elevate them to do anything that we want them to do.
Importance of Ethereum
A decentralized application is usually a combination of several smart contracts. Smart contracts are going to be what we code, write, and deploy for the majority of this lesson. The Ethereum protocol has given rise to many new paradigms and industries, including DEFI
, NTFs
, DAOs
(decentralized autonomous organizations), Layer2
, and more. A couple of other protocols have taken this Ethereum vision and gone in a different direction with it, like Polygon, Polkadot, or Avalanche. If we learn the core basics of smart contract development on the Ethereum platform, all these skills translate to all these other chains as well.
There are some smart contract platforms, aka blockchains, that don't use solidity, but learning fundamental skills here will still translate to every single other blockchain.
Chainlink features
Chainlink is the most popular and powerful decentralized oracle network and is going to be the one we're going to focus on here. Chainlink is also blockchain and smart contract platform agnostic, meaning it'll work on Ethereum, Avalanche, Polygon, Polkadot, or any other blockchain or smart contract platform out there.
Summary
-
Bitcoin was the first one to take blockchain mainstream.
-
Bitcoin is like digital gold.
-
Ethereum allows for smart contracts.
-
Chainlink provides data and external computation to smart contracts.
-
Hybrid smart contracts combine on-chain and off-chain computations.
Blockchain and smart contract features
Decentralized
There's no centralized source that controls the blockchain. The individuals that make up the blockchain are known as node operators
.They are the independent individuals running the software that connects the whole blockchain. It's all these different independent individuals that make the blockchain and blockchain-like networks decentralized. This is so fundamentally groundbreaking if you go back to what happened with Robinhood and Gamestop. Gamestop shares are no longer allowed to be bought because a centralized entity didn't want them to be bought anymore. So they flipped the switch and nobody could buy that stock anymore. Essentially having a single entity controlling the entire financial market. The fact that a single entity has the power to make these choices for us is a travesty, and blockchain is here to solve that. There's a narrative here called the "bankless narrative," where users could live in a world where they don't have a bank. Banks, while good in their own right, have a history of doing some shady things. They also have the power to potentially freeze your funds, not letting you withdraw or move or do anything, because they are a centralized entity that can again flip a switch and control how you interact with your life every day. Being free of these centralized entities has so much power, and having this much control over your life has widespread positive ramifications.
Transparency & Flexibility
Everything that's done on blockchain and all the rules that are made can be seen by everyone. There are no backdoor deals, no shady happenings. This means there's no special information that a few have. Everyone has to play by the same rules, and everyone can see what those rules are. Additionally, this doesn't mean that everything you do is tracked. The blockchain is pseudo-anonymous
.So you can create different accounts and interact with them in many different ways.
Speed and Efficiency
Have you ever tried to withdraw from the bank and it took 1-2 hours? All the bank is doing is adding and subtracting numbers; basic first-grade math. So why does it take so long? Because blockchains are verified by a decentralized collective, the settlement or withdrawal period, in this case, is substantially faster and, depending on the blockchain that you're using, can be anywhere from 10 minutes down to just a couple of seconds. In the stock trading or hedge fund world, it can take up to a week for your buy or sell of a stock to go through.
Security and Immutability
Because blockchains are immutable
which means they can't be changed, and because of this, they can't be tampered with or corrupted in any way, shape or form. This allows us to have massive security for our data, transactions, and anything else. In the regular world, if your computer crashes, your data is gone.Your main computer goes down and your backup computer goes down. On a blockchain, if several nodes go down, it doesn't matter because as long as one node and the entire system is running, the data is safe and secure. There are hundreds of thousands of nodes running this blockchain software, meaning that everything that happens happens and is immutable and won't change. Hacking the blockchain is nearly impossible and substantially harder than hacking a centralized entity. This is much more secure in the asset sense as well. Instead of having gold in a vault or a contract written on a piece of paper or on your computer, you've got an asset that is locked on the blockchain forever, and all you need to do to access it is have a private key or mnemonic, which is essentially a password.
Removal of counterparty risk
Smart contracts, in particular, remove a massive conflict of interest. In the traditional world, when we engage with users or individuals, they don't always have our best interests at heart. A lot of them are usually self-motivated in some sense, and there's nothing wrong with that. However, when we agree with them, this agreement can have a massive conflict of interest with the user who's supposed to execute that agreement. Let's take insurance, for example. If I pay an insurance provider 100 dollars a month, I'm paying them 100 dollars. If I get hit by a bus, we've made an agreement or a contract that they're going to pay my medical bills or bail me out. However, they have this massive conflict of interest because insurance companies aren't in the business of giving out money, they're in the business of making money. So even though they signed this agreement when this event occurs, they still don't want to pay this money out to me if they can find a loophole in the contract. They will because that is what they are motivated to do. So they sign this agreement, but it's not in their best interest to do so. So they have this massive conflict of interest, and this is inherent in all of the agreements that we make today. They are the ones who decide whether or not they're going to execute their agreement. Giving execution power to the party that doesn't want to execute something has often led to frustration. Now the follow-up is that you can always sue them and go through this process, but now you're wasting all this time going through all this long process to get something that you should have originally gotten in the first place. This leads me to one of the biggest value-adding smart contracts.
Trust Minimized Agreements
Smart contracts allow us to engage in trustless and trust-minimizing agreements. We currently live in a world of brand-based agreements. If I engage in some agreement and I don't like the service that I'm providing, my alternative to this is to waltz down the street to another brand to another service that's going to make the same set of promises to me and then I have to trust them that they're going to execute faithfully. Smart contracts allow us to move from these brand-based agreements to math-based agreements
. In these math-based agreements, we don't even have to trust that they're going to do the right thing. Hence the name is "trustless." One plus one is always going to equal two in the math world. Whatever the code determines is the input and output, that's exactly what's going to happen every single time. These all add up to two major pieces: freedom and trustlessness. All these pieces allow us to live in a world that's more accountable, more trusting, more friendly, and just better. It allows us to work in an environment and a universe where things just work. It allows us to have the freedom to engage with other people how we wish because there's no centralized controlling body influencing every action that we take. All the rules are the same and nobody's getting special treatment. This brings out the new world of economic opportunity as well, and as our lives become more and more digital, we are constantly being bombarded with centralized services that want us to use their interface so they can profit from how we interact and force us to make the decisions that they're motivating us to make. Smart contracts, decentralized applications, and blockchain allow us to be free of these repressors and live in an environment that's truly free and trustless.
Summary
-
Blockchains are decentralized. They aren't controlled by a single centralized entity.
-
Blockchains are transparent. Everything that happens on a blockchain, everybody else can see, work with, and see that everyone's playing by the same rules.
-
Blockchains are quick and efficient, especially when it comes to monetary policy.
-
Blockchains can't be changed, tampered with, or corrupted, and are incredibly secure.
-
Smart contracts remove a massive conflict of interest that traditional agreements have.
-
Smart contracts allow us to engage in trustless and trust-minimizing agreements.
-
Smart contracts are typically paired with some type of oracle to get information about the real world. When they're paired with an oracle, they're called
Hybrid Smart Contracts
.
DAOs
DAOS are organizations that live online and live in smart contracts. They're similar to regular organizations in the traditional world, but they have people who may hold governance tokens to make voting decisions or they may do all the governance on-chain on this decentralized settlement layer, giving us the freedom to engage with each other as we please.