🔲Blockchain Oracles

What is a Blockchain Oracle?

In a nutshell, a bridge between the blockchain and the outside world.

in this thread, based on the Chainlink documentation, I summarize the main parts to get an idea in 5 minutes.

Table of Contents:

· definition
· decentralized oracle networks
· smart-contract problem
· oracles are bridges
· oracles + smart contracts
· critical point
· decentralized oracles
· oracle types
· oracle reputation
· reputation frameworks
· oracle use cases
· conclusion
Definition

Oracles are entities that connect blockchains to external systems.

Based on the real-world input/output, oracles enable smart contract execution.

Oracles provide a way for the Web3 ecosystem to access:
- existing data sources
- legacy systems
- advanced computations
DONs

Decentralized oracle networks (DONs) enable the creation of hybrid smart contracts.

On-chain code and off-chain infrastructure are combined to support dApps that react to real-world events and interoperate with traditional systems.
Smart contract problem

Smart contracts have a problem:
They can't inherently interact with data/ systems outside their native blockchain environment.

Data stored on the blockchain is considered on-chain, and everything else is considered off-chain.
An Oracle is a bridge

Blockchains are isolated from external systems, and this is good.

They have:
- strong consensus on transactions' validity
- prevention of double-spending attacks
- mitigation of network downtime.

But they need an Oracle to operate with off-chain systems.
Oracles + Smart Contracts

Industries benefit from combining:
Oracles + Smart Contracts.

Oracles offer a gateway to off-chain resources but still uphold valuable security properties of blockchains.

Oracles expand the types of digital agreements that blockchains can support.
The Critical Point

So now we are at a critical point:

the data delivered by oracles to blockchains directly determines the outcomes of smart contracts

So it's critically important that the oracle mechanism is correct if the agreement is to execute exactly as expected because
Decentralized Oracles

The only way to prevent (again) a centralized point of failure and establish a real end-to-end decentralization, is using Decentralized Oracle Networks that combine:

oracle node operators + reliable data sources.
Oracles types

- Input Oracles: fetch data from the real world to the blockchain

- Output Oracles: send commands from Smart Contracts to real-world

- Cross-Chain Oracles: read/write info between different blockchains

- Compute-Enabled Oracles: provide decentralized services
Oracle Reputation

Reputation in blockchain oracle systems gives users the ability to monitor/filter between oracles based on different parameters

The oracles sign and deliver their data onto a public blockchain ledger, so the performance history can be analyzed/presented.
Reputation frameworks

They provide transparency for the accuracy/reliability of each oracle network and single node operator.

Users can then decide their oracles.

Oracle service providers can leverage their reputation to provide users more guarantees of their reliability.
Oracle Use Cases

These are some of the possible use cases for the Oracles:

- Decentralized Finance (DeFi)
- Dynamic NFTs and Gaming
- Sustainability
- Enterprise
- Insurance
Conclusion

The internet has produced a significant change in the way information is exchanged.

Oracle-based hybrid smart contracts are redefining the way the company exchanges value/enforces contractual arrangements, extending the blockchain's capabilities.
If this thread has been useful, follow @FrancescoCiull4 and share this one. Thank you.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Francesco Ciulla

Francesco Ciulla Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @FrancescoCiull4

15 Jan
Path to Learn Docker.

One of the questions I get most often is:
"What are the steps to learn the basics of Docker?"

In this thread, I list the 10 steps that I think are optimal for a beginner.

There are no links or promotions here, just concepts.

/thread
Image
1) Understanding WHAT Docker is and what it isn't, what are the building blocks of it

2) Understanding what containerization is and why it is so important. Differences Containers/Virtual Machines

3) Install Docker on your operating system and make sure it works (`docker info`)
4) Take a look at "Docker Hub" and make a bit of practice using one image there (eg Nginx) and understand the basic commands: start/stop/list containers.

5) Understand how the components are made and their configuration: commands inspect/exec/logs.
Read 8 tweets
15 Jan
🔲Ethereum Contract ABI Specification thread

What is ABI?

Good morning.

Today spent a few hours reading the Ethereum contract ABI specification and I summarized the main parts in this thread.

For further reading, refer to the official docs.

Image
Table of contents

Basic Design
Assumptions
Function Encoding
Types
Tuples
Mapping Solidity to ABI types
Encoding design criteria
Static and Dynamic types
Contract Application Binary Interface (ABI)

It's the standard way to interact with contracts in the Ethereum ecosystem:
- from outside the blockchain
- for contract-to-contract interaction

Data is encoded according to its type

The encoding requires a schema in order to decode
Read 14 tweets
12 Jan
🛒NFT Marketplaces

An NFT Marketplace is a place (usually a website) that connects to your wallet.

It allows you to buy/sell NFT for different Blockchains.

Each one has its own rules/peculiarities.

Examples:
- OpenSea
- Looksrare
- Axie Infinity
- Rarible
- Decentraland

Opensea (@opensea )

Opensea is the largest NFT marketplace and the one I used to mint my first NFT.

Leader in NFT Sales and easy to use, free to sign up and support for minting.
opensea.io
Looksrare (@LooksRareNFT )

LooksRare is a community-first NFT marketplace with rewards for participating.
looksrare.org
Read 6 tweets
7 Jan
🛑BLOCKS!

No, not the Twitter ones...
the BLOCKCHAIN Blocks.

Let's quickly see some concepts related to Eth blocks:
- definition
- blocks & transactions
- block values
- block time
- block size

DEFINITION

Blocks hold batches of hashed and encoded transactions.

Each block includes the hash of the prior block, linking the two, hence forming the chain.

This iterative process confirms the integrity of the previous block, all the way back to the initial GENESIS block.
BLOCKS & TRANSACTIONS

Transactions are batched into blocks, and they are all at once:
- committed
- agreed on
- synchronized

This is to give all the participants time for consensus.
Read 7 tweets
5 Jan
⬛ETHEREUM TRANSACTIONS concepts

· definition
· transactions are for humans!
· the changed state in the EVM
· transaction information
· transaction types
· gas
· transaction lifecycle

Source: Ethereum docs.
DEFINITION

What is a transaction on the Ethereum network?

A Transaction is a cryptographically signed instruction from accounts.

An account will initiate a transaction to update the state of the Ethereum network.

A common transaction is transferring ETH from account A to B.
TRANSACTIONS ARE FOR HUMANS!

A transaction refers to an action initiated by a human who owns an externally-owned account.

Example:
Alice sends ETH to Bob
A -----> B

This causes a change of the state on the EVM (Ethereum Virtual Machine).
Read 9 tweets
4 Jan
The question I get most often about containerization is: "What is a container?".

Let's make it simple, with my 2 favorite definitions:

1. From a logical point of view, it's a single and packaged unit of software.

2. From a technical point of view, it's an isolated process.

From a logical point of view, more understandable for a human, a container can be considered as a single unit of working software, with all its configurations and dependencies, packaged.

In this way, it can run quickly and reliably from one computer to another.
A container has its own dedicated filesystem, provided by an image.

The image contains:
-dependencies
-configuration
-binaries
-environment variables
-other important data related to the container to be instantiated.

Many containers can be run from a single image
Read 11 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(